Script, iframe, or direct POST

Add Unwaited to an HTML page

Choose an auto-sizing script, a fixed-height iframe, or a custom form that submits to the API.

Plain HTML placement

Your page → embedded form or API

EXAMPLE PUBLISHED SECTION

Something new is coming.

Get an update when we're ready.

Unwaited form sits here

Email address

Join the waitlist
Illustration, not a live form. Your published Unwaited design appears inside the platform's layout.

Before you start

  • A published Unwaited page and access to your website's HTML. Use the form ID and field keys from Share or the public form definition.
  • Script and iframe embeds display the published page. The direct POST examples below are for Standard signup pages with an email field; add every other required answer in your schema.
  • A custom browser form must send a valid Turnstile token when captcha is enabled. An API key is an alternative for trusted server requests only, never browser code.

Platform guidance: Cloudflare: embed the Turnstile widget.

Set it up

  1. Publish your Unwaited page and copy its link

    Finish editing your page and publish it. Open Share, then Link and QR, and copy the hosted page address.

  2. Choose a connection below

    Use the script for automatic form sizing, or the iframe when your host allows frames but not scripts. Choose direct POST only when you want to build and maintain the form and its error handling yourself.

  3. Publish and check your implementation

    Allow the Unwaited origin in your site's frame policy and, for the loader, its script policy. Open the published page on desktop and mobile. Test a custom submission on a separate test list, including required answers and captcha failures, before using it for customers.

Choose your connection

These are examples. Replace YOUR_FORM_ID with your form's permanent ID, or copy the exact code and hosted link from Share.

1. Script: automatic sizing

Paste this where the form should appear. The loader creates and resizes an iframe.

<script src="https://unwaited.com/embed/v1.js" data-form-id="YOUR_FORM_ID" async></script>

2. Iframe: set the height yourself

Useful when scripts are restricted but frames are allowed. Adjust the height for all form screens.

<iframe src="https://unwaited.com/f/YOUR_FORM_ID/embed" title="Signup form" width="100%" height="480" style="border:0;max-width:100%" loading="lazy"></iframe>

3. Direct POST: build your own Standard form

This email-only example needs your actual slug, every required field, and a Turnstile site key valid for your website. Configure the matching site key and secret in Unwaited on a plan supporting custom captcha, then publish. The widget adds the accepted cf-turnstile-response field automatically. Keep the secret out of HTML.

If you deliberately disable captcha and publish that setting, omit the Turnstile script and widget. An ordinary HTML POST redirects to the Unwaited result page.

<script src="https://challenges.cloudflare.com/turnstile/v0/api.js" async defer></script>
<form action="https://unwaited.com/api/v1/forms/YOUR_FORM_ID/signups" method="POST">
  <label for="signup-email">Email</label>
  <input id="signup-email" name="email" type="email" autocomplete="email" required />
  <div class="cf-turnstile" data-sitekey="YOUR_CONFIGURED_SITE_KEY"></div>
  <button type="submit">Join the waitlist</button>
</form>
Server request with an API key

Set WAITLIST_API_KEY in your server environment to this page's key. A valid key bypasses captcha. Never put it in browser JavaScript, public HTML, or a client bundle. Add your own protection before exposing a server proxy.

curl -X POST https://unwaited.com/api/v1/forms/YOUR_FORM_ID/signups \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $UNWAITED_API_KEY" \
  -d '{
  "email": "[email protected]"
}'

The examples submit Standard signups. Use the API guide for form definitions, validation errors, queue tickets, Preorder orders, and bookings.

Always available: link to your hosted page

If an embed is unavailable or difficult to size, add a normal button or text link to your published Unwaited page.

https://unwaited.com/f/YOUR_FORM_ID

Questions

Can I turn captcha off for a plain HTML form?

Yes, if you deliberately disable captcha in the page's security settings and publish the change. Otherwise include the Turnstile widget or send the request from your server using the page's API key.

Which option should I start with?

Use the script or iframe unless you need your own form UI. They keep the published questions, validation, availability, and captcha handling together in the Unwaited form.

Ready to share your page?

Hosted links and embeds are included on every Unwaited plan.

Create your formAll integration guides