npm.io
0.6.5 • Published 23h ago

@apicity/b2

Licence
MIT
Version
0.6.5
Deps
1
Size
435 kB
Vulns
0
Weekly
1.4K

@apicity/b2

npm dependencies TypeScript docs

Backblaze B2 S3-compatible object storage provider.

Runtime dependencies:

  • zod@^4.4.3 — request schemas attached to every POST endpoint as .schema

Installation

npm install @apicity/b2
# or
pnpm add @apicity/b2

Quick Start

import { createB2 } from "@apicity/b2";

const b2 = createB2({
  accessKeyId: process.env.B2_ACCESS_KEY_ID!,
  secretAccessKey: process.env.B2_SECRET_ACCESS_KEY!,
  region: process.env.B2_REGION!,
  endpoint: process.env.B2_ENDPOINT,
});

@apicity/b2 bundles its S3-compatible signing, transport, response parsing, and schemas locally while exposing only Backblaze-supported calls.

API Reference

39 endpoints across 2 groups. Each method mirrors an upstream URL path.

buckets
PUT b2.buckets.create

PUT https://s3.us-west-004.backblazeb2.com/{bucket}

Upstream docs

const res = await b2.buckets.create({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

DELETE b2.buckets.del

DELETE https://s3.us-west-004.backblazeb2.com/{bucket}

Upstream docs

const res = await b2.buckets.del({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

DELETE b2.buckets.delCors

DELETE https://s3.us-west-004.backblazeb2.com/{bucket}?cors

Upstream docs

const res = await b2.buckets.delCors({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

DELETE b2.buckets.delEncryption

DELETE https://s3.us-west-004.backblazeb2.com/{bucket}?encryption

Upstream docs

const res = await b2.buckets.delEncryption({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.buckets.getAcl

GET https://s3.us-west-004.backblazeb2.com/{bucket}?acl

Upstream docs

const res = await b2.buckets.getAcl({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.buckets.getCors

GET https://s3.us-west-004.backblazeb2.com/{bucket}?cors

Upstream docs

const res = await b2.buckets.getCors({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.buckets.getEncryption

GET https://s3.us-west-004.backblazeb2.com/{bucket}?encryption

Upstream docs

const res = await b2.buckets.getEncryption({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.buckets.getObjectLockConfiguration

GET https://s3.us-west-004.backblazeb2.com/{bucket}?object-lock

Upstream docs

const res = await b2.buckets.getObjectLockConfiguration({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.buckets.getVersioning

GET https://s3.us-west-004.backblazeb2.com/{bucket}?versioning

Upstream docs

const res = await b2.buckets.getVersioning({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

HEAD b2.buckets.head

HEAD https://s3.us-west-004.backblazeb2.com/{bucket}

Upstream docs

const res = await b2.buckets.head({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.buckets.list

GET https://s3.us-west-004.backblazeb2.com/

Upstream docs

const res = await b2.buckets.list({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.buckets.location

GET https://s3.us-west-004.backblazeb2.com/{bucket}?location

Upstream docs

const res = await b2.buckets.location({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

PUT b2.buckets.putAcl

PUT https://s3.us-west-004.backblazeb2.com/{bucket}?acl

Upstream docs

const res = await b2.buckets.putAcl({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

PUT b2.buckets.putCors

PUT https://s3.us-west-004.backblazeb2.com/{bucket}?cors

Upstream docs

const res = await b2.buckets.putCors({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

PUT b2.buckets.putEncryption

PUT https://s3.us-west-004.backblazeb2.com/{bucket}?encryption

Upstream docs

const res = await b2.buckets.putEncryption({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

PUT b2.buckets.putObjectLockConfiguration

PUT https://s3.us-west-004.backblazeb2.com/{bucket}?object-lock

Upstream docs

const res = await b2.buckets.putObjectLockConfiguration({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

objects
DELETE b2.objects.abortMultipartUpload

DELETE https://s3.us-west-004.backblazeb2.com/{bucket}/{key}{query}

Upstream docs

const res = await b2.objects.abortMultipartUpload({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

POST b2.objects.completeMultipartUpload

POST https://s3.us-west-004.backblazeb2.com/{bucket}/{key}{query}

Upstream docs

const res = await b2.objects.completeMultipartUpload({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

PUT b2.objects.copy

PUT https://s3.us-west-004.backblazeb2.com/{bucket}/{key}

Upstream docs

const res = await b2.objects.copy({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

POST b2.objects.createMultipartUpload

POST https://s3.us-west-004.backblazeb2.com/{bucket}/{key}?uploads

Upstream docs

const res = await b2.objects.createMultipartUpload({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

DELETE b2.objects.del

DELETE https://s3.us-west-004.backblazeb2.com/{bucket}/{key}{query}

Upstream docs

const res = await b2.objects.del({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

POST b2.objects.delMany

POST https://s3.us-west-004.backblazeb2.com/{bucket}?delete

Upstream docs

const res = await b2.objects.delMany({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.objects.get

GET https://s3.us-west-004.backblazeb2.com/{bucket}/{key}{query}

Upstream docs

const res = await b2.objects.get({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.objects.getAcl

GET https://s3.us-west-004.backblazeb2.com/{bucket}/{key}?acl{query}

Upstream docs

const res = await b2.objects.getAcl({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.objects.getLegalHold

GET https://s3.us-west-004.backblazeb2.com/{bucket}/{key}?legal-hold{query}

Upstream docs

const res = await b2.objects.getLegalHold({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.objects.getRetention

GET https://s3.us-west-004.backblazeb2.com/{bucket}/{key}?retention{query}

Upstream docs

const res = await b2.objects.getRetention({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.objects.getStream

GET https://s3.us-west-004.backblazeb2.com/{bucket}/{key}{query}

Upstream docs

const res = await b2.objects.getStream({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

HEAD b2.objects.head

HEAD https://s3.us-west-004.backblazeb2.com/{bucket}/{key}{query}

Upstream docs

const res = await b2.objects.head({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.objects.list

GET https://s3.us-west-004.backblazeb2.com/{bucket}?list-type=2{query}

Upstream docs

const res = await b2.objects.list({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.objects.listLegacy

GET https://s3.us-west-004.backblazeb2.com/{bucket}{query}

Upstream docs

const res = await b2.objects.listLegacy({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.objects.listMultipartUploads

GET https://s3.us-west-004.backblazeb2.com/{bucket}?uploads{query}

Upstream docs

const res = await b2.objects.listMultipartUploads({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.objects.listParts

GET https://s3.us-west-004.backblazeb2.com/{bucket}/{key}{query}

Upstream docs

const res = await b2.objects.listParts({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

GET b2.objects.listVersions

GET https://s3.us-west-004.backblazeb2.com/{bucket}?versions{query}

Upstream docs

const res = await b2.objects.listVersions({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

PUT b2.objects.put

PUT https://s3.us-west-004.backblazeb2.com/{bucket}/{key}

Upstream docs

const res = await b2.objects.put({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

PUT b2.objects.putAcl

PUT https://s3.us-west-004.backblazeb2.com/{bucket}/{key}?acl{query}

Upstream docs

const res = await b2.objects.putAcl({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

PUT b2.objects.putLegalHold

PUT https://s3.us-west-004.backblazeb2.com/{bucket}/{key}?legal-hold{query}

Upstream docs

const res = await b2.objects.putLegalHold({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

PUT b2.objects.putRetention

PUT https://s3.us-west-004.backblazeb2.com/{bucket}/{key}?retention{query}

Upstream docs

const res = await b2.objects.putRetention({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

PUT b2.objects.uploadPart

PUT https://s3.us-west-004.backblazeb2.com/{bucket}/{key}{query}

Upstream docs

const res = await b2.objects.uploadPart({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

PUT b2.objects.uploadPartCopy

PUT https://s3.us-west-004.backblazeb2.com/{bucket}/{key}{query}

Upstream docs

const res = await b2.objects.uploadPartCopy({ /* ... */ });

Source: packages/provider/b2/src/b2.ts

Part of the apicity monorepo.

License

MIT — see LICENSE.

Keywords