SMS verification API
Everything the dashboard does, from your own code. Six JSON actions, one key, the same ringgit balance.
If you register accounts in bulk, test onboarding flows, or run a tool that needs a phone number per session, clicking through a dashboard does not scale. The DapatOTP API exposes the whole flow: countries, services with live prices and success rates, get a number, poll the status, read the code, cancel.
Errors always come back as HTTP 200 with an error key, so a simple client never has to branch on status codes. Money is in strings, service IDs are stable, and the wait window and refund logic are the same as in the dashboard: no SMS in ten minutes, the order expires and the charge is refunded — your script just sees status EXPIRED.
Rate limit is 120 requests per minute per key. Polling every 5–10 seconds per active number is plenty; we check the supplier at most once every five seconds anyway.
Why get numbers here
How it works
Email or Google. Takes under a minute, no card needed.
USDT (TRC20) is credited automatically on-chain. FPX and DuitNow QR when enabled. Minimum RM10.
Routes are ranked by success rate. The price is shown before you confirm.
The SMS appears on your screen. No SMS in 10 minutes = automatic refund.
Questions people ask
Where do I get the key?
Dashboard → Account. Rotate it there if it leaks.
Is there a webhook?
Not yet. Poll get_status every 5–10 seconds while an order is WAITING.
What does PENDING mean?
The order is being processed or checked by support after a supplier timeout. Do not request again — you will not be charged twice.
Can I integrate it like SMS-Activate?
The action names differ, but the flow is the same: get a number, poll for the code, cancel. Most clients need a few lines changed. Full reference on the API docs page.
