Where the YAML comes from
When you pushapply.yaml to your repository’s main branch, it becomes accessible at:
https://app.declarativeforms.com/{owner}/{repo}/apply, the API fetches that raw URL and parses the YAML. The form always reflects the current main branch — push a change, refresh the form URL, and the update is live.
How the form loads
The browser receives the parsed form definition as JSON and renders the first section. Forapply.yaml, that’s three fields:
full_name—short_textrenders a single-line text inputrole—single_selectrenders radio buttons, one per optionemail—emailrenders a text input that validates email address format before submission
How submissions work
When the user submits, the browser sends the field values to the API. The API saves a submission record and returns asubmission_id. On the final section — which is the only section in apply.yaml — the submission is marked completed and any configured connections fire.
Partial saves
For multi-section forms, the URL gets updated after each section:apply.yaml has one section, so this doesn’t apply yet — but it matters once you start building multi-section flows. See Sections for how navigation between sections works.
Ready to understand the full schema? Start with YAML Schema, then dive into the Concepts section for each piece.