---
title: "List documents"
method: GET
path: "/contents/v1/documents"
tags: ["Documents"]
---

# List documents

`GET /contents/v1/documents`

Returns a paginated list of documents that the user has uploaded or that have been shared with their organization. Use the query parameters documented below for filtering. Use the returned document id with Get document, Get annotated document, or Get original document to retrieve metadata or file content.

## Query parameters

- `origin` 'email' | 'investment_research' | 'sharepoint' | 'file_upload'
- `from_date` string, date-time
- `ownership` 'all' | 'shared' | 'owned'
- `owner` string
- `page` integer
- `page_size` integer
- `sort_by` 'created_at' | 'updated_at' | 'file_name' | 'raw_size' | 'content_type' | 'status'
- `sort_order` 'asc' | 'desc'
- `file_name` string
- `rp_collection_id` string
- `connector` string
- `tags` string[]

## Response `200`

Paginated list of documents matching the filters. The results array contains document metadata; use each document's id with Get annotated document or Get original document to retrieve file content.

- object
  - `results` DocumentListItem[], required — Documents in this page. Each item includes id (content_id), file_name, status, connector_id, tags, and timestamps.
    - `id` string, required — Content ID: unique 32-character uppercase hexadecimal identifier for the document. Use this when calling Get document, Get annotated document, or Get original document.
    - `file_name` string, required — Original file name of the uploaded document.
    - `user_id` string, required — ID of the user who uploaded the document.
    - `org_id` string, required — ID of the organization the document belongs to.
    - `rp_collection_id` string — ID of the collection the document belongs to. This is applicable only for emails and attachments.
    - `raw_size` integer — Size of the raw document in bytes.
    - `request_origin` 'email' | 'investment_research' | 'sharepoint' | 'file_upload' — Origin of the content ingestion request: how the document entered the platform.
    - `content_type` string — MIME type of the document.
    - `status` 'pending' | 'processing' | 'completed' | 'failed', required — Processing status of the document.
    - `shared_with_orgs` string[] — List of organization IDs the document is shared with.
    - `created_at` string, date-time, required — Timestamp when the document was created.
    - `updated_at` string, date-time, required — Timestamp when the document was last updated.
    - `published_at` string, date-time, required — Timestamp when the document was published. This is the reference timestamp used for search and retrieval.
    - `connector_id` string, uuid — ID of the connector used to upload the document.
    - `error_code` string, nullable — Error code if the document processing failed.
    - `delete_started_ts` string, date-time, nullable — Timestamp when document deletion started, if applicable.
    - `file_metadata` object, nullable — Additional metadata about the file.
    - `tags` Tag[] — Tags associated with the document.
      - `id` string, required — Unique identifier for the tag.
      - `name` string, required — Name of the tag (e.g. `from:user@email.com` for email; `broker:Broker Name` for investment research).

## Other responses

- `400` — Invalid query parameters (e.g. invalid date format, page < 1).
- `401` — Unauthorized - Invalid or missing API key.

---

[API](https://skmtc.net/bigdata/apis/bigdata-structured-data-api.md) · [All operations](https://skmtc.net/bigdata/apis/bigdata-structured-data-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bigdata/bigdata-structured-data-api/versions/18082de268c4/schema)
