Upload files
Ingestion is always asynchronous. The call returns immediately with a
job_ids list;
poll each with the job status endpoint. When a job
reaches completed, that file’s content is searchable.
Response 202 Accepted
Parsing and embedding a document is billed on completion, not at upload. Larger files
and richer formats, such as scanned PDFs and audio, cost more because more content is
processed.
List documents
Response
200 OK
memory_count is how many searchable memories were extracted from the document.
What counts as a document
This list contains everything ingested into the space, not only uploaded files. Storing a memory withPOST /v1/record also creates a document row, so source tells you which
is which.
To group your writes into meaningful documents, such as a conversation, a ticket, or a
session, pass your own
document_id when recording. Reusing an id replaces that
document’s memories, which is how you keep a document current.
The dashboard’s Documents tab hides
memory rows by default for this reason, with a
toggle to show everything ingested.Get a document
Delete a document
Removes the document and every memory extracted from it.204 No Content.
Error responses
See the full error reference.
Next steps
Retrieve API
Search across recorded memory and uploaded documents.
Memories API
Record memories and poll ingestion jobs.
