---
title: "Create Document"
method: POST
path: "/v1/document"
tags: ["Documents"]
---

# Create Document

`POST /v1/document`

Create the document row and start ingestion. File flow requires a prior PUT to S3.

## Headers

- `X-API-Key` string, required

## Request body

- union
  - FileDocumentRequest
    - `kind` 'file'
    - `document_id` string, uuid, required
    - `knowledge_base_id` string, uuid, required
    - `filename` string, required
    - `name` string, nullable
  - UrlDocumentRequest
    - `kind` 'url'
    - `knowledge_base_id` string, uuid, required
    - `url` string, required
    - `name` string, nullable
  - TextDocumentRequest
    - `kind` 'text'
    - `knowledge_base_id` string, uuid, required
    - `name` string, required
    - `content` string, required

## Response `201`

Successful Response

- DocumentUploadResult
  - `document_id` string, uuid, required
  - `job_id` string, uuid, required
  - `status` string, required
  - `error_code` string, nullable

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/getbluejay/apis/bluejay-api.md) · [All operations](https://skmtc.net/getbluejay/apis/bluejay-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/getbluejay/bluejay-api/revisions/f48cef80963f/schema)
