Using the SOAP API

SMS messages are sent by making SOAP requests via HTTP or HTTPS to the API. You can loop through your list of mobile numbers and make HTTP/S requests to send SMS messages to them. Generally, this API should allow you to submit up to about 100 messages per second on average to our platform (or faster if required).

Clickatell offers two SOAP servers - you can use whichever is compatible with your software.

WSDL Locations:

1) Document/Literal SOAP Server (most popular)

  • WSDL: http://api.clickatell.com/soap/document_literal/webservice?wsdl
  • This server supports optional gzip compression.

2) RPC/Encoded SOAP Server

  • WSDL: http://api.clickatell.com/soap/rpc_encoded/webservice?wsdl

Tip: If you are using .Net, make sure your connection URL does not have ?wsdl at the end of the URL. That is only needed when getting the schema.

 

Some more facts about this API:

  • Supports HTTP (port 80) and HTTPS (port 443).
  • You can send to multiple handsets in one single request (up to 300 numbers) - this is useful if you are sending the same message text to all the handsets.
  • Supports persistent connections (keep-alive) and the use of multiple concurrent connections.
  • Supports sending of flash messages.
  • Supports sending of binary message content.
  • Supports sending of unicode messages.

 

Send your first message

To send your first message you will need:

  • Your API username and API password
  • API ID
  • A SOAP client

 

  1. Import one of the above listed WSDLs using your SOAP software.
  2. Use the sendmsg command.
  3. Set the api_id field. If you do not yet have an API ID, read the Account Setup section.
  4. Set the user and password field (this is your API username and API password).
  5. Set the to field to your mobile number. Format the mobile number that you want to send to in international format.
    The mobile number needs to start with the correct country code.
    There must be no spaces or other nonnumeric characters.
  6. If the mobile number starts with zero, remove the zero before typing the rest of the number. Perform the SOAP request to send your first message.
  7. Also view the send message page.
  8. Note that until you make a purchase, we will populate your messages with pre-defined content.

 

Security

For additional security you can choose to:

  • Use HTTPS for all API requests
  • Enable IP lockdown on your API connection
  • Use session ID for authentication instead of passing username and password for each request

 

Authenticating

You can authenticate your requests in one of two ways:

  1. Send your API username, API password and API ID with each request.
  2. Send a session ID with each request. A session ID can be obtained with the Authentication command.