Index Supabase

Index all files from a Supabase Storage bucket into a collection. Supabase Storage is S3-compatible. Provide your Supabase endpoint_url (https://<project_ref>.storage.supabase.co/storage/v1/s3) plus the S3 access key ID and secret access key from Storage → S3 Connection. Headers: - Authorization: Bearer {api_key} - Captain API key for authentication - X-Organization-ID: Organization UUID - Idempotency-Key: UUID for request deduplication (optional) Args: collection_name: Name of the collection (path parameter) body: Supabase bucket configuration Returns: { job_id, status: "pending" }

Path parameters

collection_namestringRequired

Headers

authorizationstring or nullOptional

Request

This endpoint expects an object.
access_key_idstringRequired

Supabase S3 access key ID (Storage → S3 Connection → access key).

bucket_namestringRequired
endpoint_urlstringRequired

S3-compatible endpoint URL for your Supabase project’s Storage S3 connection, e.g. https://<project_ref>.storage.supabase.co/storage/v1/s3 (Storage → S3 Connection). Required.

processing_typeenumRequired

Document processing type. ‘advanced’ uses agentic OCR with AI-enhanced extraction for complex layouts, tables, figures, charts, and documents containing images. ‘basic’ provides reliable OCR optimized for general document indexing and high-volume processing.

secret_access_keystringRequired

Supabase S3 secret access key (shown once when the S3 access key is created).

custom_metadatamap from strings to strings or integers or doubles or booleans or lists of strings or nullOptional

Custom metadata to attach to all indexed chunks. Keys must be strings. Values: str, int, float, bool, or List[str].

max_filesinteger or nullOptional
overwrite_existingbooleanOptionalDefaults to false

When true, files that already exist in the collection will be deleted and re-indexed with the latest changes. Requires skip_existing=false. Setting both to true returns a 400 error.

parsing_scriptstring or nullOptional

Relative path to a JS parsing script for JSON files (e.g. ‘research/paper-parser’). When provided, .json files are processed through a sandboxed V8 isolate. Without this, .json files are indexed as raw text.

regionstringOptionalDefaults to us-east-1

Region configured for your Supabase project’s S3 endpoint (Storage → S3 Connection). Required by the S3 protocol; defaults to ‘us-east-1’.

skip_existingbooleanOptionalDefaults to true

When true, files already indexed in the collection are skipped and will not be re-indexed with incoming changes. When false, all incoming files are indexed regardless of whether they already exist.

transcription_languagestring or nullOptional

AWS Transcribe language code for the spoken audio (e.g. ‘es-US’, ‘pt-BR’). Omit to auto-detect per file. Video and audio files only. Supported codes: https://docs.aws.amazon.com/transcribe/latest/dg/supported-languages.html

Response

Successful Response
job_idstring
statusstringDefaults to pending

Errors

400
Bad Request Error