Add a field to a database
Creates a field of the given kind; a relation field also mints the relation itself and, unless `reciprocal` is `false`, the matching field on the other database. Requires the `databases:write` permission and rejects a duplicate key or settings that reference a field that does not exist. Send an `Idempotency-Key` header to make retries safe; a replay within the window returns the original response.
apiKeyAuthorizationBearer <snoze_sk_…>Workspace API key created in Workspace settings → API keys. Scopes on the key bound what it can read and write.
workspaceId*stringdatabaseId*stringapplication/json- body
id?|nullkey?string|nulllabel*stringkind*string"text""long_text""number""rating""date""select""multi_select""status""checkbox""url""email""phone""user""file""place""json""created_at""created_by""updated_at""updated_by""unique_id""formula""relation""rollup""time_tracking""button"required?boolean|nulldefaultValue?string|number|boolean|array<string>|nulloptions?array<>|nullsettings?|nullorder?number|nullcolumnPlacement?|nullreciprocal?||nullclientMutationId?string|nullSuccess
application/json- response
data*curl -X POST 'https://api.snoze.dev/v1/workspaces/string/databases/string/fields' \ -H 'Content-Type: application/json' \ -d '{ "label": "string", "kind": "text"}'{ "data": { "id": "string", "workspaceId": "string", "databaseId": "string", "key": "string", "label": "string", "kind": "text", "required": true, "defaultValue": "string", "options": [ { "id": "string", "key": "string", "name": "string", "color": "string", "order": 0 } ], "settings": {}, "order": 0, "createdAt": "string", "updatedAt": "string" }}List the fields of a database
Returns the database's fields in display order, each with its kind, options, default value, requiredness and kind-specific settings. Requires the `databases:read` permission.
Update a field on a database
Changes a field's label, requiredness, default, options, order or settings, and runs a planned type conversion when `kind` changes - a conversion whose plan drops values is refused unless the caller sets `acceptDropped`. Requires the `databases:write` permission and responds with not-found for an unknown field. Send an `Idempotency-Key` header to make retries safe; a replay within the window returns the original response.