Add a document to a bot's knowledge
Build a request to copy
This page never sends a request. Fill in the fields, then copy the request and run it from your server.
The body is multipart/form-data. Send the file as the file part.
curl -X POST 'https://api.whatsable.app/v1/ai-bots/string/knowledge-files' \ -F 'file=string'
Adds a document to the knowledge of an AI bot. Send a multipart/form-data body with one file part. The document starts as processing: read it again to see ready or failed. An archived bot takes no new documents.
bearerAuthAuthorizationBearer <nfy_live_<32 characters>>An API key from Settings > API keys, sent as Authorization: Bearer <key>.
id*stringThe bot id.
1 <= length <= 64Idempotency-Key?stringAny string up to 255 characters. A repeat with the same key and body answers the stored response; with another body, 409 idempotency_key_reused.
length <= 255multipart/form-data- body
One document to add to the bot's knowledge, in a file part.
file*fileA PDF, a Word document (.docx), or plain text, Markdown or CSV, at most 25 MiB. Its type is checked against its bytes.
binaryThe document, processing.
application/json- response
A document whose text the bot knows. The bot reads it; it never sends it.
object*stringid*string1 <= length <= 64bot_id*string1 <= length <= 64filename*stringmime_type*stringsize_bytes*integer0 <= value <= 9007199254740991status*stringprocessing while its text is read, then ready (the bot knows it from its next reply) or failed.
"processing""ready""failed"failure_reason*|Why reading it failed: unsupported_type, timeout, unreadable or empty. Null unless status is failed.
extracted_length*integerCharacters of text the bot reads from it. Zero until ready.
0 <= value <= 9007199254740991created_at*stringdate-timecurl -X POST 'https://api.whatsable.app/v1/ai-bots/string/knowledge-files' \ -F 'file=string'{ "object": "knowledge_file", "id": "cm2v8f1a00001qz8h7k8l9m0n", "bot_id": "cm2v8b1a00001qz8h3j4k5l6m", "filename": "price-list.pdf", "mime_type": "application/pdf", "size_bytes": 182340, "status": "ready", "failure_reason": null, "extracted_length": 12873, "created_at": "2026-10-20T19:51:21Z"}