# quickforms > quickforms documentation: submit endpoint, embed, schema, validation, email, webhooks, destinations, payments, tracking, sandbox mode, forms as code, REST API and MCP. Full documentation (discoverable current pages, one document): https://docs.getquickforms.com/llms-full.txt ## Pages - [Build with quickforms](https://docs.getquickforms.com/index.md) — Everything about hosted forms, personal links, the submit endpoint, the embed widget, schemas, email, webhooks, destinations, payments, tracking, sandbox mode, spam protection, forms as code, the REST API and MCP. - [Analytics](https://docs.getquickforms.com/analytics/index.md) — Cookie-free form analytics - views, unique visitors, starts, submissions, conversion and the sources behind them. - [REST API reference](https://docs.getquickforms.com/api/index.md) — Every endpoint of the quickforms REST API, with request and response examples. - [Creating forms](https://docs.getquickforms.com/creating-forms/index.md) — Three ways to start a form - describe it to the AI form builder, start from a template, or start empty - in the dashboard, the REST API and MCP. - [Dashboard guide](https://docs.getquickforms.com/dashboard/index.md) — A short tour of the quickforms dashboard, from the overview to a single submission. - [Destinations](https://docs.getquickforms.com/destinations/index.md) — Send each submission to Slack, Discord, HubSpot, Attio, Customer.io, Google Sheets or any HTTP endpoint, with field mapping, conditions, retries and a delivery log. - [Double opt-in](https://docs.getquickforms.com/double-opt-in/index.md) — Ask people to confirm their email address before a submission's emails and webhooks are sent. - [Drafts and publishing](https://docs.getquickforms.com/drafts-and-publishing/index.md) — Keep changes to a form as a draft, test them in sandbox mode, then publish them or throw them away. - [Email and providers](https://docs.getquickforms.com/email/llms.txt) - [Embed](https://docs.getquickforms.com/embed/index.md) — Render a form from its schema with one script tag, or drop in an iframe. - [Exports](https://docs.getquickforms.com/exports/index.md) — Download a form's submissions as CSV, JSON or NDJSON, from the dashboard or the API, with filters. - [Features](https://docs.getquickforms.com/features/index.md) — Every quickforms capability in one list, each with a one-line description and a link to its page. - [File uploads](https://docs.getquickforms.com/file-uploads/index.md) — Send files with a multipart form post, or upload them straight to storage with a pre-signed URL and submit JSON. Download them through signed, expiring links. - [Forms as code](https://docs.getquickforms.com/forms-as-code/index.md) — Keep forms and their destinations in a quickforms.json file and deploy them with the CLI, a GitHub Action or a Netlify build plugin. - [Google Sheets](https://docs.getquickforms.com/google-sheets/index.md) — Add a row to a Google Sheet for every submission, using a Google Cloud service account. - [Hosted forms](https://docs.getquickforms.com/hosted-forms/index.md) — Share a link to a themed form page that quickforms hosts for you, in a classic, steps or compact layout. - [MCP setup](https://docs.getquickforms.com/mcp/index.md) — Connect Claude Code and other MCP clients to the quickforms MCP server. - [Partial submissions](https://docs.getquickforms.com/partial-submissions/index.md) — Save progress while people fill a form in, see how many finish, and find the field where the rest stop. - [Payments](https://docs.getquickforms.com/payments/index.md) — Take a Stripe payment before a submission is accepted, with your own Stripe keys and a fixed or answer-based price. - [Personal links](https://docs.getquickforms.com/personal-links/index.md) — Give each person their own link to a form, know who filled it in, stop repeat submissions and pass your own data through. - [Routing rules](https://docs.getquickforms.com/routing-rules/index.md) — Send the notification email to different addresses, and the person to a different page, based on their answers. - [Sandbox mode](https://docs.getquickforms.com/sandbox/index.md) — Validate and store submissions without sending any email or webhook. - [Schema reference](https://docs.getquickforms.com/schema/index.md) — The field list that drives validation, the embed widget, notification emails and the dashboard. - [Cloudflare edge Worker (scoped)](https://docs.getquickforms.com/self-hosting-on-cloudflare/index.md) — A scoped, not built, plan for an optional Cloudflare Worker in front of the public form endpoints. - [Spam filter](https://docs.getquickforms.com/spam-filter/index.md) — Classify every submission with TypeSafe's Jev model, add your own smart rules and hold flagged submissions for review. - [Spam protection](https://docs.getquickforms.com/spam-protection/index.md) — Keep bots out with honeypots, Cloudflare Turnstile with your own keys, Altcha, rate limiting, geo and disposable email filters and the AI spam filter. - [The submit endpoint](https://docs.getquickforms.com/submit/index.md) — POST /f/{form} accepts HTML form posts and JSON from any site. - [Tracking and attribution](https://docs.getquickforms.com/tracking/index.md) — Capture UTM tags, ad click IDs, the referrer and landing page with each submission, with a cookie-free tracking script and a server-side proxy mode. - [Validation errors](https://docs.getquickforms.com/validation/index.md) — The 422 response shape for JSON clients and HTML posts. - [Webhooks](https://docs.getquickforms.com/webhooks/index.md) — Every webhook event and payload shape, how to verify the signature with your signing secret, and how retries work. - [Zapier and n8n](https://docs.getquickforms.com/zapier-and-n8n/index.md) — Start Zaps and n8n workflows from new submissions with REST hooks, and call the API from them.