POST/bases/rows/create

Create a row

cells may be omitted entirely to create an empty row. Any property with a defaultValue in its typeOptions is seeded automatically, and formula properties are evaluated, so the returned row can hold cells you did not send.

Values are validated against each property's type. null clears a cell. Keys must be property ids on this base - an unknown id fails the whole write with 400. Computed properties (createdAt, lastEditedAt, lastEditedBy, formula) are ignored if sent. A property with a type conversion in progress rejects the write.

  • IdempotentThe SDK sends Idempotency-Key, so a retried request is only applied once.

4 body fields
afterRowIdstringoptional
Insert directly after this row.
cellsobjectoptional
Map of property id to cell value. Keys must be ids of properties on this base; an unknown key fails the write with 400.
pageIdstringrequired
Id of the base. A base *is* a page, so this is the base's page id - the same id you would pass to the page endpoints.
positionstringoptional
Explicit fractional index. Overrides `afterRowId`.

4 status codes
200Created row
dataobjectoptional
statusintegeroptional
successbooleanoptional
400Invalid cell values
errorstringoptional
Reason phrase, for example `Bad Request`.
messagestringoptional
statusCodeintegeroptional
403Forbidden, or bases not included in the current licence
errorstringoptional
Reason phrase, for example `Bad Request`.
messagestringoptional
statusCodeintegeroptional
404Base not found
errorstringoptional
Reason phrase, for example `Bad Request`.
messagestringoptional
statusCodeintegeroptional

Error handling

A 400 is returned: Invalid cell values. A 403 is returned: Forbidden, or bases not included in the current licence. A 404 is returned: Base not found.