Skip to content

Forms

Forms are defined in the admin dashboard and submitted from your website. Field types include text, textarea, email, URL, number, select, checkbox and date, with required/optional settings.

await cms.forms.submit({
formSlug: 'contact',
data: { name: 'Ada', message: 'Hello' },
});

The underlying endpoint is POST /api/v1/public/forms/{slug}/submissions. It is unauthenticated, rate limited (5 requests per 60 seconds per IP), and validated on the server against the form’s own field definitions. A validation failure is a 400 with per-field issues.

The Submissions page lists submissions across all forms, with status (new, read, archived), attachments and a detail view. A form can also send a notification email to configured addresses on each submission. That needs email to be configured.