I'm building for a client's service that allows developers to build client side forms, similar to formspree.io, etc. Basically, developers can set an action to their HTML forms which send the POST data to my service. However, I need a way to authenticate requests.
Formspree does it like: <form action="https://formspree.io/your@email.com"
method="POST">
.
But the client wants to charge per request. So I need a way to make sure that when XYZ.company puts a form on their website, only the requests THEY actually make are charged.
I'm thinking I could issue out a key, have the users server encrypt it somehow, and then generate a random link?
Ideas?