Maximum number of indexes to return













Search Index API
Search Index API.
List search indexes
GET /v1/context/search-indexes#
Lists all search indexes for the current workspace.
Playground
Test the endpoints live
Create a search index
POST /v1/context/search-indexes#
Reserves a search index and starts asynchronous backing-table provisioning. Poll the returned Location until status is ready or failed.
Playground
Test the endpoints live
Get a search index
GET /v1/context/search-indexes/{index_name}#
Returns the search index with the given name.
Playground
Test the endpoints live
Update a search index schema
PUT /v1/context/search-indexes/{index_name}#
Records a new schema for the search index and applies it asynchronously. The index keeps serving its current schema until the new one is on disk; poll it until status is ready. Additive only: the new schema must keep every field the current one has.
Playground
Test the endpoints live
Delete a search index
DELETE /v1/context/search-indexes/{index_name}#
Marks the search index for deletion and returns it with status deleting. The backing table is dropped asynchronously; poll the index until it returns 404.
Playground
Test the endpoints live
Ingest documents into a search index
POST /v1/context/search-indexes/{index_name}/documents#
Validates and persists documents. Returns 200 with each document reported as accepted or rejected in the response body, or 403 once the index holds its limit of chunks.
Playground
Test the endpoints live
Delete documents from a search index
DELETE /v1/context/search-indexes/{index_name}/documents#
Deletes the given documents by id. Returns the ids actually removed and, in missing, any requested ids that were not present.
Playground
Test the endpoints live
Search an index
POST /v1/context/search-indexes/{index_name}/search#
Runs an approximate-nearest-neighbor vector search over the index and returns matching chunks, closest-first.
Playground
Test the endpoints live
Navigate to adjacent chunks
POST /v1/context/search-indexes/{index_name}/navigate#
Returns the chunks adjacent to a position within a source, in reading order. NEXT fetches chunks at or after the end offset; PREVIOUS fetches chunks before the start offset. A 200 with an empty list means the source exists but no chunk falls in the requested direction; a 404 means the source has no chunks at all.
Playground
Test the endpoints live
Read chunks within a span
POST /v1/context/search-indexes/{index_name}/read#
Returns the chunks of a source whose span falls within [start_offset, end_offset). Either bound may be omitted to leave that side open. A 200 with an empty list means the source exists but no chunk falls in the range; a 404 means the source has no chunks at all.
Playground
Test the endpoints live
Grep for a pattern within a source
POST /v1/context/search-indexes/{index_name}/grep#
Lexical substring match within a single source, in reading order. PHRASE mode matches the pattern literally (whitespace-sensitive, case-insensitive); TERM mode requires every whitespace-split token present in any order. A 200 with an empty list means the source exists but no chunk matched; a 404 means the source has no chunks at all.
Playground
Test the endpoints live
Get a single chunk by id
GET /v1/context/search-indexes/{index_name}/chunks/{chunk_id}#
Returns a single chunk by its canonical id. A 404 means no chunk with that id exists in the index.
Playground
Test the endpoints live
Get search index Summary
GET /v1/context/search-indexes/{index_name}/summary_field/{language}#
Retrieve the summary field for a search index if it exists
Playground
Test the endpoints live
Set search index Summary
PUT /v1/context/search-indexes/{index_name}/summary_field/{language}#
Update the summary field for a search index
Playground
Test the endpoints live
Generate a summary field for a search index
POST /v1/context/search-indexes/{index_name}/summary_field/{language}#
Streams a summary for the search index in chunks of json.
The first chunk contains metadata for the summary, the following contain chunks of 'content' that should be joined together to form a full summary.
If force is true, regenerate the requested language even if a summary already exists.
Playground
Test the endpoints live











