---
title: "Batch add documents"
method: POST
path: "/v3/documents/batch"
tags: ["Manage Documents"]
---

# Batch add documents

`POST /v3/documents/batch`

Add multiple documents in a single request. Each document can have any content type (text, url, file, etc.) and metadata

## Request body

- object
  - `containerTag` string — Optional tag this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents.
  - `containerTags` string[] — (DEPRECATED: Use containerTag instead) Optional tags this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents.
  - `metadata` object — Optional metadata for the document. This is used to store additional information about the document. You can use this to store any additional information you need about the document. Metadata can be filtered through. Keys must be strings and are case sensitive. Values can be strings, numbers, or booleans. You cannot nest objects.
  - `documents` union, required
    - object[]
      - `containerTag` string — Optional tag this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents.
      - `containerTags` string[] — (DEPRECATED: Use containerTag instead) Optional tags this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents.
      - `content` string, required — The content to extract and process into a document. This can be a URL to a website, a PDF, an image, or a video. Plaintext: Any plaintext format URL: A URL to a website, PDF, image, or video We automatically detect the content type from the url's response format.
      - `customId` string — Optional custom ID of the document. This could be an ID from your database that will uniquely identify this document.
      - `metadata` object — Optional metadata for the document. This is used to store additional information about the document. You can use this to store any additional information you need about the document. Metadata can be filtered through. Keys must be strings and are case sensitive. Values can be strings, numbers, or booleans. You cannot nest objects.
    - string[]
  - `content` unknown

## Response `200`

Documents added successfully

- object[]
  - `id` string, required — Unique identifier of the document
  - `status` string, required — Status of the document

## Other responses

- `401` — Unauthorized
- `402` — Document token limit reached
- `500` — Internal server error

---

[API](https://skmtc.dev/supermemoryai/apis/supermemory-api.md) · [All operations](https://skmtc.dev/supermemoryai/apis/supermemory-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/supermemoryai/supermemory-api/revisions/eb2aa0ee3a63/schema)
