sms.tcsms.tc

API डॉक्यूमेंटेशन

sms.tc पर नंबर खरीदना और SMS वेरिफिकेशन ऑटोमेट करें। दो इंटरफ़ेस: एक आधुनिक REST API और एक ड्रॉप-इन SMS-Activate–कम्पैटिबल एंडपॉइंट — अपने मौजूदा SMS-Activate सॉफ़्टवेयर को बिना कोड बदले sms.tc से जोड़ें।

ओवरव्यू

sms.tc एक मल्टी-प्रोवाइडर एग्रीगेटर है: एक ही API से आपको कई अपस्ट्रीम प्रोवाइडर के नंबर मिलते हैं, जिन पर हमारी कीमतें लागू होती हैं। आप अपने स्टैक के अनुसार कोई भी इंटरफ़ेस इस्तेमाल कर सकते हैं।

REST API

HTTP पर JSON। नए इंटीग्रेशन के लिए सुझाया गया।

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

SMS-Activate क्लाइंट्स के साथ कम्पैटिबल प्लेन-टेक्स्ट प्रोटोकॉल।

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

API key पाएं

  1. 1साइन इन करें और अपना Profile → API पेज खोलें।
  2. 2एक key जनरेट करें। यह सिर्फ़ एक बार दिखाई जाती है — इसे कॉपी करके सुरक्षित रखें।
  3. 3दोबारा जनरेट करने पर पुरानी key रद्द हो जाती है और नई key ईमेल पर भेजी जाती है। आप चाहें तो key को खास IP एड्रेस तक सीमित कर सकते हैं और उसकी समाप्ति तारीख सेट कर सकते हैं।
अपनी API key पाएं

ऑथेंटिकेशन

हर रिक्वेस्ट में आपकी API key होनी चाहिए। REST API इसे हेडर से पढ़ता है; SMS-Activate एंडपॉइंट इसे api_key क्वेरी पैरामीटर से पढ़ता है।

REST

Authorization: Bearer smstc_live_xxxX-Api-Key: smstc_live_xxx

SMS-Activate

?api_key=smstc_live_xxx

मुख्य कॉन्सेप्ट

कैनॉनिकल कोड

देश SMS-Activate के न्यूमेरिक ID (0=रूस, 1=यूक्रेन…) इस्तेमाल करते हैं और सर्विस छोटे कोड (tg, wa, ig…) इस्तेमाल करती हैं। इन्हें catalog / getCountries / getServicesList एंडपॉइंट से देखें।

करेंसी

सभी कीमतें और बैलेंस USD (ISO 840) में हैं।

बैलेंस

खरीदारी का शुल्क आपके sms.tc बैलेंस से लिया जाता है। विफल या टाइमआउट हुए एक्टिवेशन का पैसा अपने आप रिफ़ंड हो जाता है।

SMS सफलता दर (rate)

ऑफ़र रिस्पॉन्स में rate शामिल हो सकता है: हमारे अपने सेटल हुए एक्टिवेशन में से कितनों को SMS मिला (%, या null)। इसकी गणना प्रोवाइडर + सर्विस + देश के हिसाब से होती है, यह केवल कम से कम 10 सेटल हुए एक्टिवेशन होने पर दिखाया जाता है और दिन में एक बार रिफ्रेश होता है। प्रोवाइडर के अनुसार ब्रेकडाउन के लिए /activations/offers/providers इस्तेमाल करें।

REST API

बेस URL https://sms.tc/api/v1। Bearer / X-Api-Key हेडर से ऑथेंटिकेट करें। रिस्पॉन्स JSON में होते हैं।

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 }.
उदाहरण · cURL
# 1) उपलब्ध नंबरों की सूची
curl https://sms.tc/api/v1/activations/offers \
  -H "Authorization: Bearer smstc_live_xxx"

# 2) नंबर खरीदें (Telegram, देश 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) कोड चेक करें
curl https://sms.tc/api/v1/activations/123456 \
  -H "X-Api-Key: smstc_live_xxx"

SMS-Activate कम्पैटिबल API

/stubs/handler_api.php पर एक ही एंडपॉइंट, जो action क्वेरी पैरामीटर के अनुसार काम करता है — यह SMS-Activate प्रोटोकॉल की हूबहू नकल है, इसलिए मौजूदा पार्टनर सॉफ़्टवेयर बिना बदलाव के काम करता है। रिस्पॉन्स प्लेन टेक्स्ट में होते हैं (V2 / list actions के लिए JSON में)।

actionरिटर्न करता है
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 तैयार होने की सूचना दें3 एक और SMS मंगाएं6 एक्टिवेशन पूरा करें8 रद्द करें और रिफ़ंड लें
उदाहरण
# नंबर पाएं
GET https://sms.tc/stubs/handler_api.php?api_key=smstc_live_xxx&action=getNumber&service=tg&country=6
→ ACCESS_NUMBER:123456:628712345678

# स्थिति / कोड चेक करें
GET https://sms.tc/stubs/handler_api.php?api_key=smstc_live_xxx&action=getStatus&id=123456
→ STATUS_OK:12345

# पूरा करें (6) या रद्द करें (8)
GET https://sms.tc/stubs/handler_api.php?api_key=smstc_live_xxx&action=setStatus&id=123456&status=8
→ ACCESS_CANCEL

एरर कोड

SMS-Activate एंडपॉइंट प्लेन-टेक्स्ट टोकन (HTTP 200) लौटाता है। REST API एक HTTP स्टेटस और एरर कोड के साथ JSON लौटाता है।

NO_KEYAPI key मौजूद नहीं है।
BAD_KEYAPI key अमान्य है, समाप्त हो चुकी है या आपके IP के लिए अनुमति नहीं है।
BAD_ACTIONअज्ञात action पैरामीटर।
BAD_SERVICEअज्ञात सर्विस कोड।
NO_NUMBERSइस सर्विस/देश के लिए कोई नंबर उपलब्ध नहीं है।
NO_BALANCEअपर्याप्त बैलेंस।
WRONG_ACTIVATION_IDएक्टिवेशन id मौजूद नहीं है या गलत फ़ॉर्मेट में है।
NO_ACTIVATIONआपके अकाउंट में यह एक्टिवेशन नहीं मिला।
BAD_STATUSअमान्य setStatus वैल्यू।
EARLY_CANCEL_DENIEDअभी रद्द नहीं किया जा सकता (न्यूनतम होल्ड समय पूरा नहीं हुआ)।
ACTION_NOT_AVAILABLEयह action चुने गए प्रोवाइडर के लिए उपलब्ध नहीं है।

स्पेसिफ़िकेशन

पूरा मशीन-रीडेबल स्पेसिफ़िकेशन और शुरुआती गाइड नीचे उपलब्ध हैं।