sms.tcsms.tc

API Dokümantasyonu

sms.tc üzerinde numara satın alma ve SMS doğrulamayı otomatikleştirin. İki arayüz: modern bir REST API ve birebir SMS-Activate uyumlu bir uç nokta — mevcut SMS-Activate yazılımınızı kod değiştirmeden sms.tc'ye yönlendirin.

Genel bakış

sms.tc çoklu sağlayıcı bir toplayıcıdır: tek bir API ile birden çok sağlayıcının numaralarına, bizim fiyatlandırmamızla erişirsiniz. Altyapınıza uyan arayüzü kullanabilirsiniz.

REST API

HTTP üzerinden JSON. Yeni entegrasyonlar için önerilir.

https://sms.tc/api/v1
SMS-Activate

SMS-Activate istemcileriyle uyumlu düz-metin protokol.

https://sms.tc/stubs/handler_api.php

API anahtarı al

  1. 1Giriş yapıp Profil → API sayfasını açın.
  2. 2Anahtar oluşturun. Yalnızca bir kez gösterilir — kopyalayıp güvenle saklayın.
  3. 3Yeniden oluşturma eski anahtarı iptal eder ve yenisini e-postayla gönderir. İsteğe bağlı olarak bir anahtarı belirli IP adresleriyle sınırlayıp son kullanma tarihi verebilirsiniz.
API anahtarını al

Kimlik doğrulama

Her istek API anahtarınızı içermelidir. REST API anahtarı bir başlıktan, SMS-Activate uç noktası ise api_key sorgu parametresinden okur.

REST

Authorization: Bearer smstc_live_xxxX-Api-Key: smstc_live_xxx

SMS-Activate

?api_key=smstc_live_xxx

Temel kavramlar

Kanonik kodlar

Ülkeler SMS-Activate sayısal ID'lerini (0=Rusya, 1=Ukrayna…), servisler kısa kodları (tg, wa, ig…) kullanır. Bunları catalog / getCountries / getServicesList uçlarından öğrenebilirsiniz.

Para birimi

Tüm fiyat ve bakiyeler USD (ISO 840) cinsindendir.

Bakiye

Satın almalar sms.tc bakiyenizden düşülür. Başarısız veya süresi dolan aktivasyonlar otomatik iade edilir.

SMS gelme oranı (rate)

Teklif yanıtları rate içerebilir: kendi sonuçlanmış aktivasyonlarımızın SMS alma oranı (%, ya da null). Sağlayıcı + servis + ülke bazında hesaplanır; en az 10 sonuçlanmış aktivasyonda gösterilir ve günde bir güncellenir. Sağlayıcı bazlı döküm için /activations/offers/providers kullanın.

REST API

Temel URL https://sms.tc/api/v1. Bearer / X-Api-Key başlığıyla kimlik doğrulanır. Yanıtlar JSON'dur.

GET/activations/offersList available numbers (service → country → price/count/rate).
GET/activations/offers/providersPer-provider offers (provider, operator, price, stock, SMS success rate). Requires service + country.
POST/activationsBuy a number. Body: { service, country, operator? }.
GET/activations/{id}Get activation status + received SMS code.
GET/emailsList email activations.
POST/emailsBuy an email activation. Body: { site, domain }.
POST/emails/batchBuy email activations in bulk (count 1–10).
GET/emails/{id}Check an email activation.
DELETE/emails/{id}Cancel an email activation.
POST/emails/{id}/reorderReorder an email activation.
GET/emails/domainsList available email domains.
GET/catalog/countriesCanonical country list (SMS-Activate ids).
GET/catalog/servicesCanonical service list (short codes).
GET/catalog/pricesPrices by country/service, incl. SMS success rate (rate).
GET/rent/offersRentable services for a country + duration.
POST/rentRent a number. Body: { service, country, duration }.
GET/rent/{id}Get a rent order + its SMS.
POST/rent/{id}/prolongExtend a rent. Body: { duration }.
Örnek · cURL
# 1) Müsait numaraları listele
curl https://sms.tc/api/v1/activations/offers \
  -H "Authorization: Bearer smstc_live_xxx"

# 2) Numara satın al (Telegram, ülke 6)
curl -X POST https://sms.tc/api/v1/activations \
  -H "Authorization: Bearer smstc_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{"service":"tg","country":6}'

# 3) Kodu kontrol et
curl https://sms.tc/api/v1/activations/123456 \
  -H "X-Api-Key: smstc_live_xxx"

SMS-Activate uyumlu API

/stubs/handler_api.php üzerindeki tek uç nokta, action sorgu parametresine göre dallanır — SMS-Activate protokolünü birebir taklit eder, mevcut partner yazılımları değişmeden çalışır. Yanıtlar düz metindir (V2 / liste aksiyonlarında JSON).

actionYanıt
getBalanceACCESS_BALANCE:12.50
getNumberACCESS_NUMBER:<id>:<phone>
getNumberV2JSON (activationId, phoneNumber, …)
getStatusSTATUS_WAIT_CODE · STATUS_OK:<code>
getStatusV2JSON (sms, call, …)
setStatusACCESS_READY · ACCESS_RETRY_GET · ACCESS_ACTIVATION · ACCESS_CANCEL
getActiveActivationsJSON (active list)
getHistoryJSON (history)
getPricesJSON (prices by country/service)
getCountriesJSON (countries)
getServicesListJSON (services)
getOperatorsJSON (operators)
getAllSmsJSON (all SMS for an activation)
finishActivation204
cancelActivation204
reactivate / reactivateOptionsJSON · provider-dependent
getRentNumber / getRentServicesAndCountries / serviceCountRentJSON · provider-dependent
prolong / prolongOptions / prolongHistoryJSON · rent only

setStatus

1 hazır bildir3 yeni SMS iste6 aktivasyonu tamamla8 iptal & iade
Örnek
# Numara al
GET https://sms.tc/stubs/handler_api.php?api_key=smstc_live_xxx&action=getNumber&service=tg&country=6
→ ACCESS_NUMBER:123456:628712345678

# Durum / kod sorgula
GET https://sms.tc/stubs/handler_api.php?api_key=smstc_live_xxx&action=getStatus&id=123456
→ STATUS_OK:12345

# Tamamla (6) veya iptal et (8)
GET https://sms.tc/stubs/handler_api.php?api_key=smstc_live_xxx&action=setStatus&id=123456&status=8
→ ACCESS_CANCEL

Hata kodları

SMS-Activate uç noktası düz-metin token döner (HTTP 200). REST API ise HTTP durum kodu + hata koduyla JSON döner.

NO_KEYAPI anahtarı eksik.
BAD_KEYAPI anahtarı geçersiz, süresi dolmuş veya IP'nize izinli değil.
BAD_ACTIONBilinmeyen action parametresi.
BAD_SERVICEBilinmeyen servis kodu.
NO_NUMBERSBu servis/ülke için müsait numara yok.
NO_BALANCEYetersiz bakiye.
WRONG_ACTIVATION_IDAktivasyon id'si eksik veya hatalı.
NO_ACTIVATIONHesabınızda bu aktivasyon bulunamadı.
BAD_STATUSGeçersiz setStatus değeri.
EARLY_CANCEL_DENIEDHenüz iptal edilemez (minimum bekleme süresi dolmadı).
ACTION_NOT_AVAILABLEBu aksiyon seçili sağlayıcı için kullanılamıyor.

Spesifikasyon

Tam makine-okunur spesifikasyon ve başlangıç rehberi aşağıdadır.