key (slug), name (display label), type, and optional validation rules.
Summary
select and multi_select must define an options array.
text
Single-line plain text. Max 255 characters.textarea
Multi-line plain text. Max 5000 characters.number
Numeric value — integer or decimal. Optional constraints:min, max, decimal_places (configured in the Schema Builder).
boolean
True/false toggle.select
Single choice from a predefined list. The stored value must exactly match one of the defined options.multi_select
Multiple choices from a predefined list. Stored as an array of strings.date
Calendar date without time. Format:YYYY-MM-DD.
datetime
Date and time with timezone. Format: ISO 8601 (YYYY-MM-DDTHH:mm:ssZ).
url
Web URL. Validated as a properly-formatted URL.file
File attachment. The value stored in the record is afileId ULID returned from the file upload flow. See File Uploads & Downloads.
relation
A reference to a record in another entity within the same app. The stored value is the ULID of the target record.id string. To load the referenced record’s data, call sdk.getRecord(relatedEntityKey, value).
System Fields
Every record automatically includes these read-only fields — never include them in create/update payloads:Naming Conventions
- Field keys:
snake_case, lowercase —due_date,is_complete,contact_email - Field names: Title Case — “Due Date”, “Completed”, “Contact Email”
- Entity keys:
snake_case, plural —tasks,contacts,inventory_items - Entity names: Title Case, plural — “Tasks”, “Contacts”