docyrus-webform-design
Installation
SKILL.md
Docyrus Webform Design
Design a public webform with docyrus studio create-webform, then validate it and test that a submission lands as a record. A webform is a tenant_webform row, paired 1:1 with a webhook, that renders a public (no-login) form; each submission creates a record in the bound data source (or, if unbound, in a per-tenant webform_record table) and can fire an automation.
How a webform works (read first)
- A webform is bound to a data source at create time. Each form field's key must match a field slug on that data source — that's how a submission maps to record columns. Bind the data source first (see docyrus-data-source-design).
- The public form is addressed by the paired webhook's short id + token, not the webform UUID. After create, read back
form_url(render),form_submit_url(POST target), andembed_code(a<script>snippet). - A submission
POSTs{ "data": { …field values… } }to the submit URL → it's queued → an edge function asynchronously creates the record in the bound data source and fires any active automationwebformtrigger. So records appear a moment after submission, not synchronously.
Workflow
- Confirm app + auth, and the target data source. The form writes into one data source whose field slugs the form keys must match.
docyrus auth who --json docyrus apps list --json docyrus studio list-fields --appSlug crm --dataSourceSlug leads --json # the slugs your form fields must use