SMS COOL

API Documentation

Integrate SMS COOL directly into your own software using our REST API.

Sign in to see your personal API key and get live examples with it pre-filled.

Sign In

Typical flow

1. List servers → 2. List countries for a server → 3. List services for that country → 4. Rent a number using their IDs → 5. Poll for the SMS code → 6. Cancel if you didn't get an OTP in time.

Available servers

Call GET /servers for the live, up-to-date list — server numbers and availability can change. As of now: Server 1–4 are general multi-service providers (any supported app/service, any of their countries). Server 5 is Telegram VIP Server — Telegram-only, but typically faster/more reliable numbers for Telegram specifically.

Buy Temp Number

GET Check Balance
https://sms-cool.com/api/v1/balance?api_key=YOUR_KEY
{
  "status": "success",
  "balance": 15.5
}
GET List Servers
https://sms-cool.com/api/v1/servers?api_key=YOUR_KEY
{
  "status": "success",
  "servers": [
    { "server_number": 1, "name": "Server 1" },
    { "server_number": 2, "name": "Server 2" },
    { "server_number": 5, "name": "Telegram VIP Server" }
  ]
}
GET List Countries
https://sms-cool.com/api/v1/countries?api_key=YOUR_KEY&server=1
{
  "status": "success",
  "countries": [
    { "id": 923, "name": "Pakistan" }
  ]
}
GET List Services
https://sms-cool.com/api/v1/services?api_key=YOUR_KEY&server=1&country_id=923
{
  "status": "success",
  "services": [
    { "id": 426, "name": "WhatsApp", "price": 0.24 }
  ]
}
GET Rent a Number
https://sms-cool.com/api/v1/rent?api_key=YOUR_KEY&service_id=426&country_id=923
{
  "status": "success",
  "order_id": 1042,
  "phone": "923001234567",
  "price": 0.24,
  "expires_at": "2026-07-02T14:20:00+00:00"
}
GET Check SMS Status
https://sms-cool.com/api/v1/check/1042?api_key=YOUR_KEY
{
  "order_id": 1042,
  "status": "completed",
  "sms_code": "82914"
}

// status is one of: pending, completed, cancelled
GET Complete / Finish Order
https://sms-cool.com/api/v1/complete/1042?api_key=YOUR_KEY
{
  "status": "success",
  "order_id": 1042,
  "message": "Order marked complete"
}

// Call this once you've received and used the code — releases the
// number on the provider's side. Safe to call even if already completed.
GET Resend / Request Another Code
https://sms-cool.com/api/v1/resend/1042?api_key=YOUR_KEY
{
  "status": "success",
  "order_id": 1042,
  "message": "Another SMS requested. Poll /check to see it arrive."
}
GET Cancel Number
https://sms-cool.com/api/v1/cancel/1042?api_key=YOUR_KEY
{
  "status": "success",
  "order_id": 1042,
  "message": "Order cancelled and funds refunded"
}

Temp Mail

GET List Domains / Services
https://sms-cool.com/api/v1/email/services?api_key=YOUR_KEY&server=1&domain=gmail.com
{
  "status": "200",
  "server": 1,
  "domain": "gmail.com",
  "services": [
    { "service_code": "tg", "service_name": "Telegram", "price": 0.15 }
  ]
}
GET Buy Email
https://sms-cool.com/api/v1/email/buy?api_key=YOUR_KEY&server=1&service_id=tg&domain=gmail.com
{
  "status": "200",
  "email_id": "abc123",
  "email": "randomuser@gmail.com",
  "price": 0.15,
  "balance": 14.85
}
GET Get Email Code
https://sms-cool.com/api/v1/email/code?api_key=YOUR_KEY&email_id=abc123
{
  "status": "200",
  "messages": [
    { "email": "randomuser@gmail.com", "code": "OTP: 482910" }
  ]
}

// status 202 = still waiting, 300 = cancelled
GET Cancel Email
https://sms-cool.com/api/v1/email/cancel?api_key=YOUR_KEY&email_id=abc123
{
  "status": "200",
  "message": "Cancelled and refunded",
  "refunded": 0.15,
  "balance": 15.0
}
GET Email History
https://sms-cool.com/api/v1/email/history?api_key=YOUR_KEY&page=1
{
  "status": "200",
  "total": 12,
  "page": 1,
  "history": [ { "email_address": "...", "status": "received" } ]
}

Rentals

GET List Countries
https://sms-cool.com/api/v1/rental/countries?api_key=YOUR_KEY&provider=1
{
  "status": "200",
  "provider": "smsbus",
  "countries": [
    { "country_code": "CA", "country_name": "Canada" }
  ]
}
GET List Pricing
https://sms-cool.com/api/v1/rental/pricing?api_key=YOUR_KEY&provider=1&country_code=ca
{
  "status": "200",
  "pricing": [
    { "id": 7, "duration_hours": 720, "custom_price": 4.5 }
  ]
}
GET Rent a Number
https://sms-cool.com/api/v1/rental/buy?api_key=YOUR_KEY&provider=1&country_code=ca&duration_hours=720
{
  "status": "200",
  "id": "55",
  "phone_number": "15551234567",
  "price_paid": 4.5,
  "expiry_time": "2026-08-02 14:20:00",
  "balance": 10.5
}
GET My Rentals
https://sms-cool.com/api/v1/rental/my-rentals?api_key=YOUR_KEY
{
  "status": "200",
  "total": 2,
  "rentals": [ { "id": "55", "phone_number": "...", "status": "active" } ]
}
GET Get Rental SMS
https://sms-cool.com/api/v1/rental/sms?api_key=YOUR_KEY&order_id=ORDER_ID
{
  "status": "200",
  "messages": [ { "content": "Your code is 482910" } ]
}
GET Renew Rental
https://sms-cool.com/api/v1/rental/renew?api_key=YOUR_KEY&rental_id=55&duration_hours=720
{
  "status": "200",
  "message": "Number renewed successfully!",
  "new_expiry": "2026-09-02T14:20:00+00:00",
  "balance": 6.0
}
GET Cancel Rental
https://sms-cool.com/api/v1/rental/cancel?api_key=YOUR_KEY&rental_id=55
{
  "status": "200",
  "message": "Rental cancelled and refund applied!",
  "refunded": 4.5,
  "balance": 15.0
}

// Server 1 (SMS-Bus): must cancel within 20 minutes of purchase.
// Server 2 (Quackr): must cancel within 2 hours of purchase.
// Both providers: cancellation is blocked once an SMS has been received.

Per-Service Rentals

GET List Services & Pricing
https://sms-cool.com/api/v1/per-service/services?api_key=YOUR_KEY&country_code=US
{
  "status": "200",
  "country_code": "US",
  "services": [
    { "id": 3, "service_code": "wa", "service_name": "WhatsApp", "duration_preset": "oneMonth", "duration_hours": 720, "custom_price": 5.4 }
  ]
}

// Durations are always one of: oneWeek, oneMonth, sixMonths, twelveMonths
// — no shorter options exist for per-service rentals.
GET Rent a Dedicated Number
https://sms-cool.com/api/v1/per-service/buy?api_key=YOUR_KEY&service_code=wa&country_code=US&duration_preset=oneMonth
{
  "status": "200",
  "rental_id": 12,
  "phone_number": "12025551234",
  "service_name": "WhatsApp",
  "price_paid": 5.4,
  "expiry_time": "2026-08-05 20:00:00",
  "balance": 9.6
}
GET My Per-Service Rentals
https://sms-cool.com/api/v1/per-service/my-rentals?api_key=YOUR_KEY
{
  "status": "200",
  "total": 1,
  "rentals": [ { "rental_id": 12, "phone_number": "...", "service_name": "WhatsApp", "status": "active" } ]
}
GET Get SMS
https://sms-cool.com/api/v1/per-service/sms?api_key=YOUR_KEY&rental_id=12
{
  "status": "200",
  "messages": [ { "sender": "WhatsApp", "content": "Your code is 123-456", "received_at": "2026-07-05 20:10:00" } ]
}
GET Renew
https://sms-cool.com/api/v1/per-service/renew?api_key=YOUR_KEY&rental_id=12&duration_preset=oneMonth
{
  "status": "200",
  "message": "Number renewed successfully!",
  "new_expiry": "2026-09-05T20:00:00+00:00",
  "balance": 4.2
}

// No cancel endpoint exists for per-service rentals — this product
// has no cancellation option, matching Quackr's own API.