Index S3 Bucket

Index all files from an S3 bucket into a collection. Returns a job_id for tracking progress via GET /v2/jobs/{job_id}.

Path parameters

collection_namestringRequired
Name of the collection to index into

Headers

AuthorizationstringRequired
Captain API key for authentication
X-Organization-IDstringRequired
Organization UUID
Idempotency-KeystringOptional
UUID for request deduplication

Request

This endpoint expects an object.
bucket_namestringRequired
Name of the S3 bucket
aws_access_key_idstringRequired
AWS access key ID with read access to the bucket
aws_secret_access_keystringRequired
AWS secret access key
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.

Allowed values:
bucket_regionstringOptionalDefaults to us-east-1
AWS region where the bucket is located
max_filesintegerOptional

Maximum number of files to index (optional)

skip_existingbooleanOptionalDefaults to true

Skip files that are already indexed in the collection. When true, only new files will be indexed. Set to false to re-index all files.

custom_metadatamap from strings to anyOptional

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

Response

Indexing Job Started
job_idstring
statusenum
Allowed values: