Add File
Add a file to a knowledge base via direct upload or remote URL fetch. Provide exactly one of file (raw bytes) or url (http/https; the server fetches it with an SSRF-hardened client).
report.pdf to docs/ when it already exists returns 409.
Folders and files share the same namespace: you cannot upload a file whose name matches an existing folder in the same directory.Authorizations
Timbal API key. Obtain your API key from the Timbal platform settings. See Authentication for more information.
Body
Request body for adding a file to a knowledge base.
Provide either file (raw bytes via multipart) or url (http/https URL
the server fetches directly). Exactly one is required.
Optional JSON metadata to attach to the file.
Optional subdirectory path to organize the file within the knowledge base.
File bytes (multipart file field). Mutually exclusive with url.
x >= 0Per-upload override for the parse/chunk/embed pipeline. Accepts
"true"/"false" (or "1"/"0"). When omitted, the knowledge base's
auto-processing setting and the file extension decide. true forces
parsing even when the KB has auto-processing off (still credit-gated;
unsupported extensions silently fall back to stored-as-is). false
stores the file as-is and never runs the pipeline.
Public http/https URL the server fetches and ingests directly.
SSRF-hardened (internal hosts blocked). Mutually exclusive with file.
Response
File uploaded
Pipeline state for parsing + embedding.
One of pending (pipeline in flight), success (parse + embed both completed),
failed (latest attempt failed), or skipped (format unsupported, never parsed).
Unsupported files are stored as-is; the indicator lets clients flag them in listings
rather than rejecting the upload.