SMS platform for businesses and developers

Reach every customer by SMS. From a dashboard or one API call.

Send campaigns to your contact lists, or send messages from your own app with the TwistSMS REST API. Test keys, delivery logs and webhooks are built in.

Prepaid SMS packs. No subscription.

POST /developer/api/send
curl https://twistsms.izeesoft.com/developer/api/send \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"to": "+23566000000",
       "message": "Your code is 482913"}'
202 Accepted
{ "status": "pending", "credits_used": 1 }
9:41●●●

TwistSMS

now

Hi Amina, your appointment is confirmed for tomorrow at 10:00. Reply STOP to opt out.

Delivered

REST API with JSON

Separate test and live keys

Webhooks for delivery events

English, French and Arabic

Platform

Everything you need to message your customers

Use the dashboard for campaigns, or the API to send from your own product. Both draw on the same SMS credits.

Campaigns

Write a message once, send it to a whole contact list, and follow how each one went.

Contact lists

Keep customers in lists you can reuse across campaigns, and import contacts in bulk.

Developer API

Send SMS and read your messages and contact lists with a REST API secured by bearer keys.

Test and live modes

Build against test keys without sending real messages, then switch an app to live.

Webhooks and logs

Receive delivery and incoming-message events, and inspect every API request your app makes.

Prepaid SMS packs

Buy credits in packs and pay securely by card. Each SMS uses one credit.

How it works

Send your first SMS in minutes

  1. 1

    Create your account

    Sign up with your email address and confirm it.

  2. 2

    Buy a pack of credits

    Choose the pack that fits how many messages you send.

  3. 3

    Send from the dashboard or the API

    Start a campaign, or create an app and send with its API key.

For developers

One request to send an SMS

Authenticate with a bearer key, post a phone number and a message, and get JSON back.

  • Test and live keys for every app
  • Webhooks for delivery and incoming messages
  • Request logs to debug your integration
send_sms
require "net/http"
require "json"

uri = URI("https://twistsms.izeesoft.com/developer/send_sms")
request = Net::HTTP::Post.new(uri)
request["Authorization"] = "Bearer YOUR_API_KEY"
request["Content-Type"] = "application/json"
request.body = {
  to: "+23512345678",
  message: "Hello World!"
}.to_json

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
  http.request(request)
end

puts response.body

Contact information

Contact us

We are here to help. Contact us for any questions or support requests.

Address
N'Djamena, Chad
Business hours
Monday - Friday: 8:00 AM - 5:00 PMWe usually reply within one business day.

Help with your integration

Our team can help you set up campaigns or connect your app to the API.

Send us a message

We will get back to you as soon as possible

We will get back to you as soon as possible

Your data is protected

Ready to reach your customers?

Create an account, buy a pack and send your first message today.