B2Cloud
A module for interacting with Back Blaze B2Cloud
Configuration
In ~/.b2cloud.json place your credentials
i.e.
{ "accountId": "", "applicationKey": "" }
Helpers
- function getBucketByName(bucketName, callback)
- Retreives a bucket object by its name, rather than by bucketId
- function uploadFile(filePath, bucketName, callback)
- function downloadFile(name, bucketName, savePath, range, callback)
Please note this is being actively worked on and will soon support all API operations as listed here:
https://www.backblaze.com/b2/docs/
I also will be adding helpers methods such as uploadFile, getBucketByName to make it easier to use
Documentation
All methods can use promises or callbacks
Installation
npm install b2cloud
Setup a file .b2cloud
in your home folder. Setup like this:,
{
"accountId": "",
"applicationKey": ""
}
Module Reference
Classes
- Authorize
- Bucket
- File
Authorize
Kind: global class
new Authorize(cache)
Class constructor, reads in credentials and sets up caching
Param | Type | Description |
---|
cache | object | Cache object shared amongst classes. |
authorize.getBasicAuth([callback]) ⇒ object
| string
| string
| string
| string
Fetches an authenticated session for interacting with b2cloud.
Kind: instance method of Authorize
Returns: object
- auth Returns an authenticated sessionstring
- auth.accountId - The account ID this session belongs to.string
- auth.apiUrl - The URL to use when performing further API requests.string
- auth.authorizationTocken - The authorization token to be included in permission based requests.string
- auth.downloadUrl - The URL to use when downoading objects.
Param | Type |
---|
[callback] | function |
Bucket
Kind: global class
new Bucket(cache)
Param | Type | Description |
---|
cache | object | Cache object shared amongst classes. |
bucket.createBucket(name, type, [callback]) ⇒ object
Creates a bucket in the b2cloud
Kind: instance method of Bucket
Returns: object
- The response from b2_create_bucket
Param | Type | Description |
---|
name | string | Name of the bucket |
type | string | Either allPublic or allPrivate, sets the bucket to public or private access. |
[callback] | function | The optional callback |
bucket.listBuckets([callback]) ⇒ object
Lists all buckets you have created.
Kind: instance method of Bucket
Returns: object
- The response from b2_list_buckets
Param | Type | Description |
---|
[callback] | function | The optional callback. |
bucket.getBucketByName(name, [callback]) ⇒ object
Helper function that returns a bucket object by its name.
Kind: instance method of Bucket
Returns: object
- The response from b2_list_buckets
Param | Type | Description |
---|
name | string | The name of the bucket. |
[callback] | function | An optional callback |
bucket.listBucketFiles(name, [startFileName], [maxFileCount], [callback]) ⇒ object
Lists all files inside of a bucket.
Kind: instance method of Bucket
Returns: object
- The response from b2_list_file_names
See: https://www.backblaze.com/b2/docs/b2_list_file_names.html
Param | Type | Description |
---|
name | string | The name of the bucket |
[startFileName] | string | If the number of files exceeds the response limit, this will set which file to start listing from |
[maxFileCount] | number | Max number of files to return, cannot be greater than 1000 |
[callback] | function | The optional callback |
File
Kind: global class
new File(cache)
Class constructor, instantiates auth and bucket classes
Param | Type | Description |
---|
cache | object | Cache object shared amongst classes. |
file.getUploadUrl(bucketName, [callback]) ⇒ object
Gets the uploadUrl for uploadinga file to b2cloud
Kind: instance method of File
Returns: object
- - The response from b2_get_upload_url
Param | Type | Description |
---|
bucketName | string | Name of the bucket to get a uploadUrl for |
[callback] | function | Optional callback |
file.uploadFile(filePath, bucketName, [callback]) ⇒ object
Helper function that automatically generates the uploadUrl, hashes the file and
uploads it to b2cloud.
Kind: instance method of File
Returns: object
- - The newly created b2cloud object.
Param | Type | Description |
---|
filePath | string | The file path to the file you want to upload |
bucketName | string | The bucke to upload the file to. |
[callback] | function | The optional callback |
file.downloadFile(name, bucketName, savePath, range, [callback]) ⇒ Promsise
Downloads a file from b2cloud
Kind: instance method of File
Returns: Promsise
- That resolves if the file is downloaded succesfully, otherwise rejects.
See: https://www.backblaze.com/b2/docs/b2_download_file_by_name.html
Param | Type | Description |
---|
name | string | Name of the file to download |
bucketName | string | Bucket the file resides in |
savePath | string | Path to save the file to |
range | object | The range object used to fetch only a byte range, byte range is inclusive |
range.start | number | The start byte to download |
range.end | number | The end byte to download |
[callback] | function | The optional callback |