---
title: "Upload Knowledge Document"
method: POST
path: "/admin/assistant/knowledge"
tags: ["admin", "admin-assistant-knowledge"]
---

# Upload Knowledge Document

`POST /admin/assistant/knowledge`

## Request

- Base URL: `https://api.threadchain.pro` (the document declares no server; this is the origin it was published from)
- URL: `https://api.threadchain.pro/admin/assistant/knowledge`
- Auth: OAuth 2
  - Password
  - Token URL: `auth/token`

Upload a PDF/DOCX/MD/TXT document. Ingestion (chunk + embed) runs
asynchronously via Celery; poll GET .../{document_id} for status.

## Request body `multipart/form-data`

- BodyUploadKnowledgeDocumentAdminAssistantKnowledgePost
  - `file` string, binary, required

## Response `202`

Successful Response

- KnowledgeDocumentResponse
  - `id` string, uuid, required
  - `title` string, required
  - `original_filename` string, required
  - `file_type` string, required
  - `status` string, required
  - `error_message` string, nullable
  - `chunk_count` integer, required
  - `uploaded_by` string, uuid, nullable
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/threadchain/apis/threadchain-backend.md) - [All operations](https://skmtc.dev/threadchain/apis/threadchain-backend/llms.txt) - [OpenAPI document](https://skmtc.dev/threadchain/apis/threadchain-backend/revisions/8ee288a7e6bd?raw)
