Verify
Phone & email OTP across SMS, voice, WhatsApp and email — you never store a code or run a timer. We generate, deliver, rate-limit and lock.
POST /verify/start POST /verify/check → approvedVerify reference
Voice, Messaging, Verify, Lookup and Numbers behind one developer API. One key, every channel, pay only for what you send. Ship in minutes — not a procurement cycle.
Composable building blocks for communications. Call them à la carte or wire them together — same key, same base URL, same predictable JSON.
Phone & email OTP across SMS, voice, WhatsApp and email — you never store a code or run a timer. We generate, deliver, rate-limit and lock.
POST /verify/start POST /verify/check → approvedVerify reference
Validate & normalize any number to E.164, with country, carrier-style line type and national format. Clean your list before you spend a cent on delivery.
GET /lookup?number=+6591234567 → valid · line_type · countryLookup reference
Programmable calls, OTP-over-voice and call control on B'Yond's own switch (Kamailio + FreeSWITCH). Wired now — the data plane returns channel_unavailable until launch.
POST /verify/start { "channel": "voice" }See ByondVoice
SMS & WhatsApp programmatic messaging. WhatsApp delivery is live today; A2P SMS sending lands with byondsms.com — one API, many senders.
POST /verify/start { "channel": "whatsapp" }ByondSMS
Provision local, national & toll-free numbers in 100+ countries as sender IDs and inbound endpoints — programmatically, via the same key.
GET /numbers/available POST /numbers/buy → soonNumbers on ByondVoice
Mint scoped API keys in the console. The secret is shown once, then stored only as a hash — rotate or revoke any time.
Open the consoleVerify, Lookup, Voice, Messaging and Numbers under a single base URL and a single key. Stop stitching four vendors together.
Keys are prefix.secret; the secret is shown once and stored only as a hash. Scope them, rotate them, revoke them.
Flip channel from sms to voice, whatsapp or email — same request shape, graceful fallback when a channel isn't ready yet.
No seats, no minimums, no annual lock-in. Pay per verification and per lookup, metered to the request. Scale down as easily as up.
Pay only for successful calls to the API. No platform fee to start, no commitment. The figures below are placeholders — final per-unit pricing is being set.
Per OTP sent, any channel. Final pricing TBD
Per number validated & normalized. Final pricing TBD
Per-message & per-minute rates by destination. Rolling out
// Figures shown are illustrative placeholders set by the team and are not a price quote. Live per-unit pricing will be published here.
Mint a key in the console, send the auth header on every data-plane call, and you're live. Email and WhatsApp work today; SMS & voice respond channel_unavailable while they finish wiring up.
# confirm the 6-digit code curl -X POST $BASE/verify/check \ -H "X-API-Key: $BYONDAPI_KEY" \ -d '{ "verification_id": "vrf_3kZ9…1bQ", "code": "084213" }' # → { "status": "approved" } # other states: incorrect · expired · locked
# validate & normalize a number curl "$BASE/lookup?number=+6591234567&country=SG" \ -H "X-API-Key: $BYONDAPI_KEY" { "number_e164": "+6591234567", "valid": true, "country": "Singapore", "line_type": "mobile", "source": "offline" }
# mint a scoped key (session-authed) curl -X POST $BASE/api-keys \ -H "Authorization: Bearer $JWT" \ -d '{ "name": "prod-backend" }' { "key_prefix": "pk_live_8fa2", "key": "pk_live_8fa2.s3cr3t…" // shown once }
Sign in to the console, mint a scoped key, and POST to /verify/start. Email and WhatsApp are live now; the rest of the platform is lighting up channel by channel.