{"_id":"@cognitiveproof/softbinding-api-plugin-aws-bucket","name":"@cognitiveproof/softbinding-api-plugin-aws-bucket","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@cognitiveproof/softbinding-api-plugin-aws-bucket","version":"1.0.0","description":"AWS S3 object store plugin for the C2PA Soft Binding Resolution API server","license":"MIT","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","typecheck":"tsc --noEmit","test":"jest"},"dependencies":{"@aws-sdk/client-s3":"^3.700.0","@aws-sdk/s3-request-presigner":"^3.700.0","@cognitiveproof/softbinding-api-plugin-types":"^1.0.0"},"devDependencies":{"@types/jest":"^30.0.0","jest":"^30.4.2","ts-jest":"^29.4.11","typescript":"^5.3.3"},"gitHead":"9ad98a64ca17474e8154258c8a269fadfb7e44d1","_id":"@cognitiveproof/softbinding-api-plugin-aws-bucket@1.0.0","_nodeVersion":"25.9.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-jjTsN9WGnrTE21paCBlRUFxEFlxlItit0LC4uw79cQxlHu1ps1FuT49AmeOha6LEOEU29WK7GX0m3tFJ3dtR1Q==","shasum":"858dfe6767e8642aa3928c6e8f5fd9f738b170f8","tarball":"https://registry.npmjs.org/@cognitiveproof/softbinding-api-plugin-aws-bucket/-/softbinding-api-plugin-aws-bucket-1.0.0.tgz","fileCount":9,"unpackedSize":11712,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDrAQ4KFgvZ7OwW+H06JBgFBwk47S06fDGUmlAAqA8oKwIhAPC8MB6WCw8WsVtt13R3V6mkWzIvrdNlMW6bsFx1c/UA"}]},"_npmUser":{"name":"mrappard","email":"mrappard@gmail.com"},"directories":{},"maintainers":[{"name":"mrappard","email":"mrappard@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/softbinding-api-plugin-aws-bucket_1.0.0_1781196862253_0.751672508593634"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-11T16:54:22.113Z","1.0.0":"2026-06-11T16:54:22.392Z","modified":"2026-06-11T16:54:22.604Z"},"maintainers":[{"name":"mrappard","email":"mrappard@gmail.com"}],"description":"AWS S3 object store plugin for the C2PA Soft Binding Resolution API server","license":"MIT","readme":"# @cognitiveproof/softbinding-api-plugin-aws-bucket\n\nAWS S3 `ObjectStorePlugin` for [`@cognitiveproof/softbinding-api-server`](https://github.com/mrappard/c2pa-soft-binding-server) — the C2PA Soft Binding Resolution API server.\n\nStores arbitrary binary blobs (e.g. assets referenced by `byReference`) in two S3 buckets — a private \"data\" bucket and a \"public\" bucket served via signed/public URLs. Also works with S3-compatible services (MinIO, Cloudflare R2, DigitalOcean Spaces, etc.).\n\n## Install\n\n```bash\nnpm install @cognitiveproof/softbinding-api-server @cognitiveproof/softbinding-api-plugin-aws-bucket\n```\n\n## Usage\n\n```ts\nimport { createServer, loadObjectStore } from '@cognitiveproof/softbinding-api-server';\n\nconst objectStore = loadObjectStore('@cognitiveproof/softbinding-api-plugin-aws-bucket');\n```\n\nOr pass the package name via the `OBJECTSTORE_PLUGIN` environment variable.\n\n> Note: `createServer()` does not call `loadObjectStore()` automatically — no bundled route currently needs blob storage. Use `loadObjectStore()` directly in your own routes/middleware if you need it.\n\n## Configuration\n\n| Env var                   | Required | Default     | Description                                                                                                          |\n| ------------------------- | -------- | ----------- | -------------------------------------------------------------------------------------------------------------------- |\n| `DATA_BUCKET_NAME`        | Yes      | —           | Name of the private S3 bucket used for `saveData`/`loadData`/`deleteData`                                            |\n| `PUBLIC_BUCKET_NAME`      | Yes      | —           | Name of the S3 bucket used for `savePublicData`/`loadPublicData`/`getPublicUrl`                                      |\n| `AWS_REGION`              | No       | `us-east-1` | AWS region                                                                                                           |\n| `AWS_S3_ENDPOINT`         | No       | —           | Custom S3-compatible endpoint (e.g. MinIO, R2, DigitalOcean Spaces). If unset, the AWS SDK talks to AWS S3 directly. |\n| `AWS_S3_FORCE_PATH_STYLE` | No       | `false`     | Set to `true` for S3-compatible services that require path-style requests                                            |\n\nAWS credentials are resolved via the standard [AWS SDK credential chain](https://docs.aws.amazon.com/sdkref/latest/guide/standardized-credentials.html) (environment variables, shared config file, IAM role, etc.).\n\n## License\n\n[MIT](LICENSE)\n","readmeFilename":"README.md","_rev":"1-3d22211bb35d09b1801ddeadd392de49"}