Object Storage
Store files and binary data in buckets. Use object storage for screenshots, downloaded files, PDFs, and other non-structured data.
Creating a Bucket
import { ScrayleClient } from '@scrayle/sdk';
const client = new ScrayleClient();
const bucket = await client.storage.object.createBucket({
name: 'screenshots',
description: 'Browser screenshots',
});
console.log(bucket.id);Uploading Files
const result = await client.storage.object.put(bucket.id, {
file: './screenshot.png',
});
console.log(result.object_id, result.size);Downloading Files
const blob = await client.storage.object.get(bucket.id, 'object-id');
// blob is a Blob object - save to file or processListing Objects
const objects = await client.storage.object.list(bucket.id, {
page: 1,
pageSize: 50,
search: 'screenshot', // Optional search filter
});
for (const obj of objects.items) {
console.log(obj.filename, obj.fileType, obj.size);
}Managing Buckets
// List all buckets
const buckets = await client.storage.object.listBuckets({
page: 1, pageSize: 20,
});
// Get bucket details
const bucket = await client.storage.object.getBucket('bucket-id');
// Delete a bucket
await client.storage.object.deleteBucket('bucket-id');Deleting Objects
await client.storage.object.delete(bucket.id, 'object-id');API Reference
| Method | Description |
|---|---|
object.createBucket(data) | Create a new bucket |
object.getBucket(id) | Get bucket details |
object.listBuckets(params) | List all buckets |
object.deleteBucket(id) | Delete a bucket |
object.put(bucketId, data) | Upload a file |
object.get(bucketId, objectId) | Download a file |
object.list(bucketId, params) | List objects in a bucket |
object.delete(bucketId, objectId) | Delete an object |