Skip to main content

One post tagged with "Turnstile"

View All Tags

CloudMySite Forms API: A Formspree-Style Backend for Website Forms

· 11 min read

Every website eventually needs a form. Contact form, quote form, booking form, support form, job application form, "please tell us what went wrong but be gentle" form. They all look simple until someone asks, "Where does the submission go?"

That is when the tiny form becomes a tiny backend project wearing a fake mustache.

You need an endpoint. You need email delivery. You need storage. You need spam protection. You may need file uploads, redirects, Google Sheets, analytics, and a way to avoid waking up to 900 submissions from a bot named cheap-seo-now.

CloudMySite Forms gives you a Formspree-style form backend inside the CloudMySite dashboard. You create a form, get a ready-to-use API endpoint, paste it into your website, and start collecting submissions without building your own server.

What CloudMySite Forms Does

CloudMySite Forms helps you create and manage backend endpoints for website forms.

You can use it with:

  • CloudMySite-hosted websites
  • Bring Your Own Website (BYOW)
  • static HTML websites
  • React apps
  • Vue or Next.js frontends
  • WordPress or other site builders that allow custom form actions
  • external websites hosted somewhere else

The basic idea is simple:

  1. Create a form in the dashboard.
  2. Copy the generated form submission endpoint.
  3. Add the endpoint to your website form.
  4. Receive submissions by email.
  5. View submissions in the CloudMySite dashboard.
  6. Turn on protection and integrations as needed.

No custom PHP script. No database setup. No "I found this old form handler on the internet and I hope it is fine." The internet has enough mysteries.

The Form Endpoint

After you create a form, CloudMySite generates a unique endpoint like this:

https://api.cloudmysite.com/forms/f/YOUR_FORM_ID

Your website sends form data to that endpoint with a POST request.

Basic HTML example:

<form action="https://api.cloudmysite.com/forms/f/YOUR_FORM_ID" method="POST">
<input name="name" placeholder="Name" required />
<input type="email" name="email" placeholder="Email" required />
<textarea name="message" placeholder="Message"></textarea>
<button type="submit">Send</button>
</form>

The most important rule: every field needs a name attribute. If the field has no name, the backend may not know what to save. A nameless input is just a decorative rectangle with ambition.

Code Examples for Different Websites

The Forms dashboard provides copy-ready examples for common setups:

  • HTML
  • Fetch
  • AJAX
  • React
  • cURL
  • File Upload
  • Turnstile
  • Google Sheet Setup
  • HTML with Honeypot

Fetch example:

fetch("https://api.cloudmysite.com/forms/f/YOUR_FORM_ID", {
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
name: "John",
email: "john@example.com",
message: "Hello",
}),
});

cURL example:

curl -X POST https://api.cloudmysite.com/forms/f/YOUR_FORM_ID \
-H "Content-Type: application/json" \
-d '{"name":"John","email":"john@example.com"}'

This makes CloudMySite Forms useful for nontechnical site owners and developers. You can paste an HTML form into a page, wire it into a React component, or test it from the command line.

Dashboard: Submissions, Overview, and Activity

Once a form is active, the dashboard becomes your command center.

The form dashboard includes:

  • Overview: recent activity and submission counts
  • Code: endpoint and copy-ready examples
  • Submissions: individual entries sent through the form
  • Settings: form behavior, notifications, spam protection, uploads, and integrations
  • Form Guide: setup tips and documentation links

The overview can show activity such as:

  • total submissions
  • recent submission volume
  • last 7 days
  • last 30 days
  • basic activity charts
  • submission location information when available

The submissions view lets you open individual entries and review the submitted data. If file uploads are enabled, uploaded files can be opened or downloaded from the submission detail view.

Email Notifications

CloudMySite Forms can send each submission to your chosen recipient email.

Use this for:

  • sales inquiries
  • support requests
  • job applications
  • lead capture
  • quote requests
  • contact messages
  • event registrations

You can update the recipient email in form settings, so different forms can route to different teams.

Examples:

  • sales@example.com for demo requests
  • support@example.com for support tickets
  • hr@example.com for job applications
  • hello@example.com for general contact

This keeps form routing simple. The sales team gets sales messages. Support gets support messages. Nobody has to forward a customer complaint through four inboxes while adding "looping in" to the subject line like a small ceremonial chant.

Redirect URL After Submission

You can set a redirect URL so visitors go to a specific page after submitting.

Common redirects include:

  • thank-you page
  • confirmation page
  • booking next-step page
  • download page
  • onboarding page
  • success page

Example:

https://example.com/thank-you

Redirects are useful because they give visitors a clear next step. A form submission should not end with the user wondering whether the button worked or whether the website is quietly judging their internet connection.

Spam Protection: Honeypot

CloudMySite Forms supports Honeypot spam protection.

Honeypot protection adds a hidden field that normal visitors do not fill out. Many bots fill every field they can find, including hidden ones. When that hidden field is filled, the system can treat the request as suspicious.

Example:

<form action="https://api.cloudmysite.com/forms/f/YOUR_FORM_ID" method="POST">
<input name="name" placeholder="Name" required />
<input type="email" name="email" placeholder="Email" required />
<textarea name="message"></textarea>

<div style="position:absolute; left:-9999px;">
<label>Leave this field empty</label>
<input type="text" name="_honeypot" />
</div>

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

Honeypot is lightweight and usually invisible to real users. It is a good first line of defense for public forms.

Spam Protection: Cloudflare Turnstile

CloudMySite Forms also supports Cloudflare Turnstile for stronger bot protection.

Turnstile is useful when:

  • your form is public
  • spam volume is increasing
  • you need stronger verification
  • honeypot alone is not enough
  • the form handles important business requests

When Turnstile is enabled, the dashboard can show a Turnstile example:

<form action="https://api.cloudmysite.com/forms/f/YOUR_FORM_ID" method="POST">
<input name="name" placeholder="Name" required />
<input type="email" name="email" placeholder="Email" required />
<textarea name="message"></textarea>

<div class="cf-turnstile" data-sitekey="YOUR_SITE_KEY"></div>

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

<script src="https://challenges.cloudflare.com/turnstile/v0/api.js" async defer></script>

For built-in Turnstile, you enter the allowed domain in settings, such as:

example.com

CloudMySite also supports custom CAPTCHA options in settings, including:

  • custom reCAPTCHA
  • custom hCaptcha
  • custom Turnstile

Custom providers require your provider key. Built-in Turnstile requires a valid domain.

File Uploads

Some form plans support file uploads. This is useful for:

  • resumes
  • screenshots
  • documents
  • support attachments
  • project briefs
  • proof of purchase
  • application forms

File upload settings include:

  • allowed file types
  • maximum file size

The dashboard warns that the maximum upload size is 10 MB. You should also tell visitors what file types are allowed.

File upload endpoint pattern:

https://api.cloudmysite.com/forms/f/YOUR_FORM_ID/upload

Common setup:

  1. Upload the file to the upload endpoint.
  2. Receive file metadata.
  3. Submit the form data with the uploaded file details attached.

This keeps the form submission organized and gives you access to uploaded files inside the submission view.

Google Sheets Integration

On supported plans, CloudMySite Forms can send submissions to Google Sheets.

This is useful when:

  • your team works from spreadsheets
  • you want a shared record
  • you need quick filtering
  • you want a lightweight backup outside email
  • nontechnical team members need access to submissions

Important detail: you must use a Google Apps Script Web App URL, not the normal Google Sheet URL.

The setup flow is:

  1. Create or open a Google Sheet.
  2. Go to Extensions -> Apps Script.
  3. Add the provided doPost script.
  4. Deploy as a Web App.
  5. Set access for the link.
  6. Copy the Web App URL.
  7. Paste it into CloudMySite form settings.
  8. Submit a fresh test entry.

If you paste the regular spreadsheet URL, the integration will not work. That URL is for humans looking at rows, not APIs politely adding rows in the background.

Email Templates: Default, Custom, and AI

CloudMySite Forms lets you control the email template used for submission notifications.

Template options can include:

  • default CloudMySite template
  • custom HTML template
  • AI-generated template on supported plans

Custom templates can use placeholders such as:

{{formName}}
{{customerName}}
{{customerEmail}}
{{customerMessage}}
{{submissionDate}}

Use templates when you want submission emails to be easier to read, better branded, or formatted for the team that receives them.

Example:

  • sales leads can show budget and service interest near the top
  • support emails can highlight issue type and urgency
  • job applications can show resume attachment details
  • quote requests can show project timeline and contact information

Internal APIs for Advanced Integrations

CloudMySite Forms also includes protected API routes for trusted/internal integrations.

Examples include:

  • GET /api/forms/{formId}/config
  • POST /api/forms/{formId}/settings
  • GET /f/{formId}/submissions

These APIs can fetch configuration, update settings, and retrieve submissions. They require internal authorization tokens and are meant for trusted services, not public browser code.

Use the public form submission endpoint for website visitors. Use protected APIs only where you control the server-side environment.

Plans and Feature Levels

Features vary by plan, but the product is designed to grow from simple forms to higher-volume usage.

Plan capabilities can include:

Plan LevelTypical UseExample Capabilities
FreeSmall personal forms1 form, 100 monthly submissions, email notifications, honeypot, standard endpoint
IndieGrowing sitesMultiple forms, more monthly submissions, redirect URL, Turnstile, file uploads
ProLarger businessesMore forms, higher submission volume, custom domain options, advanced spam protection
BusinessHigh-volume teamsLarge form limits, high monthly submission volume, priority email delivery

Always check your dashboard for the current plan limits and included features.

Best Use Cases

CloudMySite Forms works well for:

  • contact forms
  • demo request forms
  • quote forms
  • support forms
  • job application forms
  • customer feedback forms
  • event registration forms
  • lead capture forms
  • consultation request forms
  • file collection forms
  • website builder forms
  • BYOW static site forms

If a visitor needs to send structured information to you, CloudMySite Forms can probably handle the backend.

Best Practices

  • Give every field a clear name.
  • Test the form before publishing.
  • Use a real recipient email.
  • Add a thank-you redirect page.
  • Keep honeypot enabled for public forms.
  • Add Turnstile when spam volume increases.
  • Use file upload restrictions instead of accepting every file type.
  • Keep max file size practical.
  • Use the Apps Script Web App URL for Google Sheets.
  • Review submissions regularly in the dashboard.
  • Use different forms for different workflows when your plan allows it.

The goal is not only to collect submissions. The goal is to collect useful submissions, route them to the right place, and avoid spending your morning deleting bot essays about cryptocurrency.

Frequently Asked Questions

Is CloudMySite Forms like Formspree?

Yes, in the sense that it gives you a hosted form backend and a submission endpoint so you do not need to build your own form server. CloudMySite Forms also connects into the CloudMySite dashboard, plans, submissions, settings, spam protection, file uploads, Google Sheets, and website workflows.

Do I need a backend server?

No. For normal use, you copy the generated endpoint and submit form data to CloudMySite Forms.

Can I use it on a non-CloudMySite website?

Yes. You can use CloudMySite Forms on BYOW websites, static HTML sites, React apps, WordPress sites, and other externally hosted websites as long as you can control the form action or submit the data with JavaScript.

Does it support Turnstile?

Yes. CloudMySite Forms supports built-in Turnstile and custom CAPTCHA options such as reCAPTCHA, hCaptcha, and custom Turnstile.

Does it support honeypot spam protection?

Yes. Honeypot protection can add a hidden field to help block many automated bot submissions.

Can users upload files?

Yes, file uploads are available on supported plans. You can configure allowed file types and maximum file size.

Can submissions go to Google Sheets?

Yes, on supported plans. You need a deployed Google Apps Script Web App URL, not a normal spreadsheet URL.

Can I view submissions in the dashboard?

Yes. The dashboard includes a submissions view where you can review entries and open uploaded files when file upload is enabled.

Final Takeaway

CloudMySite Forms turns website forms into a managed backend service. You provision a form, copy the endpoint, add it to your site, and let CloudMySite handle submissions, email notifications, dashboard storage, spam protection, uploads, redirects, and integrations.

It is the form backend you wanted before the "simple contact form" quietly became a weekend infrastructure project.