Formclick
Form API

Form API for HTML forms

Send any form to one endpoint, https://api.formclick.io/submit, and Formclick handles the rest: spam filtering, email notifications, a submission dashboard, webhooks and integrations. No server, no backend code.

In short: Formclick is a form API. Add your access key as a hidden field and set your form’s action to https://api.formclick.io/submit. Every submission is stored, emailed to you and sent on to your tools. It accepts HTML form posts, JSON and multipart data, so it works with any website, framework or app. The Free plan includes 250 submissions a month.

Quick start

  1. Create a free Formclick account and a form to get its access key.
  2. Send submissions to https://api.formclick.io/submit with the key in an access_key field.
  3. Submit once to test. The submission appears in your inbox and dashboard.
HTML form (no JavaScript)
<form action="https://api.formclick.io/submit" method="POST">
  <input type="hidden" name="access_key" value="YOUR_ACCESS_KEY">
  <input type="text" name="name" required>
  <input type="email" name="email" required>
  <textarea name="message" required></textarea>
  <button type="submit">Send</button>
</form>
JavaScript fetch (JSON)
const res = await fetch('https://api.formclick.io/submit', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json', Accept: 'application/json' },
  body: JSON.stringify({
    access_key: 'YOUR_ACCESS_KEY',
    name: 'Ada Lovelace',
    email: 'ada@example.com',
    message: 'Hello from my site',
  }),
});
const result = await res.json(); // { success: true, message: "…" }
curl
curl -X POST https://api.formclick.io/submit \
  -H "Content-Type: application/json" \
  -d '{"access_key":"YOUR_ACCESS_KEY","email":"ada@example.com","message":"Hi"}'

More working examples (contact form, file upload, no-JavaScript and fetch) are open source in the formclick/html-form-examples repository on GitHub.

Request

EndpointPOST https://api.formclick.io/submit, or POST https://api.formclick.io/submit/YOUR_ACCESS_KEY with the key in the URL
Content typesapplication/json, application/x-www-form-urlencoded (a normal HTML form) and multipart/form-data
AuthenticationNone beyond the form’s access_key. CORS is open, so browsers can call it from any site.
ResponsesJSON when you send JSON or ask for it; a hosted result page (or your redirect) for plain browser form posts.

Special fields

FieldWhat it does
access_keyRequired. Identifies your form. It can only submit; it can’t read data or change settings, so it’s safe in public HTML.
subjectOptional. Sets the notification email’s subject line.
from_nameOptional. Sets the notification email’s sender name.
redirectOptional. A URL to send the visitor to after a successful submission. On the Free plan it must be on the same website as the form; paid plans can redirect anywhere.
botcheck, _honeypotOptional spam traps. Leave them empty for humans; filled values are silently discarded.
g-recaptcha-response, cf-turnstile-responseAdded automatically by reCAPTCHA or Cloudflare Turnstile when captcha is turned on for the form.
any other nameEvery other field is saved and delivered as-is: name, email, phone, message, custom fields.

Response

Success
{
  "success": true,
  "message": "Thank you! Your message has been received."
}
Error
{
  "success": false,
  "error": "Form not found",
  "message": "Form not found"
}
StatusMeaning
200Saved. JSON clients get { success: true }; a plain browser post shows a hosted thank-you page, or follows your redirect.
400Missing or malformed access key, an empty submission, or a missing or failed captcha.
403The form is disabled, the website isn’t on the form’s allowed domains, or the monthly submission limit is reached.
404No form exists for this access key.
413The request body is larger than 100 KB (files are uploaded separately).
429Too many submissions from one visitor in a short time.

Limits and spam protection

What happens after a submission

Pricing

PlanPrice (USD)Submissions per month
Free$0250
Starter$59/year5,000
Pro$15/month or $150/year10,000
Business$39/month or $390/year20,000

Every plan has unlimited forms. See pricing for every feature.

FAQ

What is a form API?

A form API is an HTTP endpoint that receives form submissions so you don’t have to write or host backend code. You point your form (or a fetch request) at it, and the service stores the submission, emails you and sends it on to your tools.

Is the Formclick form API free?

Yes, the Free plan includes 250 submissions a month and unlimited forms, with no credit card. Paid plans add higher limits, webhooks, captcha, autoresponders and file uploads.

Does it work with React, Next.js, Vue or a static site?

Yes. The endpoint accepts a plain HTML form post, JSON from fetch or axios, and multipart form data, so it works with any framework, static site generator or mobile app.

Do I need an API key or authentication header?

No header is needed. Each form has an access key that you send as the access_key field. It can only create submissions for that form, so it is safe to include in public code.

How do I stop spam?

Every plan includes a spam filter, honeypot fields and per-visitor rate limits. Paid plans add Google reCAPTCHA, Cloudflare Turnstile and domain restriction.

Can I upload files through the API?

Yes. Add file inputs and the Formclick script uploads each file securely before the form is submitted, up to 5 MB per file on plans with file uploads.

Full reference

Keep your HTML. Let Formclick handle the rest.

Free plan, no credit card. Your first form can be live in a few minutes.

Get started free