Lead Capture Form API — Free Endpoint for Any Website
A lead capture form API is a hosted endpoint your lead form submits to instead of a backend you build yourself. splitforms is that endpoint — POST your form to https://splitforms.com/api/submitwith a hidden access_key and it stores the lead, filters spam, and emails your team instantly. It works with a plain HTML form action or a fetch() call that sends JSON, and it's free for up to 500 leads a month.
This is the form your leads will fill out
Try it — enter a test lead and hit send.
What happens next ⚡
- 📥Submission received — stored in your searchable dashboard
- 📧Email notification — delivered to your inbox instantly
- 🛡️Spam filtered — AI classifier + honeypot, no CAPTCHA
- 🔗Webhook fired — optional: forward to Slack, Discord, Sheets
- ↩️User redirected — to your thank-you page
500 submissions/month free · No credit card
Need a different lead type instead? See lead capture form templates for demo requests, waitlists, and lead magnets.
Lead Form Code (Copy & Paste)
<form action="https://splitforms.com/api/submit" method="POST">
<input type="hidden" name="access_key" value="YOUR_KEY">
<input type="hidden" name="subject" value="New Lead from Website">
<input type="text" name="name" placeholder="Full Name" required>
<input type="email" name="email" placeholder="Work Email" required>
<input type="text" name="company" placeholder="Company">
<select name="company_size">
<option value="">Company Size</option>
<option value="1-10">1-10</option>
<option value="11-50">11-50</option>
<option value="51-200">51-200</option>
<option value="200+">200+</option>
</select>
<textarea name="message" placeholder="What do you need?" required></textarea>
<input type="checkbox" name="botcheck" style="display:none" tabindex="-1" autocomplete="off">
<button type="submit">Get My Quote</button>
</form>Submit Leads as JSON (Fetch API)
Building the form yourself in React or Next.js, or capturing leads from a mobile app or backend job? POST JSON to the same endpoint instead of submitting an HTML form. See the React form guide or the Next.js form guide for framework-specific examples.
// Submit a lead as JSON — from a SPA, mobile app, or serverless function
await fetch("https://splitforms.com/api/submit", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
access_key: "YOUR_ACCESS_KEY",
form_loaded_at: pageLoadedAt, // timestamp set when the page/form loaded
name: "Jane Doe",
email: "jane@company.com",
company: "Acme Inc.",
message: "Interested in the Pro plan",
botcheck: "" // honeypot — must stay empty
})
});How to Connect a Lead Capture Form to the API
- Step 1
Get a free access key
Sign up free and build your form in the drag-drop dashboard, or just copy the HTML below. splitforms generates the access_key automatically — no card required.
- Step 2
Add the required hidden fields
access_key identifies which form a submission belongs to. An empty botcheck honeypot and a form_loaded_at timestamp power the spam filtering — leave botcheck blank and set form_loaded_at when the page loads.
- Step 3
Point the form at the endpoint
Set the HTML form's action to https://splitforms.com/api/submit with method POST — or POST a JSON body from your own code with the same fields. Multipart is supported for file uploads.
- Step 4
Send one real test lead
Submit it and confirm it lands in the dashboard and your inbox. Email notifications to the form owner are free on every plan, including Free.
- Step 5
Control what happens next
Use subject to customize the notification email's subject line, redirect to send the visitor to a thank-you page, and replyto so you can reply straight to the lead.
- Step 6
Route leads further
On Starter ($1/mo) and above, add a signed webhook or a native integration — Google Sheets, Notion, Airtable, Slack, Discord, Telegram, WhatsApp, or Mailchimp — so leads move without anyone checking the dashboard.
Full details on rate limits, reserved field names, and the spam stack live in the spam protection docs. Compare plan limits — Free at 500/mo up to Business unlimited — on the pricing page.
Send Leads to Your CRM
On Starter ($1/mo) and above, every lead triggers a signed webhook. Forward leads to:
- Salesforce — create new leads automatically
- HubSpot — add contacts to your pipeline
- Pipedrive — create deals from form submissions
- Mailchimp — add subscribers to your list
- Slack — get instant lead notifications
- Google Sheets — append leads as rows
Mailchimp, Slack, and Google Sheets are native one-click integrations — no webhook needed. Salesforce, HubSpot, and Pipedrive connect through a signed webhook — point it directly at a receiving URL, or route it through Zapier, Make, or n8n. See how form-to-webhook delivery works, including the HMAC-SHA256 signature format, in sending form data to a webhook.
FAQ
What is a lead capture form API?
A lead capture form API is a hosted endpoint that a lead capture form POSTs to instead of a server you build and maintain yourself. splitforms is that endpoint — https://splitforms.com/api/submit — it stores the lead, filters spam, emails your team, and can forward the data to a webhook or CRM tool.
How do I connect a lead capture form to the API?
Set the form's action (or a fetch call) to https://splitforms.com/api/submit with method POST, add a hidden access_key field with your form's key, and include an empty botcheck honeypot plus a form_loaded_at timestamp field. Submissions appear in your dashboard and inbox immediately.
Can I submit leads as JSON instead of an HTML form?
Yes. POST a JSON body with Content-Type: application/json to the same endpoint — useful for single-page apps, mobile apps, or a serverless function that collects a lead before forwarding it. Multipart form data is also supported, for example when a lead attaches a file.
Can I send leads to my CRM or other tools?
Yes. Google Sheets, Notion, Airtable, Slack, Discord, Telegram, WhatsApp, and Mailchimp connect with one click from the dashboard. On Starter ($1/mo) and above you can also add a signed webhook that forwards each submission's JSON to Salesforce, HubSpot, Pipedrive, Zapier, Make, or n8n.
How much does a lead capture form API cost?
Free for up to 500 leads a month, with unlimited forms, email notifications, and spam filtering included. Starter is $1/month for 1,000 leads plus CSV/XML/PDF exports, webhooks, and an auto-responder. Pro is $5/month for 5,000 leads plus CC/BCC and priority support.
What happens after a visitor submits the lead form?
By default splitforms returns a JSON success response. Add a hidden redirect field with a URL to send the visitor to a thank-you page instead, and a subject field to control the notification email's subject line.
Is the lead capture form API rate-limited?
Yes. Each form accepts up to 6 submissions per minute per IP address, with a sustained cap of 20 per 15 minutes. Requests past that limit return HTTP 429.
What stops spam submissions from hitting the API?
An empty botcheck honeypot field, a form_loaded_at time-trap, server-side content heuristics, per-form allowed-domains with strict origin mode, and an optional reCAPTCHA v2 you can add with your own secret key.
Questions? Email hello@splitforms.com