API Documentation
Everything you need to integrate ExtremeVerify into your stack.
India Only Geo-Restriction Active
ExtremeVerify strictly works for **Indian mobile numbers (+91)** only. You cannot send OTPs or messages to other countries. Please make sure that you do not add spaces or the '+' sign in the phone numbers.
Integration Guidelines
Ensure a smooth integration by following these critical security and performance practices.
Do NOT store OTP
OTP verification is handled securely by ExtremeVerify. Storing it in your own DB can cause sync errors and security risks.
Verify via API Only
Always use the /verify-otp endpoint to validate codes. Never compare them manually in your own backend logic.
Clean Phone Numbers
Send only 10-digit mobiloe numbers (e.g. 91XXXXXXXXXX). Do not send email addresses or formatted strings.
Recommended Flow
- 1. Register user & store meta in session
- 2. Call
/send-otpvia API - 3. Call
/verify-otpvia API - 4. On success, commit to database
Common Mistakes
- â Storing OTP in your own database
- â Verifying OTP manually (offline)
- â Using unstable cURL on shared hosts
- â Using
"verified"string check
PHP Pro-Tip: For Shared Hosting (like Hostinger), use file_get_contents() for more stable API calls if your cURL configuration is locked.
Endpoints
Dispatches a high-priority Verification OTP to a specified WhatsApp number.
- Team ExtremeVerify) to establish authenticity and customer trust.| Parameter | Type | Description |
|---|---|---|
apiKey Required |
String | Your unique API key. |
number Required |
String | Target phone number with country code (e.g., 91XXXXXXXXXX). No '+' or spaces. |
{
"apiKey": "ev_xxxxxxxxxxxxxxxxxxxxxxxx",
"number": "91XXXXXXXXXX"
}
Validates a user-provided OTP against the stored record for a specific number.
| Parameter | Type | Description |
|---|---|---|
number Required |
String | Target phone number (e.g., 91XXXXXXXXXX). |
otp Required |
String/Number | The 6-digit OTP provided by the user. |
{
"number": "91XXXXXXXXXX",
"otp": "123456"
}
Sends a custom message or alert to a specified WhatsApp number.
message payload!| Parameter | Type | Description |
|---|---|---|
apiKey Required |
String | Your unique API key. |
number Required |
String | Target phone number with country code. |
message Required |
String | The custom message content to deliver. |
{
"apiKey": "ev_xxxxxxxxxxxxxxxxxxxxxxxx",
"number": "91XXXXXXXXXX",
"message": "Hello from ExtremeVerify! Your order #1234 has been shipped."
}
Success Response
{
"success": true,
"message": "OTP sent successfully",
"logId": "-O83h..."
}
Error Responses
401 Unauthorized: Invalid or missing API key.
400 Bad Request: Missing number or message.
400 OTP Expired: The provided OTP is no longer valid (10-minute limit reached).
503 Service Unavailable: WhatsApp engine not connected or busy.
Daily Usage & Rate Limiting
To ensure platform stability, Sandbox accounts are limited to 50 successful OTPs/messages per day. Once this limit is reached, all subsequent API calls will fail until the daily reset.
Daily Reset Policy
Your quota automatically resets every day at 12:00 AM (Midnight). You can monitor your real-time usage on the Dashboard's "Daily Load" card.
Limit Exceeded Response (429)
When you reach your daily limit, the API will return a 429 Too Many Requests status code:
{
"success": false,
"error": "Daily limit reached",
"message": "Quota exceeded. Resets at 12:00 AM (Midnight)."
}
Bulk Campaign Dispatcher
ExtremeVerify features a robust bulk message campaign dispatcher directly from the dashboard. This allows administrators to broadcast notifications, updates, or custom alerts to multiple recipients efficiently.
Up to 50 Recipients
Broadcast messages to up to 50 phone numbers in a single campaign batch. Enter comma-separated 10-digit numbers with country codes.
5s Delay Safety Throttle
To protect your WhatsApp account from being flagged or banned, messages are sent sequentially with a mandatory 5-second interval delay.
Emergency Stop Control
Admins can instantly halt an active campaign mid-run with the 'Stop Campaign' emergency control, ensuring complete management oversight.
Campaign History & Logging
The campaign workspace provides a highly responsive 3-Day Campaign History panel. Every single broadcast, success message, fail log, and target recipient is logged inside Firebase in real-time.
- â Dynamic Log Tracking: Instantly view success/failure statistics per number.
- â Responsive Layout: Custom visual feedback tags and professional badge colors.
- â Smooth Scrollbar Integration: Easily navigate lengthy lists of numbers and histories without cluttering the screen.