Everything you need in the request
Control the details without extra setup.
- number: 10 digit Indian mobile number
- purpose: 3–40 characters shown in the message
- ttl: 5–120 minutes validity
- otp (optional): your own 3–40 digit code
- otp_length (optional): length of the code we generate, 3–40
Secure verification built in
OTPs are stored AES-256 encrypted on our servers and checked in constant time. Each code works once, allows five attempts and expires on your TTL, so you don't need to build any of that yourself.
Works with any stack
Plain JSON over HTTPS with a Bearer API key. Use cURL, Node.js, Python, PHP, Go, Java or anything that can make an HTTP request. A machine-readable OpenAPI spec is available for code generators and AI agents.
Transparent pricing
Pay per OTP from your wallet. Your rate depends on your largest single deposit, and failed SMS are refunded automatically.
Frequently asked questions
What does the API return?+
A JSON object with success, otp_id, expiry time, cost and your remaining balance. The OTP itself is never returned.
Can I supply my own OTP?+
Yes, send otp as a 3–40 digit string. If omitted we generate a secure random code of the length you choose.
Is there an OpenAPI spec?+
Yes, at /openapi.json, along with /llms.txt for AI assistants.
Send your first OTP today
Create an account in under a minute. No DLT registration, no KYC, no subscription.
Create free account