Drupal Canvas Forms adds native form submission storage to Drupal Canvas, the visual page builder in Source CMS. In the Drupal Canvas editor, administrators define a submission table and embed a matching form component on the site. Drupal Canvas Forms stores each submission as a row in the table, validates the input, exports records, sends webhooks, and retains data according to the policy of the form.
Features and capabilities
Administrators define a form submission table in Drupal Canvas without manual code edits, selecting from typed fields such as text, email, file upload, and consent. From that table configuration, Drupal Canvas Forms generates a React form component that developers embed on the site through Drupal Canvas code editor. When a visitor submits the form, Drupal Canvas Forms validates the submission, checks the payload for spam, and stores the data row. Reviewers access stored submissions and export database records to Comma Separated Values CSV format templates.
Drupal Canvas Forms forwards each valid submission to an external system as a cryptographically signed webhook. The system protects the public submission endpoint with a honeypot, rate limits, and single-use challenge tokens. Add captcha verification for an extra security layer through providers such as Cloudflare Turnstile, hCaptcha, Friendly Captcha, or Google reCAPTCHA v3. To meet privacy obligations, each form carries a unique retention policy, anonymizes or deletes data on a schedule, and supports data subject requests.
Key concepts
Concept | Description |
|---|
Form table | A form table is the submission table behind a form. This table consists of typed fields, or columns, together with the form label, webhook target, and retention policy. Canvas Forms stores submissions as rows in this table. Each form table has an immutable machine name that identifies the table and keys the submissions. Renaming a form changes the label but never disconnects existing submissions. A form table defines the collected and stored data, not the visual layout of the form. |
Field | A field is one typed input in a form table. Each field declares a name, a type, and a requirement status. The type governs the validation and storage of a submitted value. |
Submission | A submission is one stored response to a form. Drupal Canvas Forms keeps a submission as a row keyed by the machine name of the form. |
Drupal Canvas Forms | Drupal Canvas Forms is the location for all form administration. Administrators open it from the Drupal Canvas Forms icon in the left toolbar of the Drupal Canvas editor. Administrators create forms, edit submission tables, review submissions, configure webhooks, and manage privacy in this interface. This interface builds the submission table, not the visual layout. No separate administration pages exist. |
Form component | A form component is the public-facing form. It is a React component that developers generate from a form table and place on the site through the Drupal Canvas code editor. The component submits to Drupal Canvas Forms through a public JSON API. |
Drupal Canvas Form workflow
The workflow from form creation to submission storage includes the following steps:
- An administrator defines a form table and fields in Drupal Canvas Forms.
- The administrator generates a form component and adds the component to a page in the Drupal Canvas code editor.
- A visitor submits the form. Drupal Canvas Forms validates the submission, checks the submission for spam, and stores it as a submission row.
- If the form has a webhook, Drupal Canvas Forms delivers the submission to the external URL. Drupal Canvas Forms signs the submission and retries delivery in the background.
- On a schedule, Drupal Canvas Forms deletes or anonymizes submissions past the form retention period.
Webhook delivery and retention run in the background instead of during the visitor request. A submission is stored and confirmed immediately while Drupal Canvas Forms delivers the webhook shortly afterward.
Permissions
Permission | Grants |
|---|
Administer Drupal Canvas Forms | Create, edit, and delete forms, including field, webhook, and retention configuration. Required to open Drupal Canvas Forms. |
View form submissions | View stored submissions and download uploaded files. |
Export form submissions | Download submissions in bulk as CSV. |
Delete form submissions | Delete individual submissions or clear all submissions for a form. |
Manage data subject requests | Search, export, and erase all submissions matching a person, for example for GDPR requests. |
Drupal Canvas Forms
Drupal Canvas Forms adds native form submission storage to Drupal Canvas, the visual page builder in Source CMS. In the Drupal Canvas editor, administrators define a submission table and embed a matching form component on the site. Drupal Canvas Forms stores each submission as a row in the table, validates the input, exports records, sends webhooks, and retains data according to the policy of the form.
Features and capabilities
Administrators define a form submission table in Drupal Canvas without manual code edits, selecting from typed fields such as text, email, file upload, and consent. From that table configuration, Drupal Canvas Forms generates a React form component that developers embed on the site through Drupal Canvas code editor. When a visitor submits the form, Drupal Canvas Forms validates the submission, checks the payload for spam, and stores the data row. Reviewers access stored submissions and export database records to Comma Separated Values CSV format templates.
Drupal Canvas Forms forwards each valid submission to an external system as a cryptographically signed webhook. The system protects the public submission endpoint with a honeypot, rate limits, and single-use challenge tokens. Add captcha verification for an extra security layer through providers such as Cloudflare Turnstile, hCaptcha, Friendly Captcha, or Google reCAPTCHA v3. To meet privacy obligations, each form carries a unique retention policy, anonymizes or deletes data on a schedule, and supports data subject requests.
Key concepts
Concept | Description |
|---|
Form table | A form table is the submission table behind a form. This table consists of typed fields, or columns, together with the form label, webhook target, and retention policy. Canvas Forms stores submissions as rows in this table. Each form table has an immutable machine name that identifies the table and keys the submissions. Renaming a form changes the label but never disconnects existing submissions. A form table defines the collected and stored data, not the visual layout of the form. |
Field | A field is one typed input in a form table. Each field declares a name, a type, and a requirement status. The type governs the validation and storage of a submitted value. |
Submission | A submission is one stored response to a form. Drupal Canvas Forms keeps a submission as a row keyed by the machine name of the form. |
Drupal Canvas Forms | Drupal Canvas Forms is the location for all form administration. Administrators open it from the Drupal Canvas Forms icon in the left toolbar of the Drupal Canvas editor. Administrators create forms, edit submission tables, review submissions, configure webhooks, and manage privacy in this interface. This interface builds the submission table, not the visual layout. No separate administration pages exist. |
Form component | A form component is the public-facing form. It is a React component that developers generate from a form table and place on the site through the Drupal Canvas code editor. The component submits to Drupal Canvas Forms through a public JSON API. |
Drupal Canvas Form workflow
The workflow from form creation to submission storage includes the following steps:
- An administrator defines a form table and fields in Drupal Canvas Forms.
- The administrator generates a form component and adds the component to a page in the Drupal Canvas code editor.
- A visitor submits the form. Drupal Canvas Forms validates the submission, checks the submission for spam, and stores it as a submission row.
- If the form has a webhook, Drupal Canvas Forms delivers the submission to the external URL. Drupal Canvas Forms signs the submission and retries delivery in the background.
- On a schedule, Drupal Canvas Forms deletes or anonymizes submissions past the form retention period.
Webhook delivery and retention run in the background instead of during the visitor request. A submission is stored and confirmed immediately while Drupal Canvas Forms delivers the webhook shortly afterward.
Permissions
Permission | Grants |
|---|
Administer Drupal Canvas Forms | Create, edit, and delete forms, including field, webhook, and retention configuration. Required to open Drupal Canvas Forms. |
View form submissions | View stored submissions and download uploaded files. |
Export form submissions | Download submissions in bulk as CSV. |
Delete form submissions | Delete individual submissions or clear all submissions for a form. |
Manage data subject requests | Search, export, and erase all submissions matching a person, for example for GDPR requests. |