MediaUpload media

Upload media

Uploads 1 to 10 files in one multipart/form-data request. Each file gets the same checks as an upload in the web editor: a supported type, contents that match the extension, a safe SVG, your plan's size limit, and your storage quota. The response has one result per file, so one failed file does not fail the others. A file that is already in the library is reused. If another file already has the same name, the new file gets a number added, such as diagram-2.png. Requires editor or admin role.

curl -X POST "https://api.documentationai.app/api/v1/media" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  --form files=["example_string"]
{
  "results": [
    {
      "source": "https://example.com/setup-diagram.png",
      "status": "added",
      "media": {
        "id": "4c1d8a2e-7b3f-4f0a-9d6e-2a5b8c7e1f03",
        "name": "setup-diagram.png",
        "kind": "image",
        "mimeType": "image/png",
        "sizeBytes": 184233,
        "url": "https://blob-cdn.documentation.ai/.../setup-diagram.png",
        "altText": "Setup steps diagram",
        "width": 1440,
        "height": 900,
        "durationSeconds": 42,
        "pageCount": 25,
        "posterUrl": "example_string",
        "createdAt": "2026-09-17T10:00:00.000Z",
        "updatedAt": "2026-09-17T10:00:00.000Z",
        "snippet": "<Image src="https://blob-cdn.documentation.ai/.../setup-diagram.png" alt="Setup steps diagram" />"
      },
      "error": "File size exceeds your plan's limit of 10MB.",
      "statusCode": 413
    }
  ]
}
POST
/media
POST
Base URLstring

Target server for requests. Edit to use your own host.

Bearer Token
Bearer Tokenstring
Required

API key generated from the Documentation.AI dashboard (Settings → API Keys). Pass as Authorization: Bearer dai_...

API key generated from the Documentation.AI dashboard (Settings → API Keys). Pass as Authorization: Bearer dai_...
Content-Typestring
Required

The media type of the request body

Options: multipart/form-data
filesarray
Required

The files to upload. Repeat the files field once for each file.

Request Preview
Response

Response will appear here after sending the request

Authentication

header
Authorizationstring
Required

Bearer token. API key generated from the Documentation.AI dashboard (Settings → API Keys). Pass as Authorization: Bearer dai_...

Body

multipart/form-data
filesarray
Required

The files to upload. Repeat the files field once for each file.

Responses

resultsarray