Upload a CSV into a knowledge base

Streams a CSV to the ingestion pipeline. The CSV must have a header row with Title and Content columns (case-insensitive); each row becomes one article. Returns immediately with a job_id — poll GET /knowledge/jobs/{jobId} to track progress.

Limits: 10 MB per file, comma-delimited, UTF-8.

Example CSV

Title,Content
Refund policy,We accept refunds within 30 days of purchase.
Shipping times,Orders ship within 2 business days.

Send it with curl

curl -X POST "https://api.getkronos.ai/api/knowledge/<kb_id>/upload" \
  -H "Authorization: Bearer krns_sk_..." \
  -F "[email protected];type=text/csv" \
  -F "title=Help center export"

The response is a job_id — the CSV is still being chunked + embedded in the background. See the Code samples panel for the full upload-then-poll pattern in curl, Python, and JavaScript.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
uuid
required

Knowledge base id

Body Params
file
required

CSV file with Title and Content columns. UTF-8 encoded, comma-delimited, up to 10 MB.

string
length ≤ 300

Overrides the file name as the human-readable source title.

Responses

400

Missing file or unsupported file type.

Language
Credentials
Bearer
krns_sk_*
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json