---
title: "Get document"
method: GET
path: "/v3/documents/{id}"
tags: ["Documents"]
---

# Get document

`GET /v3/documents/{id}`

Get a document by ID

## Path parameters

- `id` string, required

## Response `200`

Successfully retrieved document

- object
  - `connectionId` string, nullable, required
  - `content` string, nullable, 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.
  - `containerTags` string[] — 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.
  - `createdAt` string, datetime, required — Creation timestamp
  - `customId` string, nullable, required — Optional custom ID of the document. This could be an ID from your database that will uniquely identify this document.
  - `id` string, required — Unique identifier of the document.
  - `metadata` union, required
    - string
    - number
    - boolean
    - object
    - unknown[]
      - unknown
  - `ogImage` string, nullable, required
  - `raw` string, nullable, required — Raw content of the document
  - `source` string, nullable, required — Source of the document
  - `taskType` 'memory' | 'superrag', required — Task type: "memory" (default) for full context layer with SuperRAG built in, "superrag" for managed RAG as a service.
  - `status` 'unknown' | 'queued' | 'extracting' | 'chunking' | 'embedding' | 'indexing' | 'done' | 'failed', required — Status of the document
  - `dreamingStatus` 'dreaming' | 'done', required
  - `summary` string, nullable, required — Summary of the document content
  - `title` string, nullable, required — Title of the document
  - `type` 'text' | 'pdf' | 'tweet' | 'google_doc' | 'google_slide' | 'google_sheet' | 'image' | 'video' | 'audio' | 'notion_doc' | 'webpage' | 'onedrive' | 'github_markdown' | 'granola', required — Type of the document
  - `updatedAt` string, datetime, required — Last update timestamp
  - `url` string, nullable
  - `filepath` string, nullable, required
  - `memories` object[] — Memories extracted from this document. Omitted when the document has no memories (e.g. still processing).
    - `id` string, required
    - `memory` string, required
    - `createdAt` string, datetime, required — Creation timestamp
    - `updatedAt` string, datetime, nullable, required — Last update timestamp
    - `isLatest` boolean, required
    - `isForgotten` boolean, required
    - `isStatic` boolean, required
    - `isInference` boolean, required
    - `version` integer, required
    - `sourceCount` integer, required
    - `metadata` union, required
      - string
      - number
      - boolean
      - object
      - unknown[]
        - unknown
    - `parentMemoryId` string, nullable, required
    - `rootMemoryId` string, nullable, required

## Other responses

- `401` — Unauthorized
- `404` — Document not found
- `500` — Internal server error

## Changes

- **2026-08-11** `0ef040d414d4` — 1 info
  - added the optional property `memories` to the response with the `200` status

[Change history](https://skmtc.dev/supermemory/apis/supermemory-api/changes/v3/documents/:id/get.md)

---

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