Skip to content
Get started

Retrieve a table

structured_sheets.tables.retrieve(strtable_id, TableRetrieveParams**kwargs) -> TableResponse
GET/v1/structured-sheets/{structured_sheet_id}/tables/{table_id}

Get details of a specific table extracted from the structured sheet. Only available when conversion status is 'completed'.

ParametersExpand Collapse
structured_sheet_id: str

The unique identifier of the structured sheet conversion.

table_id: str

The unique identifier of the table.

ReturnsExpand Collapse
class TableResponse:

Response representing a table extracted from a structured sheet.

This is returned from GET (retrieve) and list table endpoints. Table names use a composite format: {normalized_sheet_name}__{table_name}.

id: str

The unique identifier for this table.

created_at: datetime

The timestamp when this table was created.

formatdate-time
name: str

Composite table name: {normalized_sheet_name}__{table_name}. Uses lowercase snake_case. Aggregation tables end with '__aggregations'. Two special metadata tables exist per structured sheet: '__deeptable_workbook_metadata' (workbook provenance info) and '__deeptable_table_overview' (summary of all tables). Example: 'staffing__head_count' or 'staffing__head_count__aggregations'.

maxLength255
object: Literal["table"]

The object type, which is always 'table'.

sheet_name: str

The original Excel sheet name this table came from.

maxLength100
structured_sheet_id: str

The ID of the structured sheet this table belongs to.

type: Literal["relational", "aggregation", "tableless", "metadata"]

The type of table (relational, aggregation, tableless, or metadata).

One of the following:
"relational"
"aggregation"
"tableless"
"metadata"

Retrieve a table

import os
from deeptable import DeepTable

client = DeepTable(
    api_key=os.environ.get("DEEPTABLE_API_KEY"),  # This is the default and can be omitted
)
table_response = client.structured_sheets.tables.retrieve(
    table_id="tbl_01kfxgjd94fn9stqm45rqr2pnz",
    structured_sheet_id="ss_01kfxgjd94fn9stqm42nejb627",
)
print(table_response.id)
{
  "id": "tbl_01kfxgjd94fn9stqm45rqr2pnz",
  "created_at": "2026-01-15T10:35:00Z",
  "name": "staffing__head_count",
  "object": "table",
  "sheet_name": "Staffing",
  "structured_sheet_id": "ss_01kfxgjd94fn9stqm42nejb627",
  "type": "relational"
}
Returns Examples
{
  "id": "tbl_01kfxgjd94fn9stqm45rqr2pnz",
  "created_at": "2026-01-15T10:35:00Z",
  "name": "staffing__head_count",
  "object": "table",
  "sheet_name": "Staffing",
  "structured_sheet_id": "ss_01kfxgjd94fn9stqm42nejb627",
  "type": "relational"
}