List Tables

List tables in a workspace with optional folder filtering, search, sorting, and an opaque cursor envelope. A workspace whose folder tree exceeds 10,000 folders is a 413, because the response needs the whole tree to render folder paths.

GET/api/v2/tables
X-API-Key<token>

Your Sim API key, personal or workspace-scoped. Generate one from the Sim dashboard under Settings > API Keys. A workspace API key is not accepted everywhere: operations that act on behalf of a specific human — administrative reads, secret access, and irreversible or governance-affecting writes — always reject it, whatever role the key carries. Each such operation says so in its own description, and the rejection surfaces as 403 unless the operation conceals unauthorized resources, in which case it is reported as 404. Use a personal API key for those.

In: header

Query Parameters

workspaceId*string

Workspace whose tables should be listed.

Length1 <= length
folderPath?string

Restrict results to tables in this folder.

search?string

Case-insensitive substring search on the resource name.

Length1 <= length <= 200
sortBy?string

Field used to sort the result.

Default"createdAt"
Value in"name" | "createdAt" | "updatedAt"
sortOrder?string

Sort direction.

Default"asc"
Value in"asc" | "desc"
limit?integer

Maximum tables to return (1-1000). Fractional or out-of-range values are truncated and clamped into that range rather than rejected.

Default100
Range1 <= value <= 1000
cursor?string

Opaque cursor from the previous page.

Length1 <= length

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://www.sim.ai/api/v2/tables?workspaceId=string"
{
  "data": [
    {
      "id": "string",
      "name": "string",
      "description": "string",
      "ownerEmail": "owner@example.com",
      "schema": {
        "columns": [
          {
            "id": "string",
            "name": "string",
            "type": "string",
            "required": false,
            "unique": false,
            "workflowGroupId": "string",
            "options": [
              {
                "id": "string",
                "name": "string"
              }
            ],
            "multiple": true,
            "currencyCode": "string"
          }
        ]
      },
      "rowCount": 0,
      "maxRows": 0,
      "folderPath": "string",
      "locks": {
        "schemaLocked": true,
        "insertLocked": true,
        "updateLocked": true,
        "deleteLocked": true
      },
      "job": {
        "id": "string",
        "type": "import",
        "status": "running",
        "rowsProcessed": 0,
        "error": "string"
      },
      "createdAt": "2019-08-24T14:15:22Z",
      "updatedAt": "2019-08-24T14:15:22Z"
    }
  ],
  "nextCursor": "string"
}
{
  "error": {
    "code": "BAD_REQUEST",
    "message": "The request is invalid."
  }
}
{
  "error": {
    "code": "BAD_REQUEST",
    "message": "The request is invalid."
  }
}
{
  "error": {
    "code": "BAD_REQUEST",
    "message": "The request is invalid."
  }
}
{
  "error": {
    "code": "BAD_REQUEST",
    "message": "The request is invalid."
  }
}
{
  "error": {
    "code": "BAD_REQUEST",
    "message": "The request is invalid."
  }
}
{
  "error": {
    "code": "BAD_REQUEST",
    "message": "The request is invalid."
  }
}
{
  "error": {
    "code": "BAD_REQUEST",
    "message": "The request is invalid."
  }
}
{
  "error": {
    "code": "BAD_REQUEST",
    "message": "The request is invalid."
  }
}