Overview¶
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 Syncronizer, 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
progress of operations will be reported 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¶
- Installation Guide
- Tutorial
- Quick Start Guide
- Advanced usage patterns
- Glossary
- About API interfaces
- API Reference
- Interface types
- Public API
- Internal API
b2sdk.session
– B2 Sessionb2sdk.raw_api
– B2 raw api wrapperb2sdk.b2http
– thin http client wrapperb2sdk.utils
b2sdk.cache
b2sdk.download_dest
– Download destinationb2sdk.stream.chained
ChainedStreamb2sdk.stream.hashing
StreamWithHashb2sdk.stream.progress
Streams with progress reportingb2sdk.stream.range
RangeOfInputStreamb2sdk.stream.wrapper
StreamWrapperb2sdk.sync.action
b2sdk.sync.exception
b2sdk.sync.file
b2sdk.sync.folder
b2sdk.sync.folder_parser
b2sdk.sync.policy
b2sdk.sync.policy_manager
b2sdk.sync.scan_policies
b2sdk.sync.sync
b2sdk.transfer.inbound.downloader.abstract
– Downloader base classb2sdk.transfer.inbound.downloader.parallel
– ParallelTransfererb2sdk.transfer.inbound.downloader.range
– transfer range toolkitb2sdk.transfer.inbound.downloader.simple
– SimpleDownloaderb2sdk.transfer.inbound.download_manager
– Manager of downloadersb2sdk.transfer.inbound.file_metadata
b2sdk.transfer.outbound.upload_source
b2sdk.raw_simulator
– B2 raw api simulator
- Contributors Guide