API ReferenceInformation Schema
API Reference

Information Schema

Inspect table and column metadata across all connections. Returns schema information including column names, data types, and sync status for every discovered table.

List tables

GET/v1/information_schema

List discovered tables with optional filtering and pagination. Supports wildcard patterns (SQL %) for schema and table name filters. Set include_columns=true to include column definitions (omitted by default). Every table carries its declared storage layout — partition_by and sorted_by — which is fixed when the table is created and cannot be changed afterwards. Both are always present; an empty array means none was declared. Only tables in a Hotdata instant database declare a layout here, so a table discovered from an external connection always reports empty arrays.

Query parameters

  • connection_id string — Filter by connection ID
  • schema string — Filter by schema name (supports % wildcards)
  • table string — Filter by table name (supports % wildcards)
  • include_columns boolean — Include column definitions (default: false)
  • limit integer — Maximum number of tables per page
  • cursor string — Pagination cursor from a previous response

Response 200 — Table metadata

  • count integerrequired. Min: 0
  • has_more booleanrequired
  • limit integerrequired. Min: 0
  • next_cursor string,null
  • tables TableInfo[] — required
    • columns ColumnInfo[] | null
      • data_type stringrequired
      • name stringrequired
      • nullable booleanrequired
    • connection stringrequired
    • last_sync string,null
    • partition_by TablePartitionKey[] — required. The table's partition keys, in the order they were declared when the table was created. Empty when the table is not partitioned. A table's storage layout is fixed when the table is created and cannot be changed afterwards, so this is how to confirm a table really was created with the layout that was asked for. The field is always present: an empty array means "no partitioning declared", which is not the same as a response that omits the field entirely. Reported for tables in a Hotdata instant database, which are the only ones whose layout is declared here. A table discovered from an external connection always reports an empty array — its layout belongs to the upstream system, so an empty array there means "not known from here", not "confirmed unpartitioned".
      • column stringrequired. Column the key reads.
      • transform stringrequired. How the value is derived from the column. One of identity (the column value itself), year, month, day, or hour.
    • schema stringrequired
    • sorted_by TableSortKey[] — required. The table's sort keys, in the order they were declared when the table was created. Empty when no sort order was declared. Always present, and limited to tables in a Hotdata instant database, for the same reasons as partition_by.
      • column stringrequired
      • direction string,nullasc (the default) or desc. Null when the table was declared without an explicit direction for this key.
      • nulls string,null — Where nulls are placed: first or last. Defaults to the SQL default for the chosen direction. Null when the table was declared without an explicit placement for this key.
    • synced booleanrequired
    • table stringrequired
{
  "count": 0,
  "has_more": true,
  "limit": 0,
  "next_cursor": "string",
  "tables": [
    {
      "columns": [
        {}
      ],
      "connection": "string",
      "last_sync": "string",
      "partition_by": [
        {}
      ],
      "schema": "string",
      "sorted_by": [
        {}
      ],
      "synced": true,
      "table": "string"
    }
  ]
}

Errors

StatusDescription
404Connection not found