Set Up a Namespace
Every project starts with a namespace — the isolation boundary for all your resources. Use one per environment (dev, staging, prod) or per tenant.Authorization: Bearer sk_live_... and X-Namespace: ns_....
Namespace API →
Create a Bucket
Buckets are schema-validated containers for raw files. Define what blob types you accept (text, image, audio, video, json, binary).Connect External Storage
Sync files directly from your existing cloud storage instead of uploading manually. Mixpeek reads from your provider — no migration needed.incremental mode to avoid reprocessing existing files.
| Provider | Auth Method | S3-Compatible |
|---|---|---|
| AWS S3 | IAM User / Role | Native |
| Google Cloud Storage | Service Account Key | No |
| Azure Blob Storage | Access Key / Managed Identity | No |
| Cloudflare R2 | R2 API Token | Yes |
| Backblaze B2 | Application Key | Yes |
| Wasabi | Access Key | Yes |
| Tigris | Access Key | Yes |
| Box | OAuth | No |
| Mux | API Token | No |
| Supabase | Service Key | Yes |
Register Objects
Objects are raw multimodal assets within a bucket. Two paths: URL references — point to files in your existing storage:presigned_url and confirm with POST /uploads/{id}/confirm.
For bulk imports, use batch uploads or connect your object storage via sync configurations.
Object API → · Upload API →
Process with Batches
Batches group objects for extraction. Create a batch, then submit it:Batch Lifecycle
GET /v1/buckets/{id}/batches/{id} for status, or use webhooks to get notified on batch.completed.
Batch API →
