🖊️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.
What this is / when to use it
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.
Before you start
The property is in NotionFieldsWithReadWriteAccess (or you are collecting a value that only lives in the app, which is rare).
You know create vs update: create uses
*_FOR_CREATEtypes; update uses*_FOR_UPDATE. The builder shows one palette per screen.Validation, required, and prefill rules are decided. See the shared controls on Type of Components.
Build it
Add the input.
Bind the property.
Set required, default (
NONE/EXACT/DYNAMIC), disable editing (update only), visibility, and optional URL prefill name (create only).Set the type-specific enum in the table.
Preview empty, invalid, and filled. Publish.
Every control
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
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
Related focused pages: Address, File upload, User field, Location viewer (view), Signature.
Number STEP vs SIMPLE
SIMPLE— type a number.STEP— plus/minus stepper. Use for quantities.
Date visibility
DATE— calendar date only.TIME— time only.DATE_TIME— both. Match how the Notion property is used.
Media
CAMERA— camera only (phones).ALL— camera + library + files.Compression
MAXreduces upload size and quality.NONEkeeps the original within plan upload limits.
What users see
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.
Limits and plans
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.
Example
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.”
Fix problems
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.
Relation disabled in logic
Nested relation / projection
Relations and the logic-picker troubleshooting page.
Related
Shared controls: Type of Components. After submit: Form submit redirection. Field map: Notion property types.
Last updated