splitforms.com

Lead capture form API

Lead capture form API for any website.

POST your lead form to one endpoint and every submission is stored, spam-filtered, and emailed to your team — no backend to build. Free for up to 500 leads a month.

  • 500 free / mo
  • No backend
  • HTML or JSON
A lead capture form posting JSON to the splitforms API endpoint

No lead form backend

The endpoint is the backend — no PHP, SMTP, or server route to build to receive your leads.

Spam-filtered leads

A honeypot, time-trap, and rate limits screen bots before a lead ever reaches your dashboard.

Instant lead email

Every lead is stored and emailed to your team within seconds — free on every plan.

Quick start

Your lead capture form, ready to paste.

Drop this into any page, point the action at the endpoint, and add your access key. That's the whole integration — no server, no build step.

Get your free access key
lead-form.html
<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>

Setup

How to connect a lead capture form to the API.

No server, no SMTP setup. These are the same six steps whether you paste the HTML form, build it in React or Next.js, or POST JSON from your own code.

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.

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.

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.

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.

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.

Route leads further

On Pro ($5/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.

What the API does

What does a lead capture form API do?

A lead form only looks simple. The endpoint behind it has to receive the request, screen out spam, keep a copy, and get every lead to your team — reliably, on every submission. Need a specific lead type? See lead capture form templates for demo requests, waitlists, and lead magnets.

  • Receive an HTML form action, a JSON fetch() call, or multipart file uploads — one endpoint, one access_key
  • Filter bots with a honeypot, a form_loaded_at time-trap, per-form allowed-domains, and IP rate limiting
  • Store every lead searchable in your dashboard, with CSV, XML, and PDF exports on paid plans
  • Route each lead to your inbox on every plan, then a signed webhook or 1-click integration on Starter
A lead submission received, filtered, stored, and routed to your inbox, dashboard, and CRM

JSON API

Can you submit leads to the API as JSON?

Yes. Building the form yourself in React or Next.js, or capturing leads from a mobile app or backend job? POST a JSON body to the same endpoint instead of an HTML form — see the React form guide or the Next.js form guide.

  • POST Content-Type: application/json from a SPA, mobile app, or serverless function
  • Same endpoint and same access_key — multipart form-data is supported for file uploads
  • Keep the empty botcheck honeypot and a form_loaded_at timestamp so spam filtering still runs
Submitting a lead to the splitforms API as a JSON fetch request

Destinations

Can you send every lead to your CRM?

On Pro ($5/mo) and above, each new lead flows into your CRM or team tools through a native one-click integration or a signed webhook. Slack, Google Sheets, and Mailchimp connect from the integrations dashboard; Salesforce, HubSpot, and Pipedrive connect through a signed webhook with an HMAC-SHA256 signature.

  • Salesforce — create new leads automatically
  • HubSpot — add contacts to your pipeline
  • Slack — get instant lead notifications
  • Google Sheets — append every lead as a new row
Leads from the splitforms API flowing into Salesforce, HubSpot, Slack, and Google Sheets

How SplitForms works

From form to workflow in 3 simple steps.

Connect your form, collect every submission, and send data where it needs to go — without building backend infrastructure.

A SplitForms contact form submission launching straight to your inbox

Add your endpoint

Point your form to your unique SplitForms endpoint. That's it.

HTML form pointing at a SplitForms submit endpoint

Receive submissions

We instantly capture and organize every submission in your inbox.

Submissions inbox with searchable leads and status pills

Route anywhere

Send data to email, spreadsheets, CRMs, webhooks, and 7,000+ apps.

Generic integration tiles for email, sheets, chat, CRM, automate, and webhook

No credit card required. Set up in under 60 seconds.

Connect & automate

Connect your favorite tools and automate everything

SplitForms works with the destinations you route to and the platforms you build on — from Slack and Sheets to WordPress, Shopify, and Next.js. And with Stripe connected, your forms can take payments too.

Connect your SplitForms form to Slack, Google Sheets, Mailchimp, Zapier and more
NewTake payments on your formsDeposits, bookings, order forms — submitters check out through Stripe and the money goes straight to your Stripe account. Included on every paid plan.See plans →

Trusted by indie teams and agencies shipping forms worldwide

PETAL/COKRAFT.DELINEAR-XBUILD.DEVSTUDIO 71MERIDIANFRAME&CO

Testimonials

Loved by developers shipping at every scale.

40 quotes on record — from indie hacks to agency migrations.

FAQ

Lead capture form API questions.

View all FAQs
What is a lead capture form API?

A lead capture form API replaces the backend you would otherwise build to receive form submissions. splitforms is that hosted endpoint — https://splitforms.com/api/submit — it stores each lead, filters spam, emails your team, and can forward the data on 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. On Pro ($5/mo) and above, Google Sheets, Notion, Airtable, Slack, Discord, Telegram, WhatsApp, and Mailchimp connect with one click from the dashboard, and you can 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. Pro is $5/month for 5,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.

Simple pricing

Start free. Scale when you need more.

Choose a plan that fits your workflow — from a free form endpoint to full automations, exports, Stripe payments, and higher submission limits.

Free

$0
 

Free forever

Best for testing

For side projects and indie devs.

  • 500 submissions / mo
  • Unlimited forms
  • Email notifications included
  • Honeypot spam filtering
  • Submissions dashboard
  • MCP setup stays free
  • No credit card required

3-Year

$59/ first 3 years
was $99 · save 40% · new-user price

Pay $59. 3 years sorted.

  • 15,000 submissions / mo
  • Unlimited forms
  • Everything in Pro
  • $59 for 3 years, then $59/year
  • Long-term discount
  • Priority support included
  • Vote on the roadmap

No credit card required on Free • Cancel anytime