> ## Documentation Index
> Fetch the complete documentation index at: https://superdoc-caio-pizzol-docs-ai-core-preset.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# tables.get

> Retrieve table structure and dimensions by locator.

## Summary

Retrieve table structure and dimensions by locator.

* Operation ID: `tables.get`
* API member path: `editor.doc.tables.get(...)`
* Mutates document: `no`
* Idempotency: `idempotent`
* Supports tracked mode: `no`
* Supports dry run: `no`
* Deterministic target resolution: `yes`

## Expected result

Returns a TablesGetOutput with the table row count, column count, and structural metadata.

## Input fields

### Variant 1 (target.nodeType="table")

| Field             | Type         | Required | Description         |
| ----------------- | ------------ | -------- | ------------------- |
| `target`          | TableAddress | yes      | TableAddress        |
| `target.kind`     | `"block"`    | yes      | Constant: `"block"` |
| `target.nodeId`   | string       | yes      |                     |
| `target.nodeType` | `"table"`    | yes      | Constant: `"table"` |

### Variant 2 (required: nodeId)

| Field    | Type   | Required | Description |
| -------- | ------ | -------- | ----------- |
| `nodeId` | string | yes      |             |

### Example request

```json theme={null}
{
  "target": {
    "kind": "block",
    "nodeId": "node-def456",
    "nodeType": "table"
  }
}
```

## Output fields

| Field              | Type         | Required | Description         |
| ------------------ | ------------ | -------- | ------------------- |
| `address`          | TableAddress | yes      | TableAddress        |
| `address.kind`     | `"block"`    | yes      | Constant: `"block"` |
| `address.nodeId`   | string       | yes      |                     |
| `address.nodeType` | `"table"`    | yes      | Constant: `"table"` |
| `columns`          | integer      | yes      |                     |
| `nodeId`           | string       | yes      |                     |
| `rows`             | integer      | yes      |                     |

### Example response

```json theme={null}
{
  "address": {
    "kind": "block",
    "nodeId": "node-def456",
    "nodeType": "table"
  },
  "columns": 1,
  "nodeId": "node-def456",
  "rows": 1
}
```

## Pre-apply throws

* `TARGET_NOT_FOUND`

## Non-applied failure codes

* None

## Raw schemas

<Accordion title="Raw input schema">
  ```json theme={null}
  {
    "additionalProperties": false,
    "oneOf": [
      {
        "required": [
          "target"
        ]
      },
      {
        "required": [
          "nodeId"
        ]
      }
    ],
    "properties": {
      "nodeId": {
        "type": "string"
      },
      "target": {
        "$ref": "#/$defs/TableAddress"
      }
    },
    "type": "object"
  }
  ```
</Accordion>

<Accordion title="Raw output schema">
  ```json theme={null}
  {
    "additionalProperties": false,
    "properties": {
      "address": {
        "$ref": "#/$defs/TableAddress"
      },
      "columns": {
        "minimum": 0,
        "type": "integer"
      },
      "nodeId": {
        "type": "string"
      },
      "rows": {
        "minimum": 0,
        "type": "integer"
      }
    },
    "required": [
      "nodeId",
      "address",
      "rows",
      "columns"
    ],
    "type": "object"
  }
  ```
</Accordion>
