Verification Code
Request and confirm the OTP that proves you own a phone number being attached to a WABA. Two endpoints.
1. Request the code
POST /api/v25.0/{PHONE_NUMBER_ID}/request_code?code_method=SMS&language=en_US
Authorization: Bearer pk_live_<your-key>Parameters go in the query string:
| Param | Notes |
|---|---|
code_method | SMS or VOICE |
language | Language tag, e.g. en_US, hi_IN, pt_BR. Determines the language of the voice prompt / SMS text |
No request body required.
Response — 200
{ "success": true }The OTP is sent to the phone number on file. SMS typically arrives in under a minute; voice rings within ~30 seconds.
2. Verify the code
POST /api/v25.0/{PHONE_NUMBER_ID}/verify_code
Authorization: Bearer pk_live_<your-key>
Content-Type: application/jsonRequest body
{ "code": "123456" }Response — 200
{ "success": true }After verification succeeds, the phone number’s
code_verification_status (see
Phone Number Details)
flips to VERIFIED. You can then call
Register to bring the
number online.
Errors
| Body | When |
|---|---|
(#131045) Phone number verified too many times | Cool-down period — wait an hour before retrying |
(#136022) The code provided is incorrect | Wrong code. After 5 failed verifies the OTP expires |
(#136023) The code provided is expired | OTPs expire 10 minutes after request_code succeeds |
cURL
# 1) request — params in query string, no body
curl -X POST \
"https://api.splashifypro.com/api/v25.0/$PHONE_NUMBER_ID/request_code?code_method=SMS&language=en_US" \
-H "Authorization: Bearer $SPLASHIFY_API_KEY"
# 2) verify
curl -X POST \
"https://api.splashifypro.com/api/v25.0/$PHONE_NUMBER_ID/verify_code" \
-H "Authorization: Bearer $SPLASHIFY_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "code": "123456" }'