Sent Api Sent.

Self hosted form submit API - by Chilly Orange

Make forms on HTML web sites usable!

Do you have forms on static HTML web sites but don't want to worry about writing code to handle your forms? Meet Sent! Your self hosted form submit API, which will take care of all the nitty gritty for you. Just submit the form, and sit back!

Install once, and submit unlimited forms from web sites anywhere on the internet!

<form action="//yourdomain/sent/api/[email protected]" method="post">
    <input type="text" name="name">
    <input type="email" name="email">
    <textarea name="message"></textarea>
    <input type="submit" value="Send">
<form action="//yourdomain/sent/api/[email protected]" method="post">
    <input type="hidden" name="_subject" value="">
    <input type="hidden" name="_replyto" value="">
    <input type="hidden" name="_after" value="">
    <input type="hidden" name="_confirmation" value="">
    <input type="text" name="name">
    <input type="email" name="email">
    <textarea name="message"></textarea>
    <input type="submit" value="Send">
<form action="//yourdomain/sent/api/[email protected]" method="post">
    <input type="hidden" name="_valid[name]" value="">
    <input type="hidden" name="_valid[email]" value="">
    <input type="hidden" name="_valid[message]" value="">
    <input type="text" name="name">
    <input type="email" name="email">
    <textarea name="message"></textarea>
    <input type="submit" value="Send">
<form enctype="multipart/form-data" action="//yourdomain/sent/api/[email protected]" method="post">
    <input type="text" name="name">
    <input type="email" name="email">
    <textarea name="message"></textarea>
    <input type="file" name="file">
    <input type="submit" value="Send">

Self hosted

Self hosted

Buy once, own forever. Runs on any web server with PHP and MySQL. One API will work with unlimited web sites and forms. Sky's the limit!



Use your email address OR a unique identifier to hide your email address. Setup SPAM detection words or phrases to filter out automated spam.


Easy setup

Sent comes with a ton of features yet is very easy to setup. It comes bundled with an installation script, allowing for a quick and painless installation!

This is how it works:

Honestly, it doesn't get much easier this this!

1. Install Sent API on your server

Upload the API files and use the installation script to install the API (less then a minute).

2. Setup your HTML form and point it to your API

Copy/paste your API url and set the form's action="" attribute to point to the API url:

<form action="//yourdomain/sent/api/[email protected]">

The last part of the API url should contain either the email address to which the data should be send or the ID string if you've chosen to hide your email address.

3. Submit the form once and confirm your email address

After submitting the form for the first time, Sent will email you a confirmation link which you'll need to click to confirm your email address. This needs to be done only once.

4. Let the data flow!

Sit back and watch the data roll in!

All Sent API Features

For those looking for more advanced usage; we've got you covered!

Advanced fields

Sent allows you set several hidden input fields to gain more control over the API:

  • <input type="hidden" name="_subject">

    Allows you to specify a custom subject for the email. If not used, the API's default subject will be used

  • <input type="hidden" name="_replyto">

    Allows you to specify a custom reply_to field

  • <input type="hidden" name="_after">

    Allows you to specify where to send the user after successfully sending the data by email

  • <input type="text" name="_honey" value="" style="display:none">

    Allows you to a "honey pot" field which functions as an additional spam filter (Sent will identify submissions as spam when this field contains anything other then an empty string)

  • <input type="hidden" name="_confirmation">

    Allows you to set a custom confirmation message shown to the user after successfully submitting the form.

Data validation

Sent allows you to specify validation rules for one or more fields as well. Use the following syntax for specifying validation rules:

<input type="hidden" name="_valid[email]" value="required|valid_email">

Below you'll see some samples of validation rules (a complete list of all the available rules is included in the documentation):

  • required: a value must be entered
  • matches[field_name]: value must match that of the specified field
  • min_length[10]: value must be at least 10 characters long
  • max_length[10]: value must be less then 10 characters long
  • valid_email: value must be a valid email address
  • alpha_numeric: value can only contain alpha numeric characters
File uploads

Want to allow visitors to upload files with their forms? We've got you covered! Simply add the following field to your form and you're all set:

<input type="file" name="file">

Sent API will automatically add the uploaded file as an attachment to the email it send out.

More API features

Admin panel
Keep track of form submissions, email addresses and attachments using the handy API admin panel.

Public or Private API
Determines wether or not new email addresses will need to be authorised by the administrator. If set to public, everybody can make use of the API.

Email Verification
New email addresses will require verification by the owner of the email address. When a form is submitted for the first time, the owner of the email address will receive an email with a confirmation link, the email address will only be ready to receive API emails once the link is clicked.

HTML & Text Emails
The API can send either regular text OR HTML emails. When using HTML emails, a template system is used allowing you to easily create custom HTML templates.

SPAM words/phrases
Setup a custom spam filter by defining SPAM words and phrases. Submitted data containing these words or phrases will be considered SPAM.

Email address or email ID?

The Sent API lets you choose between using an email address, or an unique email ID. When using a regular email address, your form's "action" attribute will look something like this: action="//yourdomain/sent/api/[email protected]". It goes without saying that having your email address embedded in HTML code, will make it very easy for bots searching the internet for email addresses to find and grab yours. This could result in a big increase in spam messages.

Sent has an alternative to using your real email address. You register your email address with the API and get a unique ID in return. You replace the email address in your form's "action" attribute with this ID making it impossible for bots to extract your email address: action="//yourdomain/sent/api/xZu6k1IyB1a1TcRvQZhQ".

Both methods can be used interchangeable, and the Sent API will automatically detect wether you're using an email address or valid email ID.

Spam protection?

We all know that after creating a form on a web site, it's usually only a matter of time until spam bots have located your form and start abusing it.

To combat excessive bot spam, Sent allows you to define a list of words and/or phrases which form data is not allowed to contain. For example, you have included the words "viagra" and "hair loss" in this list. Whenever a spam bot fills out your form and uses any of these phrases, the data is considered invalid and the Sent API will not process this data and not send out an email.

In addition to using word filtering, Sent also allows you to define a so called "honey pot" field. This is a hidden text input which will be filled in by spam bots (as spam bots usually place values in all inputs within a form). If the Sent API finds a value in this field, the data is considered invalid and will end up not being processed.

You might have some questions....

We've got some answers!

There are no limits. You host the API yourself, and you're free to setup as many sites and forms to use with the API as you please.

The Sent API can send either regular text emails or HTML emails; this can be configured through the configuration file. For HTML emails, the API uses a template system, allowing you to create custom email templates.

For the time being, we have hosted a free version of the API on this site which can be used by anyone. We can not make any guarantees regarding the availability of this free API though.

Yes. The Sent API comes with an admin panel on which you can see all submissions and which submissions have been marked as spam.

You're free to use both. However, when using your regular email address, it can easily be scraped from your HTML and you're at risk of increased amount of spam arriving in your inbox. When using an email ID, you're actual email address is hidden and can't be scraped by bots.


We have a weak spot for static HTML sites and truly believe they often are the better choice compared to CMS sites. That said, dealing with forms on those static sites is often a pain, and with Sent we're hoping to make life a bit easier.

Sent is built and maintained by Chilly Orange.

Contact us

Sent API - by Chilly Orange