Documentation

Send your HTML form to our endpoint. We email you the data and run integrations.

1. Get your access key

Sign up, go to Dashboard → Forms, click New Form, set your target email. Copy the access key (UUID).

2. Plain HTML

<form action="https://api.oneforms.in/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>

  <!-- spam protection (leave empty) -->
  <input type="checkbox" name="botcheck" style="display:none" />

  <button type="submit">Send</button>
</form>

3. Fetch / JSON

await fetch("https://api.oneforms.in/submit", {
  method: "POST",
  headers: { "Content-Type": "application/json", "Accept": "application/json" },
  body: JSON.stringify({
    access_key: "YOUR_ACCESS_KEY",
    name: "Jane",
    email: "jane@example.com",
    message: "Hello"
  })
});

Reserved fields

NamePurpose
access_keyRequired. Your form UUID.
subjectOverride email subject.
from_nameFrom-name (paid plans).
replytoReply-To header.
redirectURL to send the user to after success.
botcheckHoneypot — must stay empty.
h-captcha-response / g-recaptcha-responseCaptcha token if enabled.

File uploads

Use enctype="multipart/form-data" and submit files. Available on Hobby and Pro plans, max 10MB per file.

Integrations

Webhooks, Slack, Discord and Telegram are configured per-form in the dashboard. They fire after the email is sent.

Rate limits

  • Per-IP: 5 requests / minute
  • Free: 250 submissions / month
  • Hobby: 10,000 / month · Pro: 50,000 / month