Create Supabase Sync
Create a Supabase Storage Sync for a collection and start the initial backfill. Returns the sync; indexing runs asynchronously.
Path parameters
Destination collection.
Headers
Bearer {api_key}. Your Captain API key.
Request body
Supabase Storage bucket to keep in sync with the collection.
Key prefix to scope the sync. Empty syncs the whole bucket.
Supabase S3 endpoint, e.g. https://PROJECT_REF.storage.supabase.co/storage/v1/s3
Region for the S3 protocol.
Supabase S3 access key ID.
Supabase S3 secret access key. Stored securely, never returned.
Parsing tier.
Glob patterns; only matching keys are synced.
Glob patterns; matching keys are excluded.
How to propagate objects removed from the source: mirror removes them from the collection so they no longer appear in search; archive keeps the document's content but marks it archived, excluded from search by default and surfaced with include_archived: true; ignore leaves the indexed copy in place.
Static metadata applied to every synced document.
Scheduled reconcile cadence (minimum 5; null = manual).
Response
Successful Response
The sync's cloud storage type. Returned by the list endpoint (GET /v2/syncs) only; other sync endpoints omit this field.
How the sync authenticates to the bucket: 'iam_role' (AWS cross-account assume-role), 'access_key' (S3-compatible key pair), or 'service_account' (GCS service-account JSON).
S3-compatible endpoint URL (access-key syncs on non-AWS providers); null for AWS S3. Returned by the list endpoint (GET /v2/syncs) only; other sync endpoints omit this field.
True once an event-webhook secret has been minted.
SNS subscribe URL; only surfaced by the subscribe-webhook endpoint.
Effective (already-clamped) cadence; null = manual.
Epoch ms of the next due scheduled reconcile.