Forms

A backend for the forms on your static site. Submissions are stored with optional notifications.

Quick Start

Create a form from the Forms section of your dashboard. You will get a URL like https://forms.majinode.com/<id>. Use the link your form’s action, with method="POST":

<form action="https://forms.majinode.com/Xy3kQ9pLmN2a" method="POST">
    <label>Email <input type="email" name="email" required /></label>
    <label>Message <textarea name="message" required></textarea></label>
    <button type="submit">Send</button>
</form>

Your form’s submissions will now start appearing in the submissions tab.

Manual submission

Send a submission with curl

The same POST a browser makes, without the page. The answer is 303 See Other with the thank-you page in Location. This is a real submission: it appears in the submissions tab and, unless the form is quiet, it is emailed to you.
curl -i -X POST https://forms.majinode.com/<id> -d "email=you@example.com" -d "message=Testing"

Extra options

By default the visitor sees a short thank-you page from majinode. Two query parameters on the action address change that.

Send visitors to your own page

The redirect has to be on the same site as the form, so nobody can borrow the address to bounce people somewhere else. Anything else falls back to the thank-you page.
$ https://forms.majinode.com/<id>?redirect=https://mysite.com/thanks

Thank visitors in your language

lang picks the language of the thank-you page: en (the default) or pl.
$ https://forms.majinode.com/<id>?lang=pl

Notifications

Each submission can be emailed to your account address as it arrives. To keep a form quiet, untick Email me each submission when you create it or from its settings tab; submissions are kept either way.

A field named email becomes the reply-to address of the notification, so you can answer straight from your inbox.

Spam

Add a hidden field called _gotcha. People never see it, so it stays empty; simple bots fill everything in. A submission with anything in _gotcha is thanked like any other and then thrown away.

<input
    type="text"
    name="_gotcha"
    style="display:none"
    tabindex="-1"
    autocomplete="off"
/>

Limits

  • Up to 50 fields and 64 KB per submission, each value at most 10,000 characters.
  • Fields whose names start with _ are not stored.
  • File inputs are ignored.
  • Each visitor can also submit a form at most ten times in ten minutes.