# Formlane > Point any HTML form at Formlane: submissions are stored in the EU (Frankfurt), forwarded to your inbox and filtered for spam. No backend, no tracking. Formlane is a form backend; submissions are stored in the EU (Frankfurt). Any website can POST a form to it; submissions are stored, emailed to the form owner and spam-filtered. No server code needed. ## Endpoint POST https://smallwerk.com/formlane/api/submit - Content types: application/x-www-form-urlencoded, multipart/form-data, application/json - Required field: `access_key` (public key from the dashboard, format fl_…; safe to ship in client code) - Optional fields: `redirect` (absolute http(s) URL to send the browser to after a non-JS POST), `subject` (email subject), `email` (used as reply-to) - Honeypot: include a hidden, unchecked checkbox named `botcheck`; submissions with it set are silently dropped - CORS: allowed from any origin (owners may restrict domains in the dashboard) - Response: send `Accept: application/json` (or a JSON body) to get JSON: - success: `{"success": true, "message": "Form submitted successfully", "id": "…"}` (HTTP 200) - error: `{"success": false, "message": "…", "error": "invalid_key|inactive|origin_not_allowed|too_large|too_many_fields|empty|rate_limited|limit_reached|unavailable"}` (4xx/5xx) - without JSON accept: HTTP 303 redirect to `redirect`, the form's default redirect, or a hosted thank-you page - Limits: 64 KB per submission, 50 fields, 10 submissions per 10 minutes per visitor and form, monthly quota per plan (Free 250) - File uploads are not supported yet. ## Minimal HTML ```html
``` ## fetch() ```js await fetch("https://smallwerk.com/formlane/api/submit", { method: "POST", headers: { "Content-Type": "application/json", Accept: "application/json" }, body: JSON.stringify({ access_key: "YOUR_ACCESS_KEY", name, email, message }) }); ``` ## Guides - [Contact form for any HTML site (no backend)](https://smallwerk.com/formlane/docs/html) - [Contact form for Next.js without an API route](https://smallwerk.com/formlane/docs/nextjs) - [Contact form for Astro static sites](https://smallwerk.com/formlane/docs/astro) - [Send Framer form submissions to your inbox (data stored in the EU)](https://smallwerk.com/formlane/docs/framer) - [Webflow form to email without Webflow form limits](https://smallwerk.com/formlane/docs/webflow) - [Contact form for Lovable, Bolt and v0 apps](https://smallwerk.com/formlane/docs/lovable) ## Account Sign in at https://smallwerk.com/formlane/app (magic link, no password). Pricing: Free $0/month (250 submissions), Starter $8/month (2,500 submissions), Pro $19/month (25,000 submissions).