Add a table
Add a table.
POST/v1/apps/{appId}/tables
Omit id and every field’s id to receive platform-minted opaque tbl_… and fld_… IDs in the response; send IDs only when recreating an item whose IDs you already hold. Each field is { name, type, config? }, and fields.types lists the settings each type takes.
Requires the schema:write scope. Operation tables.create. MCP tool tables_create. CLI: grid82 tables create (npx grid82).
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
appId | string | yes |
Headers
| Name | Type | Required | Description |
|---|---|---|---|
Idempotency-Key | string | no | Any unique string. Sending the same key with the same request again returns the first response (marked Idempotency-Replayed: true) instead of running it twice. Reusing it for a different request is refused with 409. Kept for 24 hours. Up to 255 characters. |
Request body
| Field | Type | Required | Description |
|---|---|---|---|
name | string | yes | Up to 60 characters. |
plural | string | no | Up to 120 characters. |
description | string | no | Up to 2000 characters. |
icon | string or null | no | |
id | string | no | |
primaryField | string | no | Up to 120 characters. |
primaryFieldId | string | no | |
fields | FieldInput[] | yes | 1 to 200 items. |
Response
Success
dataobjectrequiredRefused
errorobjectrequired