Change a field's name, type, width or options
Update a field; its id is its column and never changes.
PATCH/v1/apps/{appId}/tables/{tableId}/fields/{fieldId}
Merge config with existing settings and validate against the resulting type. Type changes convert values in one transaction: keep values readable as the new type, clear others. Explain effects on pages, view filters and permission conditions before proposing a type change. Cannot convert to or from a relation; add a new field and delete the old one. Select options replace the whole list: keep each option’s id to preserve its rows. Removed options are cleared from all records in the same transaction; single choices become empty, multiselects keep other choices. Restore cleared values with trash.restore.
Requires the schema:write scope. Operation fields.update. MCP tool fields_update. CLI: grid82 fields update (npx grid82).
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
appId | string | yes | |
tableId | string | yes | |
fieldId | string | yes |
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
acknowledge | boolean | no |
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 | no | Up to 60 characters. |
type | “text” or “longtext” or “email” or “url” or “phone” or “json” or “number” or “currency” or “percent” or “rating” or “duration” or “select” or “multiselect” or “checkbox” or “user” or “attachment” or “date” or “recordId” or “autonumber” or “createdTime” or “createdBy” or “modifiedTime” or “modifiedBy” or “link” or “lookup” or “rollup” or “formula” or “button” | no | |
width | integer | no | At least 60. At most 900. |
config | object | no |
Response
Success
dataobjectrequiredRefused
errorobjectrequired