Skip to content

Add/Update data components

Canonical family page for every input component on Create Form, Update Form, and Update List. View-only blocks are on View data components. Address, file, user, location, and signature also have focused pages; those stay as extra depth and must not contradict this table.

Use an input when the user should write a writable Notion property. If the property is formula, rollup, created_time, last_edited_time, created_by, or last_edited_by, use a view component instead.

  1. The property is in NotionFieldsWithReadWriteAccess (or you are collecting a value that only lives in the app, which is rare).
  2. You know create vs update: create uses *_FOR_CREATE types; update uses *_FOR_UPDATE. The builder shows one palette per screen.
  3. Validation, required, and prefill rules are decided. See the shared controls on Type of Components.
  1. Add the input.
  2. Bind the property.
  3. Set required, default (NONE / EXACT / DYNAMIC), disable editing (update only), visibility, and optional URL prefill name (create only).
  4. Set the type-specific enum in the table.
  5. Preview empty, invalid, and filled. Publish.
Input Create / update enums Notion types Type-specific controls
Text INPUT_TEXT_FOR_CREATE / UPDATE title, rich_text, email, phone, unique_id (as text), people (as text) Validate email/phone; max length
Long text INPUT_LONGTEXT_FOR_* rich_text Rows, validate email/phone
Number INPUT_NUMBER_FOR_* number STEP vs SIMPLE (NumberComponentStepType)
Date DATE_PICKER_FOR_* date DATE / TIME / DATE_TIME
Scheduling date SCHEDULING_DATE_FOR_* date Same date/time choice plus Scheduling rules: closed days, holidays, earliest day, booking window, hours, time zone. See below.
Toggle INPUT_TOGGLE_FOR_* checkbox On/off labels
Options SELECT_OPTIONS_FOR_* select, status DROPDOWN vs RADIO (OptionsComponentStyle)
Multi-select MULTI_SELECT_FOR_* multi_select Chips; allow add-tag depends on Notion
Special multi-select same family people-as-text or custom multi Only when the builder offers the special variant
Image UPLOAD_IMAGE_FOR_* files CAMERA vs ALL (MediaCaptureSource); NONE vs MAX compression
Video UPLOAD_VIDEO_FOR_* files Same capture + compression
File FILE_UPLOAD_FOR_* files Capture source; size limits on plan
User INPUT_USER_FOR_* people-as-text or users db Picks an app user, not a raw Notion people widget
Address INPUT_ADDRESS_FOR_* text / address mapping Structured fields
Location INPUT_LOCATION_FOR_* location LocationMapType, LocationOutputType
Signature INPUT_SIGNATURE_FOR_* files / signature Required means they must sign
Reference SELECT_DATA / update data relation NONE / DIRECT / SELECTION — Selection opens Select Items; configure Wrap Text on that screen

Related focused pages: Address, File upload, User field, Location viewer (view), Signature.

A Reference input with add type SELECTION opens a Select Items screen. Configure the picker on that Select Items screen:

  • Turn on Layout → Wrap Text when long titles, subtitles, or captions need to be shown in full.
  • The setting applies to both List and Grid and works on phone and desktop.
  • Wrap Text is off by default; off or missing keeps the existing one-line ellipsis.
  • DIRECT is an inline picker and does not use the Select Items screen’s layout settings.

There is no separate Wrap Text setting on the Reference input. Choose the target Select Items screen, then configure Wrap Text there.

  • SIMPLE — type a number.
  • STEP — plus/minus stepper. Use for quantities.
  • DATE — calendar date only.
  • TIME — time only.
  • DATE_TIME — both. Match how the Notion property is used.

Scheduling date is a date input with its own calendar rules, for booking and appointment forms. It writes the same Notion date property as Date. The end user sees an ordinary calendar; days and times the rules forbid are not offered, and the server checks the same rules again on save. Each Scheduling date field keeps its own rules, so a pickup date and a return date on one form can use different calendars.

Add the field, choose Scheduling date, and fill the Scheduling rules section. Every box is optional; leave a box blank to skip that rule.

Rule What it does Example
Closed days Tap a weekday to close it. Sunday is the first day. Leave every day off to allow all seven. Close Sat and Sun for Monday–Friday bookings
Holidays One date per line as YYYY-MM-DD. Add yearly after a date to block that month and day every year. No holiday calendar is loaded; you list the days. 2026-11-26; 2026-12-25 yearly
Earliest day Days from today before someone can book, counted in the field’s time zone. 0 allows today; 1 makes tomorrow the first open day. 2 for two days’ notice
Booking window Days ahead someone can book, counted from today. Blank means no far limit. 14 offers the next two weeks
Hours One range per line in 24-hour time, like 08:00-16:30. Add weekdays after the range to limit it (0 = Sunday … 6 = Saturday). Blank allows the whole day. If you set hours, set Show date/time to DATE_TIME so the picker asks for a time. 08:00-16:30 1,2,3,4,5 for weekday office hours; a second line 10:00-13:00 6 adds Saturday mornings
Time zone Closed days, earliest day, and hours all use this zone, not the end user’s browser zone. America/New_York

What the end user sees:

  • Closed weekdays, holidays, days before the earliest day, and days past the booking window are greyed out.
  • With hours set, a weekday stays selectable until a clock time is chosen; only times inside the allowed range are offered.
  • A saved value that breaks a rule shows one of: That day is before the first available day. / That day is outside the booking window. / That weekday is closed. / That day is a holiday on this field. / That day has no available hours. / That time is outside the available hours.

Switching a field between Date and Scheduling date keeps the rules and the date/time choice. Saving a field as a plain Date does not erase rules you typed earlier.

  • CAMERA — camera only (phones).
  • ALL — camera + library + files.
  • Compression MAX reduces upload size and quality. NONE keeps the original within plan upload limits.

A labeled control. Required fields show an error on submit (and often on blur). Format validation shows “Please enter a valid email address” / “valid phone number” without blocking empty optional fields. Submit writes writable properties and then runs form submit actions.

  • People / created_by / last_edited_by are text in the field map. A User input is the supported way to assign an app user.
  • Files are URL in the field map. Uploads still go through NotionApps file storage and then Notion. Plan file upload meters apply. See Plans.
  • Unique id is text. Do not offer it as an editor unless you know what you are doing; use the chip to display it.
  • Adding select options from the app depends on Notion permissions and the troubleshooting guide for new tags.
  • URL prefill is Create Form only.

Add inspection: Text title (required), Date DATE_TIME for Scheduled, Options radio for Severity, Image CAMERA + MAX compression, Reference SELECTION → Select Items on Sites, Toggle for “Client may see photos.”

Book a visit: Text name (required), Scheduling date DATE_TIME for Visit with Closed days Sat + Sun, Hours 08:00-16:30 1,2,3,4,5, Earliest day 1, Booking window 30, Time zone America/New_York; Reference SELECTION on Sites.

Symptom Likely cause What to do
Cannot bind formula Read-only Use a view component.
Camera missing on desktop CAMERA only Use ALL if desktop must upload.
User picker empty Users database not linked, or guests excluded Create Users Database. See guest dropdown troubleshooting.
Scheduling date never asks for a time Show date/time is DATE while Hours are set Set DATE_TIME on the field.
Booking saved on a closed day Rules were added after the user opened the form The server rejects it with the message above; ask them to reopen the form. No rule bypass exists.
Long names truncate in a Reference selection Wrap Text is off on the target Select Items screen Open that Select Items screen and turn on Layout → Wrap Text.
Relation disabled in logic Nested relation / projection Relations and the logic-picker troubleshooting page.

Shared controls: Type of Components. After submit: Form submit redirection. Field map: Notion property types. Scheduling date shipped in the 3 Oct 2026 Release. Select Items Wrap Text shipped in the 4 Oct 2026 Release.