---
title: "List resources from a source live"
method: GET
path: "/live/{source}/resources"
tags: ["Live"]
---

# List resources from a source live

`GET /live/{source}/resources`

Page through a source's resources live (no indexing side effect).

The cursor is opaque and integration-defined — pass back the ``next_cursor``
from the previous page verbatim.

## Path parameters

- `source` 'reddit' | 'notion' | 'slack' | 'google_calendar' | 'google_mail' | 'box' | 'dropbox' | 'github' | 'google_drive' | 'vault' | 'web_crawler' | 'trace' | 'microsoft_teams' | 'gmail_actions' | 'granola' | 'fathom' | 'fireflies' | 'linear' | 'hubspot' | 'salesforce' | 'coda' | 'lightfield' | 'gong', required

## Query parameters

- `connection_id` string, nullable — Specific connection id.
- `cursor` string, nullable
- `size` integer

## Response `200`

Successful Response

- CursorPageDocumentResponse
  - `items` DocumentResponse[], required
    - `resource_id` string, required
    - `source` 'reddit' | 'notion' | 'slack' | 'google_calendar' | 'google_mail' | 'box' | 'dropbox' | 'github' | 'google_drive' | 'vault' | 'web_crawler' | 'trace' | 'microsoft_teams' | 'gmail_actions' | 'granola' | 'fathom' | 'fireflies' | 'linear' | 'hubspot' | 'salesforce' | 'coda' | 'lightfield' | 'gong', required
    - `type` string, required — Hyperdoc document type discriminator (document, message, file, event, ...).
    - `title` string, nullable — Human-readable document title.
    - `status` 'pending' | 'processing' | 'completed' | 'failed' | 'pending_review' | 'skipped'
    - `collection` string, nullable — The document's collection, if any.
    - `metadata` object — Filterable custom metadata attached to the document.
    - `ingested_at` string, date-time, nullable — When Hyperspell first indexed the document.
    - `last_modified_at` string, date-time, nullable — When the source document was last modified.
    - `document_date` string, date-time, nullable — The document's own date (e.g. email sent date, event date).
    - `document` union, required — The full hyperdoc tree. Switch on `type` for the document frame and recurse `children` for the body — see the `<Hyperdoc />` renderer.
      - Document
        - `type` 'document'
        - `id` string
        - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
          - `sources` SourceRef[], nullable
            - `chunk_id` string, required
            - `resource_id` string, nullable
            - `source` string, nullable
            - `score` number, nullable
          - `edited_by` string, nullable
        - `text` string, nullable
        - `children` union[]
          - union
            - Blob — Represents embedded binary data using data URI scheme. Format: data:[<media type>][;base64],<data> Example: data:text/html;base64,PGh0bWw+...
              - …
            - Callout
              - …
            - Chunk
              - …
            - Code
              - …
            - Comment
              - …
            - Divider
              - …
            - Equation
              - …
            - Footnote
              - …
            - Heading
              - …
            - Image
              - …
            - Link
              - …
            - LineBreak
              - …
            - List
              - …
            - ListItem
              - …
            - Paragraph
              - …
            - Quote
              - …
            - Table
              - …
            - TableCell
              - …
            - TableRow
              - …
            - Text
              - …
            - ToDo
              - …
            - ToolCall — A tool/function call made by the assistant.
              - …
            - ToolResult — The result of a tool call.
              - …
            - TraceMessage — A message in an agent trace (user message, assistant message, or thinking).
              - …
            - Utterance — A speaker-attributed segment of a transcript (ENG-2476/D10). "Utterance" is the standard name for this across transcription providers (AssemblyAI, Deepgram, Rev). Timestamps are relative offsets in seconds — provider-native; absolute times derive from `Transcript.started_at`.
              - …
        - `title` string, nullable
      - Website
        - `type` 'website'
        - `id` string
        - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
          - `sources` SourceRef[], nullable
            - `chunk_id` string, required
            - `resource_id` string, nullable
            - `source` string, nullable
            - `score` number, nullable
          - `edited_by` string, nullable
        - `text` string, nullable
        - `children` union[]
          - union
            - Blob — Represents embedded binary data using data URI scheme. Format: data:[<media type>][;base64],<data> Example: data:text/html;base64,PGh0bWw+...
              - …
            - Callout
              - …
            - Chunk
              - …
            - Code
              - …
            - Comment
              - …
            - Divider
              - …
            - Equation
              - …
            - Footnote
              - …
            - Heading
              - …
            - Image
              - …
            - Link
              - …
            - LineBreak
              - …
            - List
              - …
            - ListItem
              - …
            - Paragraph
              - …
            - Quote
              - …
            - Table
              - …
            - TableCell
              - …
            - TableRow
              - …
            - Text
              - …
            - ToDo
              - …
            - ToolCall — A tool/function call made by the assistant.
              - …
            - ToolResult — The result of a tool call.
              - …
            - TraceMessage — A message in an agent trace (user message, assistant message, or thinking).
              - …
            - Utterance — A speaker-attributed segment of a transcript (ENG-2476/D10). "Utterance" is the standard name for this across transcription providers (AssemblyAI, Deepgram, Rev). Timestamps are relative offsets in seconds — provider-native; absolute times derive from `Transcript.started_at`.
              - …
        - `url` string, required
        - `description` string, nullable
        - `title` string, nullable
        - `image_url` string, nullable
        - `language` string, nullable
        - `favicon` string, nullable
      - Task
        - `type` 'task'
        - `id` string
        - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
          - `sources` SourceRef[], nullable
            - `chunk_id` string, required
            - `resource_id` string, nullable
            - `source` string, nullable
            - `score` number, nullable
          - `edited_by` string, nullable
        - `text` string, nullable
        - `children` union[]
          - union
            - Blob — Represents embedded binary data using data URI scheme. Format: data:[<media type>][;base64],<data> Example: data:text/html;base64,PGh0bWw+...
              - …
            - Callout
              - …
            - Chunk
              - …
            - Code
              - …
            - Comment
              - …
            - Divider
              - …
            - Equation
              - …
            - Footnote
              - …
            - Heading
              - …
            - Image
              - …
            - Link
              - …
            - LineBreak
              - …
            - List
              - …
            - ListItem
              - …
            - Paragraph
              - …
            - Quote
              - …
            - Table
              - …
            - TableCell
              - …
            - TableRow
              - …
            - Text
              - …
            - ToDo
              - …
            - ToolCall — A tool/function call made by the assistant.
              - …
            - ToolResult — The result of a tool call.
              - …
            - TraceMessage — A message in an agent trace (user message, assistant message, or thinking).
              - …
            - Utterance — A speaker-attributed segment of a transcript (ENG-2476/D10). "Utterance" is the standard name for this across transcription providers (AssemblyAI, Deepgram, Rev). Timestamps are relative offsets in seconds — provider-native; absolute times derive from `Transcript.started_at`.
              - …
        - `comments` Message[], nullable
          - `type` 'message'
          - `id` string
          - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
            - `sources` SourceRef[], nullable
              - …
            - `edited_by` string, nullable
          - `text` string, nullable
          - `children` union[]
            - union
              - …
          - `sender` Person, required
            - `type` 'person'
            - `id` string
            - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
              - …
            - `text` string, nullable
            - `children` union[]
              - …
            - `name` string, nullable
            - `email` string, nullable
            - `username` string, nullable
            - `image_url` string, nullable
            - `alt_names` string[], nullable
            - `job_title` string, nullable
            - `company` string, nullable
            - `emails` string[], nullable — All known email addresses; `email` holds the primary one
            - `phone_numbers` string[], nullable
            - `address` string, nullable
            - `tags` string[], nullable
            - `date_of_birth` string, date, nullable
            - `deal_ids` string[], nullable
            - `company_ids` string[], nullable
            - `link_urls` string[], nullable
          - `date` string, date-time, required
          - `title` string, nullable — The subject or title of the message
          - `upvotes` integer, nullable — The number of upvotes, likes, or reactions on the message
          - `replies` Message[], nullable — The replies or comments to the message
          - `channel` string, nullable — The channel or platform where the message was posted, if this Message is not explicitly part of a conversation
          - `external_id` string, nullable — Provider message id (e.g. Slack ts, Gmail message id) — merge-dedup key
          - `is_self` boolean, nullable
          - `updated_at` string, date-time, nullable
          - `num_replies` integer, nullable
          - `thread_id` string, nullable
          - `mentioned_users` Person[], nullable
            - `type` 'person'
            - `id` string
            - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
              - …
            - `text` string, nullable
            - `children` union[]
              - …
            - `name` string, nullable
            - `email` string, nullable
            - `username` string, nullable
            - `image_url` string, nullable
            - `alt_names` string[], nullable
            - `job_title` string, nullable
            - `company` string, nullable
            - `emails` string[], nullable — All known email addresses; `email` holds the primary one
            - `phone_numbers` string[], nullable
            - `address` string, nullable
            - `tags` string[], nullable
            - `date_of_birth` string, date, nullable
            - `deal_ids` string[], nullable
            - `company_ids` string[], nullable
            - `link_urls` string[], nullable
        - `due_at` string, date-time, nullable
        - `status` 'completed' | 'not_started' | 'in_progress' | 'cancelled'
        - `priority` 'urgent' | 'high' | 'medium' | 'low'
      - Person
        - `type` 'person'
        - `id` string
        - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
          - `sources` SourceRef[], nullable
            - `chunk_id` string, required
            - `resource_id` string, nullable
            - `source` string, nullable
            - `score` number, nullable
          - `edited_by` string, nullable
        - `text` string, nullable
        - `children` union[]
          - union
            - Blob — Represents embedded binary data using data URI scheme. Format: data:[<media type>][;base64],<data> Example: data:text/html;base64,PGh0bWw+...
              - …
            - Callout
              - …
            - Chunk
              - …
            - Code
              - …
            - Comment
              - …
            - Divider
              - …
            - Equation
              - …
            - Footnote
              - …
            - Heading
              - …
            - Image
              - …
            - Link
              - …
            - LineBreak
              - …
            - List
              - …
            - ListItem
              - …
            - Paragraph
              - …
            - Quote
              - …
            - Table
              - …
            - TableCell
              - …
            - TableRow
              - …
            - Text
              - …
            - ToDo
              - …
            - ToolCall — A tool/function call made by the assistant.
              - …
            - ToolResult — The result of a tool call.
              - …
            - TraceMessage — A message in an agent trace (user message, assistant message, or thinking).
              - …
            - Utterance — A speaker-attributed segment of a transcript (ENG-2476/D10). "Utterance" is the standard name for this across transcription providers (AssemblyAI, Deepgram, Rev). Timestamps are relative offsets in seconds — provider-native; absolute times derive from `Transcript.started_at`.
              - …
        - `name` string, nullable
        - `email` string, nullable
        - `username` string, nullable
        - `image_url` string, nullable
        - `alt_names` string[], nullable
        - `job_title` string, nullable
        - `company` string, nullable
        - `emails` string[], nullable — All known email addresses; `email` holds the primary one
        - `phone_numbers` string[], nullable
        - `address` string, nullable
        - `tags` string[], nullable
        - `date_of_birth` string, date, nullable
        - `deal_ids` string[], nullable
        - `company_ids` string[], nullable
        - `link_urls` string[], nullable
      - Message
        - `type` 'message'
        - `id` string
        - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
          - `sources` SourceRef[], nullable
            - `chunk_id` string, required
            - `resource_id` string, nullable
            - `source` string, nullable
            - `score` number, nullable
          - `edited_by` string, nullable
        - `text` string, nullable
        - `children` union[]
          - union
            - Blob — Represents embedded binary data using data URI scheme. Format: data:[<media type>][;base64],<data> Example: data:text/html;base64,PGh0bWw+...
              - …
            - Callout
              - …
            - Chunk
              - …
            - Code
              - …
            - Comment
              - …
            - Divider
              - …
            - Equation
              - …
            - Footnote
              - …
            - Heading
              - …
            - Image
              - …
            - Link
              - …
            - LineBreak
              - …
            - List
              - …
            - ListItem
              - …
            - Paragraph
              - …
            - Quote
              - …
            - Table
              - …
            - TableCell
              - …
            - TableRow
              - …
            - Text
              - …
            - ToDo
              - …
            - ToolCall — A tool/function call made by the assistant.
              - …
            - ToolResult — The result of a tool call.
              - …
            - TraceMessage — A message in an agent trace (user message, assistant message, or thinking).
              - …
            - Utterance — A speaker-attributed segment of a transcript (ENG-2476/D10). "Utterance" is the standard name for this across transcription providers (AssemblyAI, Deepgram, Rev). Timestamps are relative offsets in seconds — provider-native; absolute times derive from `Transcript.started_at`.
              - …
        - `sender` Person, required
          - `type` 'person'
          - `id` string
          - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
            - `sources` SourceRef[], nullable
              - …
            - `edited_by` string, nullable
          - `text` string, nullable
          - `children` union[]
            - union
              - …
          - `name` string, nullable
          - `email` string, nullable
          - `username` string, nullable
          - `image_url` string, nullable
          - `alt_names` string[], nullable
          - `job_title` string, nullable
          - `company` string, nullable
          - `emails` string[], nullable — All known email addresses; `email` holds the primary one
          - `phone_numbers` string[], nullable
          - `address` string, nullable
          - `tags` string[], nullable
          - `date_of_birth` string, date, nullable
          - `deal_ids` string[], nullable
          - `company_ids` string[], nullable
          - `link_urls` string[], nullable
        - `date` string, date-time, required
        - `title` string, nullable — The subject or title of the message
        - `upvotes` integer, nullable — The number of upvotes, likes, or reactions on the message
        - `replies` Message[], nullable — The replies or comments to the message
        - `channel` string, nullable — The channel or platform where the message was posted, if this Message is not explicitly part of a conversation
        - `external_id` string, nullable — Provider message id (e.g. Slack ts, Gmail message id) — merge-dedup key
        - `is_self` boolean, nullable
        - `updated_at` string, date-time, nullable
        - `num_replies` integer, nullable
        - `thread_id` string, nullable
        - `mentioned_users` Person[], nullable
          - `type` 'person'
          - `id` string
          - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
            - `sources` SourceRef[], nullable
              - …
            - `edited_by` string, nullable
          - `text` string, nullable
          - `children` union[]
            - union
              - …
          - `name` string, nullable
          - `email` string, nullable
          - `username` string, nullable
          - `image_url` string, nullable
          - `alt_names` string[], nullable
          - `job_title` string, nullable
          - `company` string, nullable
          - `emails` string[], nullable — All known email addresses; `email` holds the primary one
          - `phone_numbers` string[], nullable
          - `address` string, nullable
          - `tags` string[], nullable
          - `date_of_birth` string, date, nullable
          - `deal_ids` string[], nullable
          - `company_ids` string[], nullable
          - `link_urls` string[], nullable
      - Event
        - `type` 'event'
        - `id` string
        - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
          - `sources` SourceRef[], nullable
            - `chunk_id` string, required
            - `resource_id` string, nullable
            - `source` string, nullable
            - `score` number, nullable
          - `edited_by` string, nullable
        - `text` string, nullable
        - `children` union[]
          - union
            - Blob — Represents embedded binary data using data URI scheme. Format: data:[<media type>][;base64],<data> Example: data:text/html;base64,PGh0bWw+...
              - …
            - Callout
              - …
            - Chunk
              - …
            - Code
              - …
            - Comment
              - …
            - Divider
              - …
            - Equation
              - …
            - Footnote
              - …
            - Heading
              - …
            - Image
              - …
            - Link
              - …
            - LineBreak
              - …
            - List
              - …
            - ListItem
              - …
            - Paragraph
              - …
            - Quote
              - …
            - Table
              - …
            - TableCell
              - …
            - TableRow
              - …
            - Text
              - …
            - ToDo
              - …
            - ToolCall — A tool/function call made by the assistant.
              - …
            - ToolResult — The result of a tool call.
              - …
            - TraceMessage — A message in an agent trace (user message, assistant message, or thinking).
              - …
            - Utterance — A speaker-attributed segment of a transcript (ENG-2476/D10). "Utterance" is the standard name for this across transcription providers (AssemblyAI, Deepgram, Rev). Timestamps are relative offsets in seconds — provider-native; absolute times derive from `Transcript.started_at`.
              - …
        - `title` string, nullable
        - `start_at` string, date-time, nullable
        - `end_at` string, date-time, nullable
        - `meeting_url` string, nullable
        - `location` string, nullable
        - `attendees` Person[]
          - `type` 'person'
          - `id` string
          - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
            - `sources` SourceRef[], nullable
              - …
            - `edited_by` string, nullable
          - `text` string, nullable
          - `children` union[]
            - union
              - …
          - `name` string, nullable
          - `email` string, nullable
          - `username` string, nullable
          - `image_url` string, nullable
          - `alt_names` string[], nullable
          - `job_title` string, nullable
          - `company` string, nullable
          - `emails` string[], nullable — All known email addresses; `email` holds the primary one
          - `phone_numbers` string[], nullable
          - `address` string, nullable
          - `tags` string[], nullable
          - `date_of_birth` string, date, nullable
          - `deal_ids` string[], nullable
          - `company_ids` string[], nullable
          - `link_urls` string[], nullable
      - File
        - `type` 'file'
        - `id` string
        - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
          - `sources` SourceRef[], nullable
            - `chunk_id` string, required
            - `resource_id` string, nullable
            - `source` string, nullable
            - `score` number, nullable
          - `edited_by` string, nullable
        - `text` string, nullable
        - `children` union[]
          - union
            - Blob — Represents embedded binary data using data URI scheme. Format: data:[<media type>][;base64],<data> Example: data:text/html;base64,PGh0bWw+...
              - …
            - Callout
              - …
            - Chunk
              - …
            - Code
              - …
            - Comment
              - …
            - Divider
              - …
            - Equation
              - …
            - Footnote
              - …
            - Heading
              - …
            - Image
              - …
            - Link
              - …
            - LineBreak
              - …
            - List
              - …
            - ListItem
              - …
            - Paragraph
              - …
            - Quote
              - …
            - Table
              - …
            - TableCell
              - …
            - TableRow
              - …
            - Text
              - …
            - ToDo
              - …
            - ToolCall — A tool/function call made by the assistant.
              - …
            - ToolResult — The result of a tool call.
              - …
            - TraceMessage — A message in an agent trace (user message, assistant message, or thinking).
              - …
            - Utterance — A speaker-attributed segment of a transcript (ENG-2476/D10). "Utterance" is the standard name for this across transcription providers (AssemblyAI, Deepgram, Rev). Timestamps are relative offsets in seconds — provider-native; absolute times derive from `Transcript.started_at`.
              - …
        - `filename` string, required
        - `content_type` string, required
        - `path` string[], nullable
        - `title` string, nullable
      - Conversation
        - `type` 'conversation'
        - `id` string
        - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
          - `sources` SourceRef[], nullable
            - `chunk_id` string, required
            - `resource_id` string, nullable
            - `source` string, nullable
            - `score` number, nullable
          - `edited_by` string, nullable
        - `text` string, nullable
        - `children` Message[]
          - `type` 'message'
          - `id` string
          - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
            - `sources` SourceRef[], nullable
              - …
            - `edited_by` string, nullable
          - `text` string, nullable
          - `children` union[]
            - union
              - …
          - `sender` Person, required
            - `type` 'person'
            - `id` string
            - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
              - …
            - `text` string, nullable
            - `children` union[]
              - …
            - `name` string, nullable
            - `email` string, nullable
            - `username` string, nullable
            - `image_url` string, nullable
            - `alt_names` string[], nullable
            - `job_title` string, nullable
            - `company` string, nullable
            - `emails` string[], nullable — All known email addresses; `email` holds the primary one
            - `phone_numbers` string[], nullable
            - `address` string, nullable
            - `tags` string[], nullable
            - `date_of_birth` string, date, nullable
            - `deal_ids` string[], nullable
            - `company_ids` string[], nullable
            - `link_urls` string[], nullable
          - `date` string, date-time, required
          - `title` string, nullable — The subject or title of the message
          - `upvotes` integer, nullable — The number of upvotes, likes, or reactions on the message
          - `replies` Message[], nullable — The replies or comments to the message
          - `channel` string, nullable — The channel or platform where the message was posted, if this Message is not explicitly part of a conversation
          - `external_id` string, nullable — Provider message id (e.g. Slack ts, Gmail message id) — merge-dedup key
          - `is_self` boolean, nullable
          - `updated_at` string, date-time, nullable
          - `num_replies` integer, nullable
          - `thread_id` string, nullable
          - `mentioned_users` Person[], nullable
            - `type` 'person'
            - `id` string
            - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
              - …
            - `text` string, nullable
            - `children` union[]
              - …
            - `name` string, nullable
            - `email` string, nullable
            - `username` string, nullable
            - `image_url` string, nullable
            - `alt_names` string[], nullable
            - `job_title` string, nullable
            - `company` string, nullable
            - `emails` string[], nullable — All known email addresses; `email` holds the primary one
            - `phone_numbers` string[], nullable
            - `address` string, nullable
            - `tags` string[], nullable
            - `date_of_birth` string, date, nullable
            - `deal_ids` string[], nullable
            - `company_ids` string[], nullable
            - `link_urls` string[], nullable
        - `channel` string, nullable
      - Trace — An agent trace/transcript containing a sequence of steps. Steps can be TraceMessage (user/assistant messages or thinking), ToolCall (function calls), or ToolResult (tool responses).
        - `type` 'trace'
        - `id` string
        - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
          - `sources` SourceRef[], nullable
            - `chunk_id` string, required
            - `resource_id` string, nullable
            - `source` string, nullable
            - `score` number, nullable
          - `edited_by` string, nullable
        - `text` string, nullable
        - `children` union[]
          - union
            - TraceMessage — A message in an agent trace (user message, assistant message, or thinking).
              - …
            - ToolCall — A tool/function call made by the assistant.
              - …
            - ToolResult — The result of a tool call.
              - …
        - `title` string, nullable
      - Transcript — A time-anchored, speaker-attributed transcript — meetings, calls (ENG-2476/D10; mirrors the Trace+TraceStep precedent). Utterance timestamps are relative offsets from `started_at`, which is the absolute wall-clock anchor.
        - `type` 'transcript'
        - `id` string
        - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
          - `sources` SourceRef[], nullable
            - `chunk_id` string, required
            - `resource_id` string, nullable
            - `source` string, nullable
            - `score` number, nullable
          - `edited_by` string, nullable
        - `text` string, nullable
        - `children` Utterance[]
          - `type` 'utterance'
          - `id` string
          - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
            - `sources` SourceRef[], nullable
              - …
            - `edited_by` string, nullable
          - `text` string, required
          - `speaker` Person
            - `type` 'person'
            - `id` string
            - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
              - …
            - `text` string, nullable
            - `children` union[]
              - …
            - `name` string, nullable
            - `email` string, nullable
            - `username` string, nullable
            - `image_url` string, nullable
            - `alt_names` string[], nullable
            - `job_title` string, nullable
            - `company` string, nullable
            - `emails` string[], nullable — All known email addresses; `email` holds the primary one
            - `phone_numbers` string[], nullable
            - `address` string, nullable
            - `tags` string[], nullable
            - `date_of_birth` string, date, nullable
            - `deal_ids` string[], nullable
            - `company_ids` string[], nullable
            - `link_urls` string[], nullable
          - `start` number, nullable
          - `end` number, nullable
        - `title` string, nullable
        - `started_at` string, date-time, nullable
        - `ended_at` string, date-time, nullable
        - `participants` Person[]
          - `type` 'person'
          - `id` string
          - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
            - `sources` SourceRef[], nullable
              - …
            - `edited_by` string, nullable
          - `text` string, nullable
          - `children` union[]
            - union
              - …
          - `name` string, nullable
          - `email` string, nullable
          - `username` string, nullable
          - `image_url` string, nullable
          - `alt_names` string[], nullable
          - `job_title` string, nullable
          - `company` string, nullable
          - `emails` string[], nullable — All known email addresses; `email` holds the primary one
          - `phone_numbers` string[], nullable
          - `address` string, nullable
          - `tags` string[], nullable
          - `date_of_birth` string, date, nullable
          - `deal_ids` string[], nullable
          - `company_ids` string[], nullable
          - `link_urls` string[], nullable
      - Company — A CRM company/account record (ENG-2476/D10).
        - `type` 'company'
        - `id` string
        - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
          - `sources` SourceRef[], nullable
            - `chunk_id` string, required
            - `resource_id` string, nullable
            - `source` string, nullable
            - `score` number, nullable
          - `edited_by` string, nullable
        - `text` string, nullable
        - `children` union[]
          - union
            - Blob — Represents embedded binary data using data URI scheme. Format: data:[<media type>][;base64],<data> Example: data:text/html;base64,PGh0bWw+...
              - …
            - Callout
              - …
            - Chunk
              - …
            - Code
              - …
            - Comment
              - …
            - Divider
              - …
            - Equation
              - …
            - Footnote
              - …
            - Heading
              - …
            - Image
              - …
            - Link
              - …
            - LineBreak
              - …
            - List
              - …
            - ListItem
              - …
            - Paragraph
              - …
            - Quote
              - …
            - Table
              - …
            - TableCell
              - …
            - TableRow
              - …
            - Text
              - …
            - ToDo
              - …
            - ToolCall — A tool/function call made by the assistant.
              - …
            - ToolResult — The result of a tool call.
              - …
            - TraceMessage — A message in an agent trace (user message, assistant message, or thinking).
              - …
            - Utterance — A speaker-attributed segment of a transcript (ENG-2476/D10). "Utterance" is the standard name for this across transcription providers (AssemblyAI, Deepgram, Rev). Timestamps are relative offsets in seconds — provider-native; absolute times derive from `Transcript.started_at`.
              - …
        - `name` string, nullable
        - `description` string, nullable
        - `industry` string, nullable
        - `employees` integer, nullable
        - `websites` string[], nullable
        - `emails` string[], nullable
        - `phone_numbers` string[], nullable
        - `address` string, nullable
        - `image_url` string, nullable
        - `is_active` boolean, nullable
        - `tags` string[], nullable
        - `timezone` string, nullable
        - `deal_ids` string[], nullable
        - `contact_ids` string[], nullable
      - Deal — A CRM deal/opportunity record (ENG-2476/D10).
        - `type` 'deal'
        - `id` string
        - `metadata` Metadata — Per-block annotations carried by any Hyperdoc node (ENG-1390). Out-of-band annotations that travel with a block but aren't part of its content: provenance (`sources`) and human edit attribution (`edited_by`). New annotation types get added here as typed fields as the need arises. Empty by default. Because `Node.model_dump` forces `exclude_none=True`, an unset `metadata` (None) is dropped from serialization entirely, and within a populated `Metadata` only the set keys survive.
          - `sources` SourceRef[], nullable
            - `chunk_id` string, required
            - `resource_id` string, nullable
            - `source` string, nullable
            - `score` number, nullable
          - `edited_by` string, nullable
        - `text` string, nullable
        - `children` union[]
          - union
            - Blob — Represents embedded binary data using data URI scheme. Format: data:[<media type>][;base64],<data> Example: data:text/html;base64,PGh0bWw+...
              - …
            - Callout
              - …
            - Chunk
              - …
            - Code
              - …
            - Comment
              - …
            - Divider
              - …
            - Equation
              - …
            - Footnote
              - …
            - Heading
              - …
            - Image
              - …
            - Link
              - …
            - LineBreak
              - …
            - List
              - …
            - ListItem
              - …
            - Paragraph
              - …
            - Quote
              - …
            - Table
              - …
            - TableCell
              - …
            - TableRow
              - …
            - Text
              - …
            - ToDo
              - …
            - ToolCall — A tool/function call made by the assistant.
              - …
            - ToolResult — The result of a tool call.
              - …
            - TraceMessage — A message in an agent trace (user message, assistant message, or thinking).
              - …
            - Utterance — A speaker-attributed segment of a transcript (ENG-2476/D10). "Utterance" is the standard name for this across transcription providers (AssemblyAI, Deepgram, Rev). Timestamps are relative offsets in seconds — provider-native; absolute times derive from `Transcript.started_at`.
              - …
        - `name` string, nullable
        - `amount` number, nullable
        - `currency` string, nullable
        - `stage` string, nullable
        - `pipeline` string, nullable
        - `probability` number, nullable
        - `closed_at` string, date-time, nullable
        - `won_reason` string, nullable
        - `lost_reason` string, nullable
        - `deal_source` string, nullable
        - `tags` string[], nullable
        - `company_ids` string[], nullable
        - `contact_ids` string[], nullable
  - `next_cursor` string, nullable, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/hyperspell/apis/hyperspell-api.md) · [All operations](https://skmtc.net/hyperspell/apis/hyperspell-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/hyperspell/hyperspell-api/revisions/5721acd588e6/schema)
