Documentation

Get started with WebForm.dev quickly and easily.

🚀 Goal: Get a working contact form in under 2 minutes. Need customization? See the Full API Reference.

Getting Started

1. Get Your Form Key

Contact support to get your unique form key, or use the dashboard once available:

# Your form key will look like this:
your-unique-form-key

# Form endpoint will be:
https://send.webform.dev/send/your-unique-form-key
💡 Each form has a unique key that you'll use in your HTML forms.

2. Add This HTML to Your Website

Copy and paste this code. Replace YOUR_FORM_KEY with your form key:

⚠️ Recommended: Include embed.css for loading animations, success/error messages, and proper visual feedback. See the Full API Reference for details.
<!-- Recommended: Include CSS for loading states and user feedback -->
<link rel="stylesheet" href="https://send.webform.dev/css/embed.css">

<form class="webform-embed" action="https://send.webform.dev/send/YOUR_FORM_KEY" method="POST">
  <input type="text" name="name" placeholder="Your Name" required>
  <input type="email" name="email" placeholder="Your Email" required>
  <textarea name="message" placeholder="Your Message" required></textarea>
  <button type="submit">Send</button>
</form>
<script src="https://send.webform.dev/js/embed.js"></script>
That's it! The webform-embed class automatically enables enhanced submission with loading states. No JavaScript initialization needed.

3. Done! 🎉

Your form now has:

  • ✅ Loading states during submission
  • ✅ Success/error messages
  • ✅ Automatic retry on network issues
  • ✅ Works without JavaScript as fallback
🎛️ Want customization? Add data attributes to configure behavior, or see the Full API Documentation for all options, JavaScript events, and advanced features.

Test Your Form

What to Expect

  • Submit button will show "Sending..." and disable during submission
  • Success changes button to "Message sent!"
  • Errors display inline with retry option
  • Without JavaScript form redirects to thank you page

Standard HTML Form (No JavaScript Enhancement)

This works everywhere and submits normally:

<form action="https://send.webform.dev/send/YOUR_FORM_KEY" method="POST">
  <input type="text" name="name" placeholder="Your Name" required>
  <input type="email" name="email" placeholder="Your Email" required>
  <textarea name="message" placeholder="Your Message" required></textarea>
  <input name="_gotcha" type="text" style="display:none">
  <button type="submit">Send Message</button>
</form>
⚠️ Note: This version redirects to webform.dev after submission. Add class="webform-embed" and the embed.js script for enhanced inline submission.

Quick Help

Not Working?

  • Verify form action URL has your form key
  • Method must be POST
  • Include required email and message fields
  • Check browser console for errors

Want More?

Full API Documentation

Custom styling, JavaScript events, network resilience, and more