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

# Get Table Data

> Get table data with streaming response to handle large tables.

## Overview

This endpoint returns paginated rows and computed values from a table.
It is the main read endpoint for checking input, enrichment, or scoring output.

## Example request

```bash theme={null}
export EXTRUCT_API_TOKEN="YOUR_API_TOKEN"
export TABLE_ID="YOUR_TABLE_ID"

curl --get "https://api.extruct.ai/v1/tables/${TABLE_ID}/data" \
  -H "Authorization: Bearer ${EXTRUCT_API_TOKEN}" \
  --data-urlencode "offset=0" \
  --data-urlencode "limit=50"
```

## Key parameters

* `table_id` (required): target table identifier.
* `offset` (optional): pagination offset.
* `limit` (optional): page size.

## Success signal

A successful response returns table rows and status context. Continue paging until returned rows are fewer than `limit`.
Start with a small page size when validating a new workflow, then increase `limit` once the output looks correct.

## Common errors

### `401 Unauthorized`

Check that your header is `Authorization: Bearer ${EXTRUCT_API_TOKEN}`.

### `404 Not Found`

The table ID is invalid or unavailable in your workspace.

## Related endpoints

* [Get Table Endpoint](/api-reference/tables/get-table)
* [Get Row Endpoint](/api-reference/tables/get-table-row)
* [Delete Table Rows Endpoint](/api-reference/tables/delete-table-rows)

## Related guides

* [AI Tables Basics](/api-guides/ai-tables/ai-table-basics)


## OpenAPI

````yaml get /v1/tables/{table_id}/data
openapi: 3.1.0
info:
  title: FastAPI
  version: 0.1.0
servers: []
security: []
paths:
  /v1/tables/{table_id}/data:
    get:
      tags:
        - tables
      summary: Get Table Data
      description: Get table data with streaming response to handle large tables.
      operationId: get_table_data_v1_tables__table_id__data_get
      parameters:
        - name: table_id
          in: path
          required: true
          schema:
            type: string
            title: Table Id
        - name: offset
          in: query
          required: false
          schema:
            anyOf:
              - type: integer
              - type: 'null'
        - name: limit
          in: query
          required: false
          schema:
            anyOf:
              - type: integer
              - type: 'null'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TableDataOutput'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - HTTPBearer: []
components:
  schemas:
    TableDataOutput:
      properties:
        id:
          type: string
          title: Id
          description: Table ID.
        created_at:
          type: string
          format: date-time
          title: Created At
          description: Table creation time.
        name:
          type: string
          title: Name
          description: Table name.
        description:
          anyOf:
            - type: string
            - type: 'null'
          description: Table description.
        tags:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          description: Table tags.
        kind:
          $ref: '#/components/schemas/TableKind'
          description: Table type.
        columns:
          items:
            $ref: '#/components/schemas/ColumnOutputSchema'
          type: array
          title: Columns
          description: Table columns configurations.
        owner:
          $ref: '#/components/schemas/OwnerInfo'
        child_relationships:
          items:
            $ref: '#/components/schemas/TableRelationshipOutput'
          type: array
          title: Child Relationships
          description: Child table relationships.
        parent_relationships:
          items:
            $ref: '#/components/schemas/TableRelationshipOutput'
          type: array
          title: Parent Relationships
          description: Parent table relationships.
        status:
          $ref: '#/components/schemas/TableStatus-Output'
        rows:
          items:
            $ref: '#/components/schemas/RowDataOutputSchema-Output'
          type: array
          title: Rows
        discovery_tasks:
          anyOf:
            - items:
                $ref: '#/components/schemas/DiscoveryTaskOutput'
              type: array
            - type: 'null'
      type: object
      required:
        - id
        - created_at
        - name
        - kind
        - columns
        - owner
        - status
        - rows
      title: TableDataOutput
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    TableKind:
      type: string
      enum:
        - generic
        - company
        - people
      title: TableKind
    ColumnOutputSchema:
      properties:
        id:
          type: string
          title: Id
        created_at:
          type: string
          format: date-time
          title: Created At
        config:
          anyOf:
            - $ref: '#/components/schemas/InputColumnConfig'
            - $ref: '#/components/schemas/AgentColumnConfig-Output'
            - $ref: '#/components/schemas/CriterionGradeColumnConfig'
            - $ref: '#/components/schemas/PeopleFinderColumnConfig'
            - $ref: '#/components/schemas/DiscoveryScoresColumnConfig'
            - $ref: '#/components/schemas/CompanyNameColumnConfig'
            - $ref: '#/components/schemas/CompanyWebsiteColumnConfig'
            - $ref: '#/components/schemas/CompanyProfileColumnConfig'
            - $ref: '#/components/schemas/EmailFinderColumnConfig'
            - $ref: '#/components/schemas/PhoneFinderColumnConfig'
            - $ref: '#/components/schemas/ReverseEmailLookupColumnConfig'
      type: object
      required:
        - id
        - created_at
        - config
      title: ColumnOutputSchema
    OwnerInfo:
      properties:
        id:
          type: string
          title: Id
        email:
          type: string
          title: Email
      type: object
      required:
        - id
        - email
      title: OwnerInfo
    TableRelationshipOutput:
      properties:
        table_id:
          type: string
          title: Table Id
          description: ID of the related table
        relationship_type:
          $ref: '#/components/schemas/TableRelationshipType'
          description: Type of relationship
      type: object
      required:
        - table_id
        - relationship_type
      title: TableRelationshipOutput
    TableStatus-Output:
      properties:
        num_rows:
          type: integer
          title: Num Rows
          description: Number of rows in the table
          default: 0
        num_output_columns:
          type: integer
          title: Num Output Columns
          description: Number of output columns in the table
          default: 0
        num_input_columns:
          type: integer
          title: Num Input Columns
          description: Number of input columns in the table
          default: 0
        num_cells_completed:
          type: integer
          title: Num Cells Completed
          description: Number of non-input cells that have been completed
          default: 0
        num_cells_in_progress:
          type: integer
          title: Num Cells In Progress
          description: Number of non-input cells that are in progress
          default: 0
        num_columns:
          type: integer
          title: Num Columns
          readOnly: true
        run_status:
          $ref: '#/components/schemas/RunStatus'
          readOnly: true
      type: object
      required:
        - num_columns
        - run_status
      title: TableStatus
    RowDataOutputSchema-Output:
      properties:
        id:
          type: string
          title: Id
        created_at:
          type: string
          format: date-time
          title: Created At
          description: Row creation time.
        parent_row_id:
          anyOf:
            - type: string
            - type: 'null'
          description: ID of the parent row, if any.
        company_profile_id:
          anyOf:
            - type: string
            - type: 'null'
          description: ID of the linked company profile.
        data:
          additionalProperties:
            $ref: '#/components/schemas/TableCellDataSchema'
          type: object
          title: Data
        metadata:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          description: Additional metadata
        parent_data:
          anyOf:
            - additionalProperties:
                $ref: '#/components/schemas/TableCellDataSchema'
              type: object
            - type: 'null'
          description: Data from the parent row, if requested and available.
      type: object
      required:
        - id
        - created_at
      title: RowDataOutputSchema
    DiscoveryTaskOutput:
      properties:
        id:
          type: string
          title: Id
        created_at:
          type: string
          format: date-time
          title: Created At
        status:
          $ref: '#/components/schemas/Status'
        query:
          type: string
          title: Query
        desired_num_results:
          type: integer
          title: Desired Num Results
        is_exhausted:
          type: boolean
          title: Is Exhausted
          default: false
        num_results_discovered:
          type: integer
          title: Num Results Discovered
          description: Total number of company candidates discovered from search
          default: 0
        num_results_enriched:
          type: integer
          title: Num Results Enriched
          description: Number of candidates enriched with company profiles
          default: 0
        num_results_evaluated:
          type: integer
          title: Num Results Evaluated
          description: Number of candidates that had criteria evaluation completed
          default: 0
        num_results:
          type: integer
          title: Num Results
          description: Total number of results
          default: 0
        table_id:
          anyOf:
            - type: string
            - type: 'null'
        auto_data_sources:
          type: boolean
          title: Auto Data Sources
          default: true
        data_sources:
          anyOf:
            - items:
                $ref: '#/components/schemas/DiscoveryDataSource'
              type: array
            - type: 'null'
        criteria:
          anyOf:
            - items:
                $ref: '#/components/schemas/CriterionDefinition'
              type: array
            - type: 'null'
        exclude_domains:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Exclude Domains
          description: >-
            The resolved, sorted list of registered domains that were excluded
            from this run (union of `exclude_domains` and the visible results of
            `exclude_task_ids` at creation time). Capped at 1000.
      type: object
      required:
        - id
        - created_at
        - status
        - query
        - desired_num_results
      title: DiscoveryTaskOutput
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    InputColumnConfig:
      properties:
        kind:
          type: string
          const: input
          title: Kind
          default: input
        name:
          type: string
          title: Name
        key:
          type: string
          title: Key
      type: object
      required:
        - name
        - key
      title: InputColumnConfig
    AgentColumnConfig-Output:
      properties:
        kind:
          type: string
          const: agent
          title: Kind
          default: agent
        name:
          type: string
          title: Name
        key:
          type: string
          title: Key
        value:
          $ref: '#/components/schemas/AgentColumnSchema'
      type: object
      required:
        - name
        - key
        - value
      title: AgentColumnConfig
    CriterionGradeColumnConfig:
      properties:
        kind:
          type: string
          const: criterion_grade
          title: Kind
          default: criterion_grade
        name:
          type: string
          title: Name
        key:
          type: string
          title: Key
        value:
          $ref: '#/components/schemas/CriterionGraderAgentSchema'
      type: object
      required:
        - name
        - key
        - value
      title: CriterionGradeColumnConfig
    PeopleFinderColumnConfig:
      properties:
        kind:
          type: string
          const: company_people_finder
          title: Kind
          default: company_people_finder
        name:
          type: string
          title: Name
        key:
          type: string
          title: Key
        value:
          $ref: '#/components/schemas/PeopleFinderAgentSchema'
      type: object
      required:
        - name
        - key
        - value
      title: PeopleFinderColumnConfig
    DiscoveryScoresColumnConfig:
      properties:
        kind:
          type: string
          const: discovery_scores
          title: Kind
          default: discovery_scores
        name:
          type: string
          title: Name
        key:
          type: string
          title: Key
        criteria:
          anyOf:
            - additionalProperties:
                $ref: '#/components/schemas/CriterionDefinition'
              type: object
            - type: 'null'
          description: Criteria definitions keyed by criterion.key
      type: object
      required:
        - name
        - key
      title: DiscoveryScoresColumnConfig
    CompanyNameColumnConfig:
      properties:
        kind:
          type: string
          const: company_name
          title: Kind
          default: company_name
        name:
          type: string
          title: Name
        key:
          type: string
          title: Key
      type: object
      required:
        - name
        - key
      title: CompanyNameColumnConfig
      description: >-
        System column for company name - automatically populated from company
        enrichment.
    CompanyWebsiteColumnConfig:
      properties:
        kind:
          type: string
          const: company_website
          title: Kind
          default: company_website
        name:
          type: string
          title: Name
        key:
          type: string
          title: Key
      type: object
      required:
        - name
        - key
      title: CompanyWebsiteColumnConfig
      description: >-
        System column for company website - automatically populated from company
        enrichment.
    CompanyProfileColumnConfig:
      properties:
        kind:
          type: string
          const: company_profile
          title: Kind
          default: company_profile
        name:
          type: string
          title: Name
        key:
          type: string
          title: Key
      type: object
      required:
        - name
        - key
      title: CompanyProfileColumnConfig
      description: >-
        System column for complete company profile - automatically populated
        from company enrichment.
    EmailFinderColumnConfig:
      properties:
        kind:
          type: string
          const: email_finder
          title: Kind
          default: email_finder
        name:
          type: string
          title: Name
        key:
          type: string
          title: Key
      type: object
      required:
        - name
        - key
      title: EmailFinderColumnConfig
      description: Configuration for email finder columns.
    PhoneFinderColumnConfig:
      properties:
        kind:
          type: string
          const: phone_finder
          title: Kind
          default: phone_finder
        name:
          type: string
          title: Name
        key:
          type: string
          title: Key
      type: object
      required:
        - name
        - key
      title: PhoneFinderColumnConfig
      description: Configuration for phone finder columns.
    ReverseEmailLookupColumnConfig:
      properties:
        kind:
          type: string
          const: reverse_email_lookup
          title: Kind
          default: reverse_email_lookup
        name:
          type: string
          title: Name
        key:
          type: string
          title: Key
        email_column_key:
          type: string
          title: Email Column Key
      type: object
      required:
        - name
        - key
        - email_column_key
      title: ReverseEmailLookupColumnConfig
      description: >-
        Configuration for reverse email lookup columns.


        Given an email address, returns LinkedIn profile data via FullEnrich
        API.
    TableRelationshipType:
      type: string
      enum:
        - company_people
      title: TableRelationshipType
    RunStatus:
      type: string
      enum:
        - running
        - idle
      title: RunStatus
    TableCellDataSchema:
      properties:
        value:
          anyOf:
            - {}
            - type: 'null'
        status:
          $ref: '#/components/schemas/TableCellStatus'
        updated_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
      type: object
      required:
        - value
        - status
      title: TableCellDataSchema
    Status:
      type: string
      enum:
        - created
        - in_progress
        - done
        - failed
      title: Status
    DiscoveryDataSource:
      type: string
      enum:
        - web_search
        - linkedin
        - maps
      title: DiscoveryDataSource
    CriterionDefinition:
      properties:
        key:
          type: string
          pattern: ^[a-zA-Z][a-zA-Z0-9_]*$
          title: Key
          description: Unique identifier for this criterion (e.g., "is_ai_company")
        name:
          type: string
          maxLength: 100
          minLength: 1
          title: Name
          description: Human-readable name for this criterion (e.g., "AI Company")
        criterion:
          type: string
          maxLength: 500
          minLength: 10
          title: Criterion
          description: The actual criterion text to evaluate against companies
      type: object
      required:
        - key
        - name
        - criterion
      title: CriterionDefinition
      description: Definition of a criterion for evaluating companies in discovery tasks
    AgentColumnSchema:
      properties:
        agent_type:
          $ref: '#/components/schemas/AgentType'
          default: research_pro
        prompt:
          type: string
          title: Prompt
          default: ''
        output_format:
          $ref: '#/components/schemas/AgentOutputFormat'
          default: text
        labels:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
        output_schema:
          anyOf:
            - additionalProperties: true
              type: object
            - {}
            - type: 'null'
        extra_dependencies:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
      type: object
      title: AgentColumnSchema
    CriterionGraderAgentSchema:
      properties:
        criterion:
          type: string
          title: Criterion
      type: object
      required:
        - criterion
      title: CriterionGraderAgentSchema
    PeopleFinderAgentSchema:
      properties:
        roles:
          items:
            type: string
          type: array
          minItems: 1
          title: Roles
        provider:
          type: string
          const: research_pro
          title: Provider
          default: research_pro
        max_results:
          type: integer
          title: Max Results
          default: 5
      type: object
      required:
        - roles
      title: PeopleFinderAgentSchema
    TableCellStatus:
      type: string
      enum:
        - created
        - requested
        - in_progress
        - done
        - failed
      title: TableCellStatus
    AgentType:
      type: string
      enum:
        - research
        - research_pro
        - research_reasoning
        - llm
        - linkedin
      title: AgentType
    AgentOutputFormat:
      type: string
      enum:
        - text
        - url
        - number
        - email
        - label
        - json
        - grade
        - people
        - numeric
        - money
        - date
        - phone
        - select
        - multiselect
      title: AgentOutputFormat
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer

````