POST/bases/properties/create

Add a property to a base

Creates a property (column) on a base. Supply the base's pageId, a name, and a supported type; use typeOptions to configure the property according to its type. Unknown keys in typeOptions are preserved rather than rejected.

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

4 body fields

The base property to create. Supply pageId, name, and type; typeOptions configures the property according to its type.

namestringrequired
The name of the property.
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.
typestringrequired
The property's type. Supported values include `text`, `number`, `select`, `status`, `multiSelect`, `date`, `person`, `file`, `page`, `checkbox`, `url`, and `email`.
Allowed:textnumberselectstatusmultiSelectdatepersonfilepagecheckboxurlemail
typeOptionsobjectoptional
Configuration for a property, keyed off the property's `type`. Unknown keys are preserved rather than rejected. | type | schema | | --- | --- | | `text` | TextTypeOptions | | `longText` | LongTextTypeOptions | | `number` | NumberTypeOptions | | `date` | DateTypeOptions | | `checkbox` | CheckboxTypeOptions | | `url` | UrlTypeOptions | | `email` | EmailTypeOptions | | `select`, `status`, `multiSelect` | SelectTypeOptions | | `person` | PersonTypeOptions | | `formula` | FormulaTypeOptions | | `file`, `page`, `createdAt`, `lastEditedAt`, `lastEditedBy` | EmptyTypeOptions |

4 status codes
200Returns the created base property.
dataobjectoptional
statusintegeroptional
successbooleanoptional
400Returned when the request fails validation, including when a required field is missing or a property value is invalid.
errorstringoptional
Reason phrase, for example `Bad Request`.
messagestringoptional
statusCodeintegeroptional
403Returned when modifying the base is forbidden or bases are not included in the current licence.
errorstringoptional
Reason phrase, for example `Bad Request`.
messagestringoptional
statusCodeintegeroptional
404Returned when the base is not found.
errorstringoptional
Reason phrase, for example `Bad Request`.
messagestringoptional
statusCodeintegeroptional

Error handling

A 400 is returned when required fields are missing or the request fails validation. A 403 is returned when the authenticated user is forbidden from modifying the base or bases are not included in the current licence. A 404 is returned when the base does not exist. pageId, name, and type are required; pageId must be a UUID, and type must be a supported property type.