AI app builders
Make your AI-built contact form send email
Lovable, Bolt.new, and similar tools build a great-looking form fast — but it usually has nowhere to send. One prompt wires it to PostTo instead.
Lovable contact form
Send email from your Lovable app's contact form with one prompt and one endpoint URL — no Supabase Edge Function or email provider to set up.
Bolt.new contact form
Send email from the contact form Bolt.new built with one prompt and one endpoint URL — no Supabase Edge Function or email provider to set up.
v0 contact form
Send email from the contact form v0 generated with one prompt and one endpoint URL — no Next.js API route or Vercel environment variable to set up.
Replit Agent contact form
Send email from your Replit app's contact form without Nodemailer, SMTP secrets or a new Express route. Paste one prompt into Replit Agent.
Base44 contact form
Send email from your Base44 contact form on any plan — no backend function, no Pro-plan upgrade, no database entity with nowhere to go.
Cursor contact form
Make the contact form Cursor wrote send email with one prompt to its agent — no API route, no Nodemailer or Resend key, no environment variables to manage.
Claude contact form
Make the contact form Claude or Claude Code wrote send email. One prompt, one endpoint URL — no API route, no SMTP credentials, no email provider to set up.
Windsurf contact form
Make the contact form Windsurf — now Devin Desktop — built send email with one prompt. No API route, no SMTP credentials, no email provider key to manage.
Don't see your builder?
The same prompt pattern works for any AI builder that generates a plain fetch call or HTML form.
Replace
YOUR_TOKEN
with the endpoint URL from your dashboard and paste this into its chat.
Update the contact form's submit handler to send its data to PostTo instead
of just showing a fake success state. On submit, POST the form fields as
JSON to https://postto.dev/api/v1/send/YOUR_TOKEN with a "Content-Type: application/json" and
"Accept: application/json" header. Show the existing success state if the
response is ok, and the existing error state otherwise. Add a hidden "_hp"
honeypot input that real visitors never see. Keep all other current fields,
validation, and styling unchanged.