208 apps154 countries

SMS Activation API

The common plain-text activation format, for tools that already use it. New integrations can also use the REST API.

Verification Numbers Introduction

Every call is a GET (or POST) request to https://snsverify.com/stubs/handler_api.php with your API key and an action parameter. The key comes from the API key page of your console; keep it private, it can spend your credit. Answers are short text lines such as ACCESS_NUMBER or STATUS_OK, or JSON for the list actions, exactly like other services that use this format.

Same account, same rules. Numbers bought here use the same prices, the same 20 minute window and the same automatic refund as the website. Service codes are the lower-case names you see on our site (whatsapp, telegram, google); country codes are ISO: us, gb, nl, de, af, al, dz, ao, ai, ar, am, aw, au, at, az, bs, bh, bd, bb, by, be, bz, bj, bt, bo, ba, bw, br, bn, bg, bi, kh, cm, ca, td, cl, cn, co, km, hr, cy, cz, dk, dj, dm, ec, eg, er, ee, sz, et, fj, fi, fr, ga, gm, ge, gh, gi, gr, gd, gp, gt, gn, gy, ht, hn, hk, hu, is, in, id, iq, ie, il, it, jm, jp, jo, kz, ke, kw, kg, la, lv, lb, ls, lr, lt, lu, mo, mg, mw, my, mv, ml, mt, mr, mu, mx, md, mc, mn, me, ms, ma, mz, na, np, nz, ni, ne, ng, no, om, pk, pa, py, pe, ph, pl, pt, qa, ro, rw, sn, rs, sc, sg, sk, si, so, za, es, sr, se, ch, tw, tj, tz, th, tg, tn, tr, tm, ug, ua, uy, uz, ve, vn, ye, zm, zw.
getBalance (GET) [+]

Your credit in USD.

https://snsverify.com/stubs/handler_api.php?api_key=$KEY&action=getBalance

Answer

ACCESS_BALANCE:12.50
getServicesList (GET) [+]

Service codes you can buy (JSON).

https://snsverify.com/stubs/handler_api.php?api_key=$KEY&action=getServicesList

Answer

{"status":"success","services":[{"code":"whatsapp","name":"WhatsApp"}]}
getCountries (GET) [+]

Country codes (ISO, lower case) and dial codes (JSON).

https://snsverify.com/stubs/handler_api.php?api_key=$KEY&action=getCountries

Answer

{"gb":{"name":"United Kingdom","dial":"44"}}
getPrices (GET) [+]

Prices in USD per country and service. Both filters are optional.

https://snsverify.com/stubs/handler_api.php?api_key=$KEY&action=getPrices&service=whatsapp&country=gb

Answer

{"gb":{"whatsapp":{"cost":0.94,"count":100}}}
getNumber (GET) [+]

Buys a number. Returns the activation id and the number with its country code.

https://snsverify.com/stubs/handler_api.php?api_key=$KEY&action=getNumber&service=whatsapp&country=gb

Answer

ACCESS_NUMBER:AC-7K2M9QX4PB:447700900123
getStatus (GET) [+]

STATUS_WAIT_CODE (no code yet), STATUS_OK:<code>, STATUS_WAIT_RETRY:<last code> (another code requested), STATUS_CANCEL (canceled or refunded).

https://snsverify.com/stubs/handler_api.php?api_key=$KEY&action=getStatus&id=AC-7K2M9QX4PB

Answer

STATUS_OK:482915
setStatus (GET) [+]

status=1 ready (ACCESS_READY), 3 another code (ACCESS_RETRY_GET), 6 finish (ACCESS_ACTIVATION), 8 cancel with a full refund while no code arrived (ACCESS_CANCEL).

https://snsverify.com/stubs/handler_api.php?api_key=$KEY&action=setStatus&id=AC-7K2M9QX4PB&status=3

Answer

ACCESS_RETRY_GET

Typical Flow

  1. Call getNumber with service and country. Save the activation id and give the number to the app.
  2. Call setStatus with status=1 when the app has sent the SMS (optional, it only marks the activation ready).
  3. Poll getStatus every 3 to 5 seconds until it answers STATUS_OK with the code.
  4. Need another code? setStatus status=3, then poll again until STATUS_OK shows the new code.
  5. Done: setStatus status=6. No code and you want your money back now: setStatus status=8 (only before a code arrives). Otherwise the activation refunds itself after 20 minutes.

Error Answers

BAD_KEYMissing or wrong API key.
BAD_ACTIONUnknown action.
BAD_SERVICEUnknown service code.
BAD_COUNTRYThe service is not sold in that country.
NO_BALANCENot enough credit.
NO_NUMBERSNo number available right now. Try again in a moment.
NO_ACTIVATIONUnknown activation id, or not yours.
EARLY_CANCEL_DENIEDA code has already arrived, so the activation cannot be canceled.
TOO_MANY_REQUESTSMore than 300 requests in a minute.
NO_ACTIVATIONS20 activations are already open.

Limits: 300 requests per minute per key, up to 20 open activations per account. Prices as of 2026-11-04

SMS Activation API (handler_api.php) for Verification Numbers | SNSVerify