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

# tables columns get

> List a table's columns with each basic and action column's full settings.

List a table's columns with each basic and action column's full settings — formula, data type, and action config. Source columns carry no settings, only per-source record counts. For an abbreviated listing without settings, use [`clay tables columns list`](/cli/reference/tables-columns-list).

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
clay tables columns get <tableId>
```

## Arguments

| Argument  | Description                                           |
| --------- | ----------------------------------------------------- |
| `tableId` | The id of the table whose columns to fetch. Required. |

## Output

Each column is discriminated on `type`. The `settings` object appears on basic and action columns (absent when the column has none) and its shape is discriminated on `type`. The `sources` array appears on source columns.

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "data": [
    {
      "type": "action",
      "id": "col_act",
      "name": "Find email",
      "updatedAt": "2026-01-01T00:00:00.000Z",
      "settings": {}
    },
    {
      "type": "source",
      "id": "col_src",
      "name": "Imported CSV",
      "updatedAt": "2026-01-01T00:00:00.000Z",
      "sources": [{ "id": "src_1", "name": "leads.csv", "numSourceRecords": 500 }]
    }
  ]
}
```

| Field                               | Type                              | Description                                                                           |
| ----------------------------------- | --------------------------------- | ------------------------------------------------------------------------------------- |
| `data[].type`                       | `"basic" \| "action" \| "source"` | Column kind. Discriminates the shape.                                                 |
| `data[].id`                         | string                            | Column id.                                                                            |
| `data[].name`                       | string                            | Display name.                                                                         |
| `data[].updatedAt`                  | string                            | Last-updated timestamp.                                                               |
| `data[].settings`                   | object                            | Basic and action columns only. Full column settings; absent when the column has none. |
| `data[].sources`                    | array                             | Source columns only. One entry per attached source.                                   |
| `data[].sources[].numSourceRecords` | number                            | Number of records imported from that source.                                          |

Column types: `basic` is a plain data column (optionally formula-backed), `action` runs an action or enrichment to populate the column, and `source` represents attached data source(s) and carries no settings.

## Errors

| Code               | Exit | Notes                                                                 |
| ------------------ | ---- | --------------------------------------------------------------------- |
| `validation_error` | 2    | The `tableId` argument is required, or the table is an archive table. |
| `not_found`        | 6    | No table with that id in the workspace.                               |
| `auth_forbidden`   | 3    | The API key lacks the `cli:all` scope, or you cannot read this table. |

## Examples

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
clay tables columns get tbl_123
clay tables columns get tbl_123 | jq '.data[] | select(.type == "action") | .settings'
clay tables columns get tbl_123 | jq -r '.data[] | select(.type == "source") | .sources[].numSourceRecords'
```
