Activations
Per-SMS verifications — the lifecycle of a single one-time code from request to billing.
What is an activation?
An activation is a short-lived rental of a phone number for one SMS-OTP. You request it, the platform reserves a number, you read the inbound code, and the activation closes — either successfully (billed) or as expired (free).
Use activations when you only need a single code (signup, password reset, KYC check). For multiple SMS over a longer window see Rentals.
Lifecycle
waiting ─► sms_received ─► finished (you confirm; billed)
│ └──► refunded (no code; free)
└─► expired (timeout; free)
waiting— number reserved, no SMS yet.sms_received— at least one inbound SMS captured.finished— you called the finish endpoint; charged.expired— duration elapsed with no SMS; not charged.refunded— you cancelled before confirming; not charged.
Create
curl -X POST https://api.eveses.com/v1/activations \
-H "Authorization: Bearer $EVESES_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"country": "ua",
"service": "telegram",
"duration_minutes": 15,
"max_price_cents": 12
}'
| Field | Required | Notes |
|---|---|---|
country |
yes | ISO-2 country code |
service |
yes | Slug from the service catalogue or any |
duration_minutes |
no | 5 to 60. Default 20 |
max_price_cents |
no | Widens the failover provider pool to anything ≤ this cap |
Poll
curl https://api.eveses.com/v1/activations/9a1f2c3d-4e5b-6a7c-8d9e-0f1a2b3c4d5e \
-H "Authorization: Bearer $EVESES_API_KEY"
Polling at 1.5–2 second intervals is fine; sub-second polling is rate-limited. Webhooks are strongly recommended in production.
Finish
Confirms the activation and triggers the charge. Idempotent — calling twice is safe.
curl -X POST https://api.eveses.com/v1/activations/9a1f2c3d-4e5b-6a7c-8d9e-0f1a2b3c4d5e/finish \
-H "Authorization: Bearer $EVESES_API_KEY"
Cancel
Cancels before any SMS is delivered. Returns a 409 if an SMS has already arrived (call finish instead).
curl -X POST https://api.eveses.com/v1/activations/9a1f2c3d-4e5b-6a7c-8d9e-0f1a2b3c4d5e/cancel \
-H "Authorization: Bearer $EVESES_API_KEY"