If you're familiar with HTTP and XML then using the Esendex API will be easy. We've built it using ReST principles so it should be easy to understand and similar in style to a lot of the great web service APIs you're already using. If ReST is new to you then check out this ReST introduction.
The full API reference can be found here.
Below are some quick samples to get you started. Before you start coding make sure you have your Account Reference, Username and Password to hand from your free-trial welcome email.
Tools
We generally use a couple of tools to explore web services before we start writing code against them depending on our individual preference for the command line or a GUI. ReST APIs are meant to be discoverable so using one of these tools is a good starting point
For the command line we use Curl and for each of our samples we'll give you the Curl command line so you can try it straight away.
If you prefer a GUI then the REST Client add-on for Firefox is probably our favourite for the rich information and control it gives you.
Security
We use HTTP Basic Authentication for you to send us your username and password with each request. Our API supports HTTPS (SSL over HTTP) to encrypt communication between our servers and your software.
Send a message
To send a message you need to POST an XML document that looks like the following, to https://api.esendex.com/v1.0/messagedispatcher
<messages>
<accountreference>[your account reference]</accountreference>
<message>
<to>[cell number]</to>
<body>[your message]</body>
</message>
</messages>
The curl command line is this:
curl -u username:password -H "Content-Type: application/xml" \
-d "<messages><accountreference>[your account reference]</accountreference><message><to>[cell number]</to><body>[your message]</body></message></messages>" \
-X POST https://api.esendex.com/v1.0/messagedispatcher
You'll receive a HTTP 200 response and the response XML will look something like this:
<?xml version="1.0" encoding="utf-8"?>
<messageheaders batchid="aece2a00-6e76-4182-8711-2b1f14a7fba2" xmlns="http://api.esendex.com/ns/">
<messageheader
uri="https://api.esendex.com/v0.1/messageheaders/92313718-c892-4740-9e98-8bf4d8e6ef5d"
id="92313718-c892-4740-9e98-8bf4d8e6ef5d" />
</messageheaders>
Couple of points to note in this xml response
- You can use the uri of the messageheader element to inspect the current status of the message
- Navigating to
https://api.esendex.com/v0.1/messageheaders/messagebatches/[batchid]will give you a summary of all messages sent, useful if you're sending batches of messages
Hopefully this gives you enough to get started. Our full API reference is here and if you have any questions please drop us an email support@esendex.com

The solution was integrated seamlessly and we haven't had any problems since launch over a year ago. Thank you Esendex!