> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bigdata.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List 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.



## OpenAPI

````yaml /api-rest/openapi/openapi_content_data.json get /contents/v1/documents
openapi: 3.1.0
info:
  title: Bigdata Content API
  description: API for managing and accessing private content documents uploaded by users.
  version: 1.0.0
servers:
  - url: https://api.bigdata.com/
security:
  - ApiKeyAuth: []
paths:
  /contents/v1/documents:
    get:
      tags:
        - Documents
      summary: List documents
      description: >-
        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.
      parameters:
        - name: origin
          in: query
          required: false
          description: >-
            Restrict to documents from this ingestion source: `email` (email
            connector), `investment_research` (broker / investment research
            connector), or `file_upload` (direct upload via POST /documents).
          schema:
            type: string
            enum:
              - email
              - investment_research
              - file_upload
        - name: from_date
          in: query
          required: false
          description: >-
            Include only documents created on or after this date and time (ISO
            8601 format).
          schema:
            type: string
            format: date-time
        - name: ownership
          in: query
          required: false
          description: >-
            Restrict to documents by ownership: all (default), only documents
            you own (owned), or only documents shared with you (shared).
          schema:
            type: string
            enum:
              - all
              - shared
              - owned
            default: all
        - name: owner
          in: query
          required: false
          description: Restrict to documents uploaded by this user ID.
          schema:
            type: string
        - name: page
          in: query
          required: false
          description: >-
            Page number for pagination (1-based). Use with page_size to navigate
            results.
          schema:
            type: integer
            default: 1
            minimum: 1
        - name: page_size
          in: query
          required: false
          description: Number of documents to return per page (1–100). Default 50.
          schema:
            type: integer
            default: 50
            minimum: 1
            maximum: 100
        - name: sort_by
          in: query
          required: false
          description: >-
            Field used to sort the result set (e.g. created_at, file_name,
            status).
          schema:
            type: string
            enum:
              - created_at
              - updated_at
              - file_name
              - raw_size
              - content_type
              - status
            default: created_at
        - name: sort_order
          in: query
          required: false
          description: 'Sort direction: asc (ascending) or desc (descending). Default desc.'
          schema:
            type: string
            enum:
              - asc
              - desc
            default: desc
        - name: file_name
          in: query
          required: false
          description: Filter by file name; case-insensitive partial match.
          schema:
            type: string
        - name: rp_collection_id
          in: query
          required: false
          description: >-
            Restrict to documents in this collection (used for email/attachment
            grouping).
          schema:
            type: string
        - name: connector
          in: query
          required: false
          description: Restrict to documents ingested by this connector (UUID).
          schema:
            type: string
        - name: tags
          in: query
          required: false
          description: >-
            Filter by tag names; documents matching any of the given tags are
            returned (OR logic).
          schema:
            type: array
            items:
              type: string
          explode: true
          style: form
      responses:
        '200':
          description: >-
            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.
          content:
            application/json:
              schema:
                type: object
                properties:
                  results:
                    type: array
                    description: >-
                      Documents in this page. Each item includes id
                      (content_id), file_name, status, connector_id, tags, and
                      timestamps.
                    items:
                      $ref: '#/components/schemas/DocumentListItem'
                required:
                  - results
              example:
                results:
                  - id: E0618D0E9D3A960C1731A620EDE56B5C
                    file_name: Weekly summary report.eml
                    user_id: user_id_001
                    org_id: org_id_001
                    rp_collection_id: 2CBDC7DA8AE42A8A078DECC3C9FCADFB
                    raw_size: 18974
                    request_origin: email
                    content_type: message/rfc822
                    status: completed
                    shared_with_orgs:
                      - org_id_001
                    created_at: '2026-02-03T08:43:02.729356Z'
                    updated_at: '2026-02-03T08:43:02.729359Z'
                    published_at: '2026-02-03T08:43:02.729359Z'
                    connector_id: 019a9612-bfad-758c-884e-37dd8c6ad2cb
                    error_code: null
                    delete_started_ts: null
                    file_metadata: null
                    tags:
                      - id: 019a48b4-e574-71d9-a8d9-6a5a86386847
                        name: to:user1@email.com
                      - id: 019a48b4-e573-7203-945a-2e7c4c164217
                        name: from:user2@email.com
        '400':
          description: Invalid query parameters (e.g. invalid date format, page < 1).
        '401':
          description: Unauthorized - Invalid or missing API key.
components:
  schemas:
    DocumentListItem:
      type: object
      description: >-
        Metadata for a single document. Returned by List documents and Get
        document. Use the id (content_id) with Get annotated document or Get
        original document to retrieve the file content.
      properties:
        id:
          type: string
          description: >-
            Content ID: unique 32-character uppercase hexadecimal identifier for
            the document. Use this when calling Get document, Get annotated
            document, or Get original document.
          example: E0618D0E9D3A960C1731A620EDE56B5C
        file_name:
          type: string
          description: Original file name of the uploaded document.
          example: Weekly summary report.eml
        user_id:
          type: string
          description: ID of the user who uploaded the document.
          example: user_id_001
        org_id:
          type: string
          description: ID of the organization the document belongs to.
          example: org_id_001
        rp_collection_id:
          type: string
          description: >-
            ID of the collection the document belongs to. This is applicable
            only for emails and attachments.
          example: 2CBDC7DA8AE42A8A078DECC3C9FCADFB
        raw_size:
          type: integer
          description: Size of the raw document in bytes.
          example: 18974
        request_origin:
          type: string
          description: >-
            Origin of the content ingestion request: how the document entered
            the platform.
          enum:
            - email
            - investment_research
            - file_upload
        content_type:
          type: string
          description: MIME type of the document.
          example: message/rfc822
        status:
          type: string
          description: Processing status of the document.
          enum:
            - pending
            - processing
            - completed
            - failed
        shared_with_orgs:
          type: array
          description: List of organization IDs the document is shared with.
          items:
            type: string
          example:
            - org_id_001
        created_at:
          type: string
          format: date-time
          description: Timestamp when the document was created.
          example: '2026-02-03T08:43:02.729356Z'
        updated_at:
          type: string
          format: date-time
          description: Timestamp when the document was last updated.
          example: '2026-02-03T08:43:02.729359Z'
        published_at:
          type: string
          format: date-time
          description: >-
            Timestamp when the document was published. This is the reference
            timestamp used for search and retrieval.
          example: '2026-02-03T08:43:02.729359Z'
        connector_id:
          type: string
          format: uuid
          description: ID of the connector used to upload the document.
          example: 019a9612-bfad-758c-884e-37dd8c6ad2cb
        error_code:
          type: string
          nullable: true
          description: Error code if the document processing failed.
          example: null
        delete_started_ts:
          type: string
          format: date-time
          nullable: true
          description: Timestamp when document deletion started, if applicable.
          example: null
        file_metadata:
          type: object
          nullable: true
          description: Additional metadata about the file.
          example: null
        tags:
          type: array
          description: Tags associated with the document.
          items:
            $ref: '#/components/schemas/Tag'
      required:
        - id
        - file_name
        - user_id
        - org_id
        - status
        - created_at
        - updated_at
        - published_at
    Tag:
      type: object
      description: A tag associated with a document.
      properties:
        id:
          type: string
          description: Unique identifier for the tag.
          example: 019a48b4-e574-71d9-a8d9-6a5a86386847
        name:
          type: string
          description: >-
            Name of the tag (e.g. `from:user@email.com` for email;
            `broker:Broker Name` for investment research).
          example: from:user@email.com
      required:
        - id
        - name
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-KEY
      description: >-
        Your API key. Include it in every request as the X-API-KEY header.
        Create and manage keys in the Developer Platform.

````