File upload form: 25 MB private S3 storage, signed download URLs
Formspring accepts multipart file uploads up to 25 MB per file. Files land in private S3-compatible storage and are only ever accessed via signed download URLs from the dashboard. You never expose AWS credentials in front-end code, and submitters never see public file URLs. Common uses: resume submissions, image uploads, document submissions, beta-screenshot collection.
Working code
<form action="https://formspring.io/f/abc123" method="POST" enctype="multipart/form-data">
<input name="name" required>
<input type="email" name="email" required>
<input type="file" name="resume" accept=".pdf,.docx">
<button>Submit</button>
</form>How it works
You sign up at Formspring, create a form, and copy its endpoint URL (https://formspring.io/f/abc123). Drop that URL into your <form action> attribute - that's the entire integration. Submissions go through five spam-protection layers (honeypot → hCaptcha → custom rules → Akismet → AI moderation) and arrive in your dashboard within seconds. From there, fire signed webhooks to your stack (Slack, Notion, Airtable, custom endpoint), email yourself, or process via API.
Why this beats serverless functions
A serverless contact form means: writing a function, parsing form data, validating fields, handling spam, configuring SMTP, storing submissions, dealing with timeouts, debugging cold starts, paying for invocations, and maintaining all of that. Formspring replaces it with one URL. The math is one-sided unless you have a specific reason to control every layer.
Security and privacy
Submissions are encrypted in transit and at rest. Files (if uploaded) sit in private S3-compatible storage and are only accessible via signed URLs from the dashboard. EU-only hosting (Hetzner Falkenstein/Helsinki). DPA included on every paid plan. Per-form retention rules let you auto-delete after N days for GDPR.
When to NOT use a hosted form backend
Three cases where you should build it yourself: (1) you're already running a backend and form submission is one of dozens of endpoints, (2) you need extreme low-latency processing (<10ms p99), or (3) compliance requires absolute zero data egress. For everything else - and 95% of contact forms fall outside those - Formspring is the simpler answer.