Skip to main content
POST
otp.send

Authorizations

Authorization
string
header
required

API key: sk_live_…

Headers

Idempotency-Key
string
required

Required: this capability has an external effect.

Maximum string length: 255
Pramaan-Max-Price-Micro
string

Optional. The most this request may be priced at, in micro-USD (a whole number above 0). It replaces the capability's own price ceiling for this request, lower or higher. Sources that could cost more are left out; when none is left the answer is 400 with the lowest limit that would work.

Pattern: ^[1-9]\d{0,14}$

Body

application/json
to
string
required

Recipient phone number in E.164 format, or an email address for the email channel.

Required string length: 1 - 320
channel
enum<string>
required

Delivery channel; unsupported channels are declined. A voice or phone-call channel is always an explicit choice.

Available options:
sms,
voice,
whatsapp,
email,
flash_call,
missed_call
templateKey
string

Your configured template key; omit to use the configured default.

Required string length: 1 - 128
variables
object

Case-sensitive template variables, at most 50 bounded strings.

expiryMinutes
integer
default:15

Code lifetime in minutes, from 1 to 10080.

Required range: 1 <= x <= 10080
length
integer
default:6

Number of code digits, from 4 to 9.

Required range: 4 <= x <= 9
locale
string

Desired language or region; a source declines it when unsupported.

Required string length: 1 - 35

Response

The result

status
string
required

The code was accepted for delivery, not proof of receipt.

Allowed value: "sent"
ref
string

Reference to what this call created. Pass it as ref to otp.verify or otp.resend.