Upload a knowledge-base document
curl --request POST \
--url https://api.pineyard.ai/knowledge-bases/{id}/documents \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--header 'Idempotency-Key: <idempotency-key>' \
--form file=@example-fileconst form = new FormData();
form.append('file', '<string>');
const options = {
method: 'POST',
headers: {'Idempotency-Key': '<idempotency-key>', Authorization: 'Bearer <token>'}
};
options.body = form;
fetch('https://api.pineyard.ai/knowledge-bases/{id}/documents', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.pineyard.ai/knowledge-bases/{id}/documents"
files = { "file": ("example-file", open("example-file", "rb")) }
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>"
}
response = requests.post(url, files=files, headers=headers)
print(response.text){
"id": "<string>",
"name": "<string>",
"mimeType": "<string>",
"fileSize": "<string>",
"status": "<string>",
"errorMessage": "<string>",
"createdAt": "<string>",
"updatedAt": "<string>"
}Knowledge bases
Upload a knowledge-base document
Upload a document (multipart file; PDF/DOCX/TXT/MD, 20 MB max). Indexing continues in the background.
POST
/
knowledge-bases
/
{id}
/
documents
Upload a knowledge-base document
curl --request POST \
--url https://api.pineyard.ai/knowledge-bases/{id}/documents \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--header 'Idempotency-Key: <idempotency-key>' \
--form file=@example-fileconst form = new FormData();
form.append('file', '<string>');
const options = {
method: 'POST',
headers: {'Idempotency-Key': '<idempotency-key>', Authorization: 'Bearer <token>'}
};
options.body = form;
fetch('https://api.pineyard.ai/knowledge-bases/{id}/documents', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.pineyard.ai/knowledge-bases/{id}/documents"
files = { "file": ("example-file", open("example-file", "rb")) }
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>"
}
response = requests.post(url, files=files, headers=headers)
print(response.text){
"id": "<string>",
"name": "<string>",
"mimeType": "<string>",
"fileSize": "<string>",
"status": "<string>",
"errorMessage": "<string>",
"createdAt": "<string>",
"updatedAt": "<string>"
}Required scope:
chatbots.edit
Idempotency: an Idempotency-Key header is required when calling with an API key. See Idempotency.
Requires chatbots enabled on your account. Otherwise the request is refused; see Errors.
Authorizations
Your API key, e.g. pk_live_xxxxxxxxxxxxxxxxxxxxxxxx.
Headers
Unique value (e.g. a UUID) per action, up to 200 printable ASCII characters. Reuse it only to retry the same request; the first response is replayed for 24 hours.
Maximum string length:
200Example:
"f1d2c3b4-0000-4000-8000-000000000000"
Path Parameters
Body
multipart/form-data

