hello@siellabs.com A person answers within one business day Docs Pricing
Siel

Products

Messaging API Campaigns SMPP and wholesale Verify Soon

Platform

Analytics Routing Delivery quality Partners

Company

Pricing Developers Contact Sign in Send your first SMS free

Route trust Every route tested on real phones

Send the text.
Know it arrived.

An SMS API for verification codes, alerts and campaigns. We check every route against real phones, so a receipt that says delivered is one you can trust.

Free test credits. No card, no monthly fee, no contract.

  • REST API and SMPP 3.4
  • Public prices for every country
  • Signed delivery webhooks
A miniature city of cell towers, a data centre and phones, with delivered message bubbles flying between them

Messaging API

Send codes and alerts with one request. The parts and the price come back in the answer, the receipt by webhook.

About the API

Campaigns

Send to a whole list from one CSV, schedule it, and see who clicked. Duplicates and opted out numbers are skipped.

About campaigns

SMPP and wholesale

Bind your platform over SMPP 3.4 with TLS. The same routes, prices and reports as the API.

About SMPP

Verify Soon

Verification codes by Telegram first and SMS second, from one call. Coming soon to the console.

Ask for early access

Analytics

Know how every message did

Delivery rate, time to the handset and spend on one screen, and every message traced from the request to the receipt.

Overview
Messages18,40619,212 parts billed
Delivery rate97.8%398 not delivered
Time to handset2.6 smedian
Spend538.21 USDBalance 1,204.50
Messages per dayDelivered Undelivered Failed
17 Oct23 Oct30 Oct
Time to handsetshare of messages
0 s5 s10 s+
  • Delivery rate and time to handset
  • Spend and balance, day by day
  • A timeline for every message
  • Campaign reports with clicks
  • Delivery and speed per destination
  • Export to CSV
A test bench of six phones in docks; five show a delivered tick and one, under a magnifying glass, shows a warning

Delivery quality

Delivered should mean delivered

Some routes report a message delivered whether or not a phone ever buzzed. We test our routes with real phones and watch every receipt on live traffic, so the delivery rate you see is one you can trust.

  • Routes tested with real phones
  • Receipts watched on live traffic
  • Quality routing on trusted receipts
  • Our team alerted when a route slips

Try it here

See the price before you send

Type, or change the number, and watch the parts and the price follow. Press send and the receipt comes back the way it does in the console.

Send a messageSample prices
GSM · 1 part51 / 160

Type, or change the number, and watch the parts and the price follow.

0.0290 USDUnited Kingdom, 0.0290 per part
+44 7700 900123Draft

Your Acme code is 482913. It expires in 10 minutes.

Network
United Kingdom
Parts
GSM, 1 part
Price
0.0290 USD
Sender
Acme
Receipt
Not sent yet
Attempts
None yet
  1. Accepted and chargedPrice fixed when the API answers
  2. Sent to the networkThe operator answers with an ID
  3. Delivered to the handsetReceipt from the operator
  4. Webhook sent to your endpointmessage.delivered, signed

Press send to watch the receipt come back.

Delivered should mean
a phone buzzed.
So we test our routes
on real phones, and stop
trusting the ones that lie.

How it works

Three steps to your first delivered code

  1. Create an account

    Verify your own phone number and send to it on free test credits. No card needed.

  2. Send with one request

    Make an API key and post a message. The answer carries the parts and the price.

  3. Go live

    Register your sender and add credits by card, PayPal or bank transfer. Then send to anyone.

For developers

One request in.
The receipt comes back.

  • Plain statuses: queued, sent, delivered, undelivered, failed, with the operator's error code.
  • Signed webhooks for every receipt, retried automatically if your endpoint is down.
  • Idempotency keys, so a retry never sends or charges twice.
curl https://app.siellabs.com/v1/messages \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"to": "+447700900123", "from": "Acme",
       "body": "Your Acme code is 482913."}'
Response 201
{
  "id": "6f1c3d2a-7c1e-4e0b-9d2f-2b1f4b9a2e10",
  "status": "queued",
  "to": "+447700900123",
  "from": "Acme",
  "encoding": "gsm7",
  "segments": 1,
  "price_micros": 29000,
  "country": "GB"
}

The console

What support sees when a customer says no code came

Each message opens to its text, its parts with the operator's own IDs and receipts, the time to the handset, and the webhooks that told your system about it.

+44 7700 900318Delivered in 3.6 s

Hi Dana, your Acme order 30638 is packed and leaves our warehouse today. It should reach you on Thursday between 9:00 and 13:00. Track it any time at acme.example/t/30638, where you can also change the time.

Sender
Acme
Network
United Kingdom
Parts
GSM, 2 parts
Price
0.0580 USD
Attempts
1
  1. Accepted and chargedThrough the API, key ending 7f3a14:02:08.512
  2. Handed to the operator2 parts, each with the operator's ID14:02:08.540
  3. Part 1 deliveredDELIVRD from the operator14:02:11.902
  4. Part 2 deliveredDELIVRD from the operator14:02:12.118
  5. Webhook sent to your endpointmessage.delivered, answered 200 in 86 ms14:02:12.204
#Operator IDReceiptErrorTime to receiptPrice
14f0e9c21b7DELIVRDNone3.4 s0.0290
24f0e9c21b8DELIVRDNone3.6 s0.0290

Security

Built so a leak has nothing to find

Encrypted everywhere

Message text and secrets are encrypted in transit and at rest, and the API and SMPP connections use TLS.

Content on a need to know basis

Only staff whose role requires it can open message text, every access is recorded, and old text is erased after the retention period.

Two factor sign in

Protect your console with an authenticator app and recovery codes, see where you are signed in, and sign out other sessions.

Pricing

Pay per part, nothing else

No monthly fee, no minimum, no contract. Every destination has a public price, and changes carry a date you see ahead of time.

Most teams start here

Pay as you go

Per part from the price list

Prepaid credits, spent as you send.

  • Free test credits to start
  • A public price for every country
  • Card, PayPal or bank transfer
  • Refunds for parts never accepted
Send your first SMS free

Volume

Custom rate sheet

For a few hundred thousand messages a month and up.

  • Rates by MCC and MNC
  • Postpaid with a credit limit
  • SMPP 3.4 over TLS
  • Price changes dated ahead
Talk about volume

Partner

Your prices your brand

Run an SMS business on our platform.

  • Your console at your domain
  • Your clients, staff and routes
  • Us as your upstream
  • Partners of your own
About partners
A globe on a pedestal with glowing routes flying out to phones around it
a month, at the local price—
CountryLocal, USDInternationalNetworks

Questions

What people ask first

Something else? A person who runs the routes answers by email within one business day.

What do I need to send my first message?

An account, a sender ID and credits. Sign up, verify one of your own phone numbers as a test number, and send to it right away on the free test credits. Register a sender ID for your brand; once it is approved and you have added credits, you can send to anyone.

How is it priced?

Per message part, from a prepaid balance. No monthly fee, no minimum, no contract. Every country has a price on the public price list, and the API tells you the price of each message when it accepts it.

Which countries can I send to?

Every destination on the price list. Traffic goes over direct operator connections where we have them and over vetted wholesale partners elsewhere. The price list in the console shows each destination's recent delivery rate and time to handset.

How do you know a message was really delivered?

Operators send a receipt for each part, and we test our routes with real phones and watch receipts on live traffic. Routes whose receipts do not match what phones receive stop counting in quality routing, and our team is alerted.

Can I connect over SMPP instead of the API?

Yes. Create an SMPP login in the console and bind with SMPP 3.4 over TLS. Submits go through the same validation, pricing and routing as the API, and receipts come back as deliver_sm.

What reports and analytics do I get?

A dashboard with your delivery rate, time to handset, spend and daily volume, a log of every message with its timeline and receipts, campaign reports with clicks, and a price list with each destination's delivery rate and speed. Lists export to CSV.

Is there a console for people who do not write code?

Yes. A composer that shows the part count and the price before you send, campaigns from a pasted list or a CSV with templates and contacts, sender ID registration, API keys, webhooks and billing.

Do you send verification codes?

Yes, as ordinary messages through the API today. Verify, which sends a code by Telegram first and SMS second and checks it for you, is coming soon to the console. Write to us for early access.

Who can read message content?

Message text is encrypted in transit and at rest. Only staff whose role requires it can open it, every access is recorded, and old text is erased after the retention period.

Send a code to your own phone in five minutes

Sign up, verify your number and send to it on free test credits. Add a sender and credits when you are ready for real traffic.

Free test credits. No card, no monthly fee, no contract.