SMSKap DEVELOPERS
TRENARPTDE中文RUHIESFR
SMSKAP DEVELOPER API

Simple, Reliable and Transparent SMS Verification API.

The SMSKap Developer API provides approved accounts with real, physical SIM card numbers for WhatsApp, WhatsApp Business, and Telegram using transparent standard catalog pricing and automated refund guarantees.

API Base URLhttps://api.smskap.com/v1
01 · QUICKSTART

Complete your integration in three steps

Submit your developer application, create your live API key once approved, and start calling the API securely from your backend server.

1Apply

Submit your developer form to begin the review process.

2Wait for Approval

Get notified once your account is reviewed and approved.

3Create Live Key

Generate your live secret key and configure it on your server.

02 · AUTHENTICATION

Secure Bearer Token Authentication

Send your API key in the Authorization: Bearer <key> header on every request. Your private secret key is shown only once upon generation.

curl https://api.smskap.com/v1/account \
  -H "Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxxxxxx"
Never expose your live API key in browser-side JavaScript or public source repositories.
03 · ACCOUNT & BALANCE

Account & Balance Status

Query GET /v1/account to retrieve your available balance, currency (TRY), and assigned rate and activation limits.

GET/v1/accountApproved Live Key Required
{
  "account": { "balance": 450.00, "currency": "TRY" },
  "application": {
    "name": "Production Bot",
    "status": "approved",
    "requests_per_minute": 60,
    "daily_activation_limit": 200,
    "currency": "TRY"
  },
  "environment": "live",
  "request_id": "req_01J8SMSKAP123456789"
}
04 · CATALOG & PRICING

Standard Service & Country Catalog

Our infrastructure focuses strictly on 3 high-delivery services and 3 tier-1 global countries. Intelligent carrier routing selects physical SIM cards automatically in the background.

Supported Services

WhatsApp whatsapp
WhatsApp Business whatsapp-business
Telegram telegram

Supported Countries

Türkiye (+90) tr
United States (+1) us
United Kingdom (+44) gb
Transparent Standard Catalog Pricing

No arbitrary markups or hidden provider costs. All API requests use transparent public catalog pricing. High-volume partners can be granted custom discount percentages via the admin dashboard. GET /v1/offers returns net live prices with your discount pre-applied.

GET/v1/countriesActive Countries (TR, US, GB)
GET/v1/servicesActive Services (WhatsApp, WhatsApp Business, Telegram)
GET/v1/offersLive Prices & Availability
05 · ACTIVATION API

Number Reservation, SMS Polling & Refund Workflow

Reserve a temporary number, poll for the incoming verification code, or cancel within the cancellation window. If no SMS arrives, your balance is refunded instantly.

POST/v1/activationsReserve Number (POST /v1/activations)
curl -X POST https://api.smskap.com/v1/activations \
  -H "Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxxxxxx" \
  -H "Idempotency-Key: e9b8d2e1-4567-4d89-b123-987654321abc" \
  -H "Content-Type: application/json" \
  -d '{
    "service_key": "whatsapp",
    "country_code": "tr"
  }'
{
  "activation": {
    "id": "AKT-260827-ABC123",
    "status": "waiting_code",
    "service_key": "whatsapp",
    "service_name": "WhatsApp",
    "country_code": "tr",
    "country_name": "Türkiye",
    "number": "+905301234567",
    "code": null,
    "sale_amount": 40.50,
    "currency": "TRY",
    "expires_at": "2026-10-19T21:05:00Z",
    "cancellable_at": "2026-10-19T20:47:00Z",
    "poll_interval_seconds": 3
  },
  "request_id": "req_01J8SMSKAP123456789"
}
GET/v1/activations/{activation_id}Fetch SMS Code (GET /v1/activations/{id})
curl https://api.smskap.com/v1/activations/AKT-260827-ABC123 \
  -H "Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxxxxxx"
{
  "activation": {
    "id": "AKT-260827-ABC123",
    "status": "code_received",
    "code": "482910",
    "sale_amount": 40.50,
    "currency": "TRY"
  },
  "request_id": "req_01J8SMSKAP123456789"
}
DELETE/v1/activations/{activation_id}Cancel & Refund (DELETE /v1/activations/{id})
06 · OFFICIAL PYTHON SDK INTEGRATION

Official Python SDK Integration

Integrate in seconds using our official open-source Python SDK with automated polling and refund handling:

pip install smskap
from smskap import SMSKapClient, SMSKapError

client = SMSKapClient(api_key="sk_live_xxxxxxxxxxxxxxxxxxxxxxxx")

try:
    # 1. Numara rezerve et (WhatsApp / Türkiye)
    act = client.create_activation(service="whatsapp", country="tr")
    print(f"Tahsis edilen numara: {act['number']} (ID: {act['id']})")

    # 2. SMS kodunu otomatik dinle (120 saniyeye kadar)
    code = client.wait_for_code(activation_id=act["id"], timeout=120)
    if code:
        print(f"SMS Doğrulama Kodu: {code}")
    else:
        # Kod gelmezse iptal et; bakiye anında iade edilir
        client.cancel_activation(act["id"])
        print("Süre doldu, rezervasyon iptal edildi ve bakiye iade edildi.")

except SMSKapError as e:
    print(f"Hata [{e.code}]: {e.message}")

GitHub Repository & Source Code ➔

07 · LIMITS & SECURITY

Observability, Limits and Safety

API usage is governed by real-time safety limits configurable via the management dashboard.

Per-Minute Rate Limit

Requests per minute limit (e.g. 60 req/min). Returns HTTP 429 with Retry-After when exceeded.

Daily Activation Quota

Maximum number of activations per calendar day. Can be increased based on your business volume.

Request Tracing (request_id)

Unique identifier attached to every response for auditing and rapid support resolution.

Idempotency-Key: Required UUID header for POST /v1/activations to prevent duplicate charges during network retries.
08 · ERROR CODES

Standard Error Codes & Response Format

All API errors adhere to a standardized JSON schema. Applications should branch on error.code.

HTTPError Code (error.code)Description & Action
400invalid_payloadMissing or invalid payload (service_key or country_code outside supported catalog).
400insufficient_balanceAccount balance is insufficient. Top up balance in the user panel.
400cancel_window_expiredCancellation window expired or SMS code already delivered; cannot be cancelled.
401invalid_api_keyInvalid, missing or revoked Bearer API key.
403forbiddenDeveloper application pending approval or suspended.
404no_numbers_availableNo numbers available right now for this service and country. Please retry shortly.
404activation_not_foundThe requested activation ID does not exist.
409activation_conflictConflict detected on activation or duplicate idempotency key.
429rate_limit_exceededRate limit exceeded. Wait the number of seconds specified in the Retry-After header.
429daily_activation_limit_exceededDaily activation quota reached. Contact support to request a quota increase.
503service_temporarily_unavailableCarrier network is temporarily unavailable. Please retry shortly.