b2sdk is a client library for easy access to all of the capabilities of B2 Cloud Storage.

B2 command-line tool is an example of how it can be used to provide command-line access to the B2 service, but there are many possible applications (including FUSE filesystems, storage backend drivers for backup applications etc).

Why use b2sdk?

When building an application which uses B2 cloud, it is possible to implement an independent B2 API client, but using b2sdk allows for:

  • reuse of code that is already written, with hundreds of unit tests

  • use of Synchronizer, a high-performance, parallel rsync-like utility

  • developer-friendly library api version policy which guards your program against incompatible changes

  • B2 integration checklist is passed automatically

  • raw_simulator makes it easy to mock the B2 cloud for unit testing purposes

  • reporting progress of operations to an object of your choice

  • exception hierarchy makes it easy to display informative messages to users

  • interrupted transfers are automatically continued

  • b2sdk has been developed for 3 years before it version 1.0.0 was released. It’s stable and mature.

Documentation index

Indices and tables