मुख्य सामग्री पर जाएँ
116
देश
133 सेवाएं, 400 कैरियर रूट, 15,400+ लाइव प्राइस पॉइंट। केवल क्रिप्टो, शून्य पहचान जांच।
नंबर किराए पर लें

डेवलपर्स के लिए SmsNoKYC: SMS सत्यापन जिसे आप स्क्रिप्ट कर सकते हैं

एक ही JSON इंटरफ़ेस के ज़रिए पूरा सत्यापन लूप स्क्रिप्ट करें। 116 देश, 133 सेवाएं, 400 कैरियर रूट्स और 15,400+ लाइव कीमतें मुट्ठी भर एंडपॉइंट्स के पीछे हैं: एक नंबर आवंटित करें, उसका इनकमिंग कोड पकड़ें, 90 दिनों तक रेंटल रखें, क्रिप्टो में भुगतान करें। यहां कोई API कुंजी नहीं है — एक सीड फ्रेज़ ही एकमात्र क्रेडेंशियल है जो आपको कभी पेश करना होगा।

पढ़ने का समय: 5 मिनट REST · JSON · OpenAPI 3.0 OpenAPI स्पेसिफ़िकेशन →

Authentication आवश्यक है। सेशन कुकीज़ पर चलते हैं। अपने सीड फ्रेज़ से साइन इन करें — साइट के ज़रिए या नीचे दस्तावेज़ीकृत ऑथ एंडपॉइंट के सीधे विरुद्ध — और हर आगे की रिक्वेस्ट खुद ही उस सेशन को अपना लेती है।

स्क्रिप्ट, पाइपलाइन और स्वायत्त एजेंटों के लिए बनाया गया

पुराने OTP विक्रेता आपके पहले अनुरोध से पहले हस्ताक्षरित अनुबंध, अनुपालन मंज़ूरी और मासिक न्यूनतम प्रतिबद्धता चाहते हैं। SmsNoKYC क्रम को उलट देता है: एक seed phrase रखें, 8 क्रिप्टोकरेंसी में से किसी में $25 से बैलेंस लोड करें — जिनमें Bitcoin, Monero, Ethereum, Litecoin, TRON, USDT, SOL शामिल हैं — और जो भी HTTPS क्लाइंट पहले से चलाते हैं उससे कॉल शुरू करें। बिलिंग प्रति नंबर $0.01 से मीटर होती है, 15,400+ लाइव price points में।

रोज़मर्रा में, ये endpoints CI के भीतर साइनअप फ्लो सत्यापित करते हैं, headless ब्राउज़र और scraper fleet को OTP कोड पहुँचाते हैं, Telegram या WhatsApp खातों को 7 से 90 दिन के dedicated rental पर जीवित रखते हैं, और 116 देशों में 400 carrier routes को तीन tier — वर्चुअल, फिजिकल, प्रीमियम — में सटीक नियंत्रण के साथ सत्यापन फैलाते हैं। AI एजेंट एक native MCP server के ज़रिए वही catalog पाते हैं, जिसका विवरण agents पेज पर है, ताकि tool-using मॉडल बिना किसी कस्टम glue के नंबर खरीद सके और कोड पढ़ सके।

Authentication

सेशन कुकी-आधारित हैं — बनाने या घुमाने के लिए कोई बियरर कुंजी नहीं है। प्रोग्रामेटिक लॉगिन में तीन कदम लगते हैं:

  1. अपना सीड फ्रेज़ /auth-api.php पर POST करें
  2. रिस्पॉन्स में सेट हुई कुकी को कैप्चर करें
  3. उस कुकी को आगे आने वाली हर कॉल से जोड़ें
POST /auth-api.php

आपके सीड फ़्रेज़ को लाइव सेशन में बदलता है।

पैरामीटरप्रकारRequiredविवरण
actionstringआवश्यक"login" होना चाहिए
seedstringआवश्यकआपके अकाउंट से जुड़ा 16-अक्षर वाला सीड (फॉर्मेट AbC3-dEf4-gHj5-kLm6)
cURL
Python
JavaScript
# Login and save session cookie curl -X POST https://smsnokyc.com/auth-api.php \ -d "action=login&seed=AbC3-dEf4-gHj5-kLm6" \ -c cookies.txt
import requests session = requests.Session() resp = session.post("https://smsnokyc.com/auth-api.php", data={ "action": "login", "seed": "AbC3-dEf4-gHj5-kLm6" }) data = resp.json() print(data) # {"success": true, "user": {...}} # session object now holds the cookie for all future requests
const resp = await fetch("https://smsnokyc.com/auth-api.php", { method: "POST", credentials: "include", headers: { "Content-Type": "application/x-www-form-urlencoded" }, body: "action=login&seed=AbC3-dEf4-gHj5-kLm6" }); const data = await resp.json(); console.log(data); // {success: true, user: {...}}
सफल उत्तर
{ "success": true, "user": { "id": 42, "prefix": "AbC3", "balance": "74.50" } }
Error Response
{ "success": false, "error": "Invalid seed." }

Base URL

हर endpoint एक ही URL पैटर्न पर आधारित है:

https://smsnokyc.com/api.php?action={action}

हर मामले में प्रतिक्रियाएं JSON के रूप में आती हैं। POST बॉडी application/json या application/x-www-form-urlencoded दोनों में से किसी भी रूप में भेजी जा सकती है।

Rate Limits

रिक्वेस्ट वॉल्यूम पर दो नियम लागू होते हैं:

Endpointसीमाविंडो
Authentication5 प्रयास15 मिनट
अन्य सभी endpointsकोई निश्चित सीमा नहीं—

रेट लिमिटिंग: लॉगिन प्रति 15 मिनट में 5 प्रयास स्वीकार करता है; बाकी हर एंडपॉइंट पर फिलहाल कोई निश्चित सीमा नहीं है, हालांकि लगातार दुरुपयोग को अपस्ट्रीम धीमा किया जा सकता है। अपनी कॉल को समझदारी से फैलाएं।

Error Handling

हर विफलता एक error फ़ील्ड वाले JSON ऑब्जेक्ट के रूप में वापस आती है:

{ "error": "Description of what went wrong" }
HTTP Codeअर्थ
200सफल (एप्लिकेशन-स्तरीय त्रुटियों के लिए response body जांचें)
403Invalid CSRF token
405गलत HTTP विधि (जैसे POST-only endpoint पर GET)
429Rate limit exceeded

एप्लिकेशन-स्तरीय त्रुटियां जिनका आप सबसे अधिक सामना करेंगे:

त्रुटिकारण
"Login required"Session expired or not authenticated
"Insufficient balance"पर्याप्त फंड नहीं — need और have फ़ील्ड शामिल हैं
"Service not available for this country"चयनित देश के लिए कोई स्टॉक या सेवा उपलब्ध नहीं
"Missing country or service"Required parameters were not provided

देश सूची

GET /api.php?action=countries

इस समय स्टॉक रखने वाले हर देश को सूचीबद्ध करता है — पिछली गिनती में 116। खुला endpoint, किसी सत्र की ज़रूरत नहीं।

cURL
Python
JavaScript
curl https://smsnokyc.com/api.php?action=countries
resp = session.get("https://smsnokyc.com/api.php", params={"action": "countries"}) countries = resp.json() for c in countries: print(c["code"], c["name"])
const resp = await fetch("https://smsnokyc.com/api.php?action=countries"); const countries = await resp.json();
Response
[ { "id": 1, "code": "us", "name": "USA" }, { "id": 2, "code": "gb", "name": "UK" }, { "id": 3, "code": "de", "name": "Germany" } ]

सेवा सूची

GET /api.php?action=services&country={code}

एक देश की सेवा सूची लाता है, जिसमें लाइव कीमत और स्टॉक शामिल है। पूरा 133-सेवा कैटलॉग बिना कीमत के पाने के लिए देश पैरामीटर छोड़ दें।

पैरामीटरप्रकारRequiredविवरण
countrystringवैकल्पिकISO 3166-1 alpha-2 देश कोड (जैसे us, gb, de)
Response (देश सहित)
[ { "id": 12, "name": "WhatsApp", "slug": "whatsapp", "icon_code": "WA", "icon_color": "#25d366", "category": "social", "price": "0.35", "stock": 847 } ]

ऑपरेटर सूची

GET /api.php?action=operators&country={code}

किसी देश के पीछे के carrier routes को सूचीबद्ध करता है। हर ऑपरेटर एक tier और आधार सेवा मूल्य पर लागू एक multiplier रखता है।

पैरामीटरप्रकारRequiredविवरण
countrystringआवश्यकISO 3166-1 alpha-2 देश कोड
Response
[ { "id": 5, "name": "T-Mobile", "type": "physical", "price_multiplier": "1.50", "icon_slug": "tmobile", "icon_domain": "t-mobile.com" } ]

ऑपरेटर प्रकार: virtual — VoIP-आधारित, सबसे कम लागत, कभी-कभी सख्त प्लेटफॉर्म द्वारा अस्वीकृत। physical — वास्तविक SIM हार्डवेयर, बेहतर स्वीकृति। premium — सबसे अधिक स्वीकृति और सबसे तेज़ डिलीवरी, लगभग 10 सेकंड।

नंबर खरीदें (SMS Activation)

POST /api.php?action=buy

एक सत्यापन के लिए एक नंबर आरक्षित करता है। यह 20 मिनट तक आपका रहता है; अगर इस दौरान कोई संदेश नहीं आता, तो शुल्क अपने आप आपके बैलेंस में वापस आ जाता है।

पैरामीटरप्रकारRequiredविवरण
countrystringआवश्यकदेश कोड (जैसे us)
service_idintegerआवश्यकList Services से Service ID
operator_idintegerवैकल्पिकList Operators से ऑपरेटर ID। डिफ़ॉल्ट ऑपरेटर के लिए छोड़ दें।
cURL
Python
JavaScript
curl -X POST https://smsnokyc.com/api.php?action=buy \ -b cookies.txt \ -H "Content-Type: application/json" \ -d '{"country":"us","service_id":12,"operator_id":5}'
resp = session.post("https://smsnokyc.com/api.php?action=buy", json={ "country": "us", "service_id": 12, "operator_id": 5 }) order = resp.json() print(f"Order #{order['order_id']} — ${order['price']}")
const resp = await fetch("https://smsnokyc.com/api.php?action=buy", { method: "POST", credentials: "include", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ country: "us", service_id: 12, operator_id: 5 }) }); const order = await resp.json();
सफल उत्तर
{ "success": true, "order_id": 1847, "price": 0.53, "balance": "73.97" }
त्रुटि: अपर्याप्त बैलेंस
{ "error": "Insufficient balance", "need": 0.53, "have": "0.10" }

ऑर्डर सूची

GET /api.php?action=orders

आपके नवीनतम 50 ऑर्डर उनके नंबरों और कैप्चर किए गए किसी भी कोड के साथ देता है। जब कोई सक्रियण अपने SMS की प्रतीक्षा कर रहा हो, तो यहां पोल करें।

Response
[ { "id": 1847, "price": "0.53", "status": "completed", "phone_number": "+12025551234", "sms_code": "847293", "created_at": "2026-04-09 14:32:00", "country_code": "us", "country_name": "USA", "service_name": "WhatsApp", "operator_name": "T-Mobile" } ]

ऑर्डर स्थितियां: active — अभी भी संदेश की प्रतीक्षा में। completed — कोड मिल गया। cancelled — आपके द्वारा बंद किया गया। refunded — साइलेंट टाइमआउट के बाद स्वचालित रूप से वापस क्रेडिट। expired — समय सीमा समाप्त।

नंबर रेंटल कीमत देखें

GET /api.php?action=rental_price&country={code}&operator_id={id}&duration={days}

किसी चुने गए ऑपरेटर पर, चुनी गई अवधि के लिए एक समर्पित नंबर रखने की लागत बताता है।

पैरामीटरप्रकारRequiredविवरण
countrystringआवश्यकदेश कोड
operator_idintegerआवश्यकऑपरेटर ID
durationintegerआवश्यककिराया अवधि दिनों में: 7, 14, 30, या 90
Response
{ "price": "12.50", "duration": 30, "operator": "T-Mobile", "type": "physical", "country": "USA" }

नंबर किराए पर लें

POST /api.php?action=rental_buy

एक या अधिक समर्पित नंबरों को लॉक करता है। हर एक पूरी अवधि — 7 से 90 दिन — के लिए विशेष रूप से आपका रहता है और किसी भी सेवा से असीमित इनबाउंड SMS स्वीकार करता है।

पैरामीटरप्रकारRequiredविवरण
countrystringआवश्यकदेश कोड
operator_idintegerआवश्यकऑपरेटर ID
durationintegerआवश्यक7, 14, 30, या 90 दिन
qtyintegerवैकल्पिककिराए पर लेने वाले नंबरों की संख्या (1–10, डिफ़ॉल्ट: 1)
सफल उत्तर
{ "success": true, "order_ids": [1848, 1849], "total": 25.00, "qty": 2, "unit_price": 12.50, "duration": 30, "balance": "49.50" }

यूज़र जानकारी देखें

GET /api.php?action=user

मौजूदा सेशन के पीछे के अकाउंट की जानकारी देता है, बैलेंस सहित। एक कॉल लॉगिन जांच और फंड जांच दोनों का काम करती है।

Authenticated
{ "logged_in": true, "id": 42, "prefix": "AbC3", "balance": "74.50" }
प्रमाणित नहीं
{ "logged_in": false }

एंड-टू-एंड स्क्रिप्ट

नीचे दी गई स्क्रिप्ट Python में पूरा लूप चलाती है — सेशन, कैटलॉग लुकअप, खरीद, फिर कोड आने तक पोलिंग:

Python
import requests, time BASE = "https://smsnokyc.com" SEED = "AbC3-dEf4-gHj5-kLm6" s = requests.Session() # 1. Authenticate s.post(f"{BASE}/auth-api.php", data={"action": "login", "seed": SEED}) # 2. Check balance user = s.get(f"{BASE}/api.php?action=user").json() print(f"Balance: ${user['balance']}") # 3. Get services for USA services = s.get(f"{BASE}/api.php?action=services&country=us").json() whatsapp = next(svc for svc in services if svc["name"] == "WhatsApp") print(f"WhatsApp: ${whatsapp['price']} ({whatsapp['stock']} in stock)") # 4. Buy a number order = s.post(f"{BASE}/api.php?action=buy", json={ "country": "us", "service_id": whatsapp["id"] }).json() print(f"Order #{order['order_id']} created") # 5. Poll for SMS code for _ in range(60): orders = s.get(f"{BASE}/api.php?action=orders").json() my_order = next(o for o in orders if o["id"] == order["order_id"]) if my_order["sms_code"]: print(f"SMS code: {my_order['sms_code']}") print(f"Phone: {my_order['phone_number']}") break print("Waiting for SMS...") time.sleep(5) else: print("Timeout — balance will be refunded automatically")

डेवलपर सवालों के जवाब

SmsNoKYC डेवलपर API कौन-से ऑपरेशन उपलब्ध कराता है?

डैशबोर्ड जो कुछ भी करता है, एक स्क्रिप्ट भी कर सकती है: 116 देशों और 133 सेवाओं का catalog खींचना, 400 carrier routes में फैले 15,400+ लाइव price points देखना, एक बार के OTP के लिए नंबर आवंटित करना, आते ही इनकमिंग कोड पढ़ना, 7, 14, 30 या 90 दिनों के लिए समर्पित किराया रखना, और हर ऑर्डर का ऑडिट करना। यह सब सादा JSON है HTTPS पर, क्रिप्टो में बिल किया गया, और पूरे फ्लो में कहीं भी कोई पहचान चरण नहीं।

क्या मेरे पहले अनुरोध से पहले जनरेट करने के लिए कोई API key है?

कुछ जनरेट करने को नहीं, कुछ बदलने को नहीं। आपका seed phrase ही क्रेडेंशियल है: इसे एक बार /auth-api.php पर POST करें, सर्वर द्वारा लौटाई गई सेशन कुकी रखें, और हर बाद की कॉल के साथ वह कुकी भेजें। कोई key डैशबोर्ड नहीं, कोई OAuth हैंडशेक नहीं, कोई एक्सपायरी कैलेंडर नहीं — एक seed एक सेशन खोलता है, और यही पूरा मॉडल है।

सिर्फ़ API एक्सेस की कीमत क्या है?

एक्सेस पाने में कुछ खर्च नहीं होता — न मासिक शुल्क, न कोई टियर, न न्यूनतम कॉल वॉल्यूम। आप केवल प्रति नंबर भुगतान करते हैं: एकबारगी वेरिफिकेशन कोड $0.01 से शुरू होते हैं और आमतौर पर $0.20 से $1 के बीच रहते हैं, जबकि डेडिकेटेड रेंटल 7-दिन की अवधि के लिए $4.20 से शुरू होते हैं। बैलेंस 8 क्रिप्टोकरेंसी से फंड होते हैं (न्यूनतम टॉप-अप $25), और जिस सक्रियता को कभी SMS नहीं मिलता वह आपकी ओर से किसी कार्रवाई के बिना अपने आप रिफंड हो जाती है।

क्या मैं किसी भी भाषा से — या किसी AI एजेंट से इंटीग्रेट कर सकता हूं?

जो कुछ भी HTTPS बोलता है वह योग्य है: Python, Node.js, Go, Rust, PHP, Ruby, Java, C#, या शेल स्क्रिप्ट के भीतर सीधा cURL। रेफरेंस में cURL, Python और JavaScript में चलने योग्य स्निपेट्स शामिल हैं, और /openapi.json टाइप्ड क्लाइंट बनाने के लिए एक पूरा OpenAPI 3.0 दस्तावेज़ प्रदान करता है। स्वायत्त एजेंट भी मूल रूप से समर्थित हैं — एक समर्पित MCP सर्वर टूल-इस्तेमाल करने वाले मॉडल्स को अपने आप नंबर खरीदने और कोड इकट्ठा करने देता है; /agents पेज पूरी सेटअप प्रक्रिया समझाता है।

जब खरीदा गया नंबर खामोश रहता है तो क्या होता है?

आपका कुछ नहीं जाता। हर एक्टिवेशन में 20-मिनट की रिसीव विंडो होती है; अगर बिना मैसेज के यह बंद हो जाती है, तो प्लेटफ़ॉर्म खुद ऑर्डर कैंसल कर देता है और पूरी राशि आपके बैलेंस में वापस डाल देता है। कोई टिकट नहीं, कोई फ़ॉर्म नहीं, सपोर्ट का इंतज़ार नहीं। तुरंत दोबारा खरीदें — फ़िज़िकल या प्रीमियम ऑपरेटर टियर पर जाने से आमतौर पर डिलीवरी रेट बेहतर होता है।

थ्रॉटलिंग शुरू होने से पहले मैं कितनी सख़्ती से पोल कर सकता हूँ?

केवल लॉगिन पर एक सख्त सीमा है: प्रति IP प्रति 15 मिनट 5 प्रयास, ताकि सीड का अंदाज़ा लगाने से रोका जा सके। कैटलॉग, खरीद, ऑर्डर और रेंटल एंडपॉइंट्स पर फिलहाल कोई तय कोटा नहीं है। रफ्तार संयमित रखें — हर 3 से 5 सेकंड में ऑर्डर एंडपॉइंट चेक करने से हर कोड मिल जाता है — और लगातार ट्रैफिक को लगभग 10 रिक्वेस्ट प्रति सेकंड के भीतर रखें, क्योंकि भारी बर्स्ट को एज लेयर पर धीमा किया जा सकता है।

इसे शिप करें

होमपेज पर एक seed लें, $25 या अधिक क्रिप्टो में लोड करें, और आपका पहला सत्यापन कोड पाँच अनुरोध दूर है। स्क्रिप्ट के बजाय किसी LLM पर बना रहे हैं? अपने मॉडल को SmsNoKYC MCP server पर पॉइंट करें या AI एजेंट इंटीग्रेशन गाइड का पालन करें — 116 देशों और 133 सेवाओं का पूरा catalog एक tool call बन जाता है।

जो कुछ भी रेफरेंस में अनुत्तरित रह जाए वह हेल्प सेंटर में शामिल है, SMS शब्दावली तकनीकी शब्दों को समझाती है, और लाइव गतिविधि नेटवर्क को गतिशील रूप में दिखाती है। साइन इन करने के बाद सपोर्ट इन-ऐप टिकटों पर चलता है।