Lewati ke konten utama
116
Negara
133 layanan, 400 rute operator, 15.400+ titik harga langsung. Hanya kripto, tanpa pemeriksaan identitas.
Sewa Nomor

SmsNoKYC untuk Developer: Verifikasi SMS yang Bisa Anda Skrip

Skrip seluruh alur verifikasi melalui satu antarmuka JSON. 116 negara, 133 layanan, 400 rute operator, dan 15.400+ harga aktif berada di balik segelintir endpoint: alokasikan nomor, tangkap kode masuknya, sewa nomor hingga 90 hari, bayar dengan kripto. Tidak ada kunci API di sini — seed phrase adalah satu-satunya kredensial yang pernah Anda tunjukkan.

Waktu baca: 5 menit REST · JSON · OpenAPI 3.0 Spesifikasi OpenAPI →

Autentikasi diperlukan. Sesi berjalan di atas cookie. Masuk dengan seed phrase Anda — melalui situs atau langsung ke endpoint autentikasi yang didokumentasikan di bawah — dan setiap permintaan berikutnya akan otomatis mewarisi sesi tersebut.

Dibuat untuk skrip, pipeline dan agen otonom

Vendor OTP lama menginginkan kontrak ditandatangani, kepatuhan disetujui, dan minimum bulanan dikomitmenkan sebelum permintaan pertama Anda dikirim. SmsNoKYC membalik urutannya: miliki seed phrase, isi saldo mulai dari $25 dengan salah satu dari 8 mata uang kripto — di antaranya Bitcoin, Monero, Ethereum, Litecoin, TRON, USDT, Solana — dan mulai memanggil dari klien HTTPS apa pun yang sudah Anda jalankan. Penagihan diukur per nomor mulai dari $0.01, di lebih dari 15.400 titik harga langsung.

Sehari-hari, endpoint ini memverifikasi alur pendaftaran di dalam CI, mengirim kode OTP ke headless browser dan armada scraper, menjaga akun Telegram atau WhatsApp tetap aktif lewat sewa khusus 7 hingga 90 hari, dan menyebarkan verifikasi ke 116 negara dengan kendali eksplisit atas 400 rute operator dalam tiga tingkatan — virtual, fisik, premium. Agen AI mengakses katalog yang sama lewat server MCP native, yang dibahas di halaman agents, sehingga model pengguna tool bisa membeli nomor dan membaca kode tanpa perekat kustom.

Autentikasi

Sesi berbasis cookie — tidak ada kunci bearer yang perlu dibuat atau dirotasi. Login secara programatik memerlukan tiga langkah:

  1. Kirim POST seed phrase Anda ke /auth-api.php
  2. Tangkap cookie yang disetel pada respons
  3. Sertakan cookie tersebut pada setiap panggilan berikutnya
POST /auth-api.php

Menukar seed phrase Anda dengan sesi aktif.

ParameterJenisWajibDeskripsi
actionstringwajib diisiHarus berupa "login"
seedstringwajib diisiSeed 16 karakter yang terkait dengan akun Anda (format 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: {...}}
Respons Berhasil
{ "success": true, "user": { "id": 42, "prefix": "AbC3", "balance": "74.50" } }
Respons Error
{ "success": false, "error": "Invalid seed." }

URL Dasar

Setiap endpoint bergantung pada satu pola URL:

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

Respons selalu datang dalam bentuk JSON. Isi POST dapat dikirim sebagai application/json atau application/x-www-form-urlencoded.

Batas Laju

Dua aturan mengatur volume permintaan:

EndpointLimitWindow
Autentikasi5 percobaan15 menit
Semua endpoint lainnyaTidak ada batas maksimum—

Pembatasan laju: login menerima 5 percobaan per 15 menit; endpoint lainnya saat ini tidak memiliki batas tetap, meski penyalahgunaan berkelanjutan dapat diperlambat di sisi hulu. Atur jarak panggilan Anda secara wajar.

Penanganan Error

Setiap kegagalan dikembalikan sebagai objek JSON yang membawa field error:

{ "error": "Description of what went wrong" }
Kode HTTPMeaning
200Berhasil (periksa isi respons untuk kesalahan pada level aplikasi)
403Token CSRF tidak valid
405Metode HTTP salah (mis. GET pada endpoint yang hanya menerima POST)
429Batas laju terlampaui

Kesalahan tingkat aplikasi yang paling sering Anda temui:

ErrorCause
"Login required"Sesi kedaluwarsa atau tidak terautentikasi
"Insufficient balance"Dana tidak mencukupi — menyertakan kolom need dan have
"Service not available for this country"Stok kosong atau layanan tidak aktif untuk negara yang dipilih
"Missing country or service"Parameter yang diperlukan tidak diberikan

List Countries

GET /api.php?action=countries

Mencantumkan setiap negara yang saat ini memiliki stok — 116 pada hitungan terakhir. Endpoint terbuka, tidak memerlukan sesi.

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();
Respons
[ { "id": 1, "code": "us", "name": "USA" }, { "id": 2, "code": "gb", "name": "UK" }, { "id": 3, "code": "de", "name": "Germany" } ]

List Services

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

Mengambil daftar layanan untuk satu negara, termasuk harga dan stok aktif. Kosongkan parameter negara untuk menerima katalog lengkap 133 layanan tanpa harga.

ParameterJenisWajibDeskripsi
countrystringopsionalKode negara ISO 3166-1 alpha-2 (mis. us, gb, de)
Respons (dengan negara)
[ { "id": 12, "name": "WhatsApp", "slug": "whatsapp", "icon_code": "WA", "icon_color": "#25d366", "category": "social", "price": "0.35", "stock": 847 } ]

List Operators

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

Merinci rute operator di balik sebuah negara. Setiap operator memiliki tingkatan beserta pengali yang diterapkan di atas harga dasar layanan.

ParameterJenisWajibDeskripsi
countrystringwajib diisiKode negara ISO 3166-1 alpha-2
Respons
[ { "id": 5, "name": "T-Mobile", "type": "physical", "price_multiplier": "1.50", "icon_slug": "tmobile", "icon_domain": "t-mobile.com" } ]

Jenis operator: virtual — berbasis VoIP, biaya terendah, terkadang ditolak oleh platform yang ketat. physical — perangkat keras SIM asli, tingkat penerimaan lebih kuat. premium — tingkat penerimaan tertinggi dan pengiriman tercepat, sekitar 10 detik.

Beli Nomor (Aktivasi SMS)

POST /api.php?action=buy

Mencadangkan nomor untuk satu kali verifikasi. Nomor tersebut menjadi milik Anda selama 20 menit; jika tidak ada pesan yang masuk dalam rentang waktu itu, biaya akan kembali ke saldo Anda secara otomatis.

ParameterJenisWajibDeskripsi
countrystringwajib diisiKode negara (mis. us)
service_idintegerwajib diisiID Layanan dari Daftar Layanan
operator_idintegeropsionalID Operator dari Daftar Operator. Abaikan untuk operator default.
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();
Respons Berhasil
{ "success": true, "order_id": 1847, "price": 0.53, "balance": "73.97" }
Error: Saldo Tidak Mencukupi
{ "error": "Insufficient balance", "need": 0.53, "have": "0.10" }

List Orders

GET /api.php?action=orders

Menyajikan 50 order terbaru Anda beserta nomornya dan kode apa pun yang berhasil ditangkap. Periksa di sini selagi sebuah aktivasi menunggu SMS-nya.

Respons
[ { "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" } ]

Status pesanan: active — masih menunggu pesan. completed — kode berhasil ditangkap. cancelled — ditutup oleh Anda. refunded — dikreditkan kembali secara otomatis setelah batas waktu tanpa respons. expired — masa berlaku habis.

Cek Harga Sewa

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

Menampilkan biaya menyewa nomor khusus pada operator tertentu untuk jangka waktu yang dipilih.

ParameterJenisWajibDeskripsi
countrystringwajib diisiKode negara
operator_idintegerwajib diisiID Operator
durationintegerwajib diisiDurasi sewa dalam hari: 7, 14, 30, atau 90
Respons
{ "price": "12.50", "duration": 30, "operator": "T-Mobile", "type": "physical", "country": "USA" }

Sewa Nomor

POST /api.php?action=rental_buy

Mengunci satu atau lebih nomor khusus. Setiap nomor tetap menjadi milik Anda secara eksklusif selama seluruh masa berlaku — 7 hingga 90 hari — dan menerima SMS masuk tanpa batas dari layanan mana pun.

ParameterJenisWajibDeskripsi
countrystringwajib diisiKode negara
operator_idintegerwajib diisiID Operator
durationintegerwajib diisi7, 14, 30, atau 90 hari
qtyintegeropsionalJumlah nomor yang akan disewa (1–10, default: 1)
Respons Berhasil
{ "success": true, "order_ids": [1848, 1849], "total": 25.00, "qty": 2, "unit_price": 12.50, "duration": 30, "balance": "49.50" }

Dapatkan Info Pengguna

GET /api.php?action=user

Melaporkan akun di balik sesi saat ini, termasuk saldo. Satu panggilan berfungsi ganda sebagai pengecekan login dan pengecekan dana.

Terautentikasi
{ "logged_in": true, "id": 42, "prefix": "AbC3", "balance": "74.50" }
Tidak Terautentikasi
{ "logged_in": false }

Skrip End-to-End

Skrip di bawah menjalankan seluruh alur dalam Python — sesi, pencarian katalog, pembelian, lalu pemeriksaan berulang hingga kode masuk:

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")

Pertanyaan Pengembang, Terjawab

Operasi apa saja yang disediakan oleh API developer SmsNoKYC?

Semua yang dilakukan dasbor bisa dilakukan skrip: menarik katalog 116 negara dan 133 layanan, memeriksa 15.400+ titik harga langsung yang tersebar di 400 rute operator, mengalokasikan nomor untuk satu OTP, membaca kode masuk begitu tiba, memiliki sewa khusus selama 7, 14, 30 atau 90 hari, dan mengaudit setiap pesanan. Semuanya berupa JSON biasa lewat HTTPS, ditagih dalam kripto, tanpa tahap identitas apa pun di sepanjang alurnya.

Apakah ada kunci API yang perlu dibuat sebelum permintaan pertama saya?

Tidak ada yang perlu dibuat, tidak ada yang perlu diputar ulang. Seed phrase Anda adalah kredensial itu sendiri: POST sekali ke /auth-api.php, simpan cookie sesi yang dikembalikan server, dan kirimkan cookie itu di setiap panggilan berikutnya. Tidak ada dasbor kunci, tidak ada jabat tangan OAuth, tidak ada kalender kedaluwarsa — satu seed membuka satu sesi, dan itulah seluruh modelnya.

Berapa biaya akses ke API itu sendiri?

Akses tidak dipungut biaya — tanpa biaya bulanan, tanpa tingkatan, tanpa volume panggilan minimum. Anda hanya membayar per nomor: kode verifikasi sekali pakai mulai dari $0.01 dan biasanya berada di antara $0.20 dan $1, sementara sewa khusus dimulai dari $4.20 untuk masa 7 hari. Saldo diisi dengan 8 cryptocurrency (top-up minimum $25), dan aktivasi yang tidak pernah menerima SMS akan dikembalikan otomatis tanpa perlu tindakan apa pun dari Anda.

Bisakah saya berintegrasi dari bahasa pemrograman apa pun — atau dari agen AI?

Semua yang berbicara HTTPS memenuhi syarat: Python, Node.js, Go, Rust, PHP, Ruby, Java, C#, atau sekadar cURL di dalam skrip shell. Referensi ini menyertakan cuplikan kode siap jalan dalam cURL, Python dan JavaScript, dan /openapi.json menyediakan dokumen OpenAPI 3.0 lengkap untuk membuat klien bertipe. Agen otonom juga didukung secara native — server MCP khusus memungkinkan model yang menggunakan tool membeli nomor dan mengumpulkan kode sendiri; halaman /agents menjelaskan cara pengaturannya.

Apa yang terjadi ketika nomor yang dibeli tetap bisu?

Anda tidak kehilangan apa pun. Setiap aktivasi berjalan dengan jendela penerimaan 20 menit; jika berakhir tanpa pesan, platform membatalkan pesanan secara otomatis dan mengembalikan seluruh biaya ke saldo Anda. Tanpa tiket, tanpa formulir, tanpa menunggu dukungan. Beli lagi langsung — naik ke tingkatan operator fisik atau premium biasanya meningkatkan tingkat pengiriman.

Seberapa sering saya bisa polling sebelum pembatasan berlaku?

Hanya login yang punya batas keras: 5 percobaan per 15 menit per IP, untuk mencegah tebakan seed. Endpoint katalog, pembelian, order, dan rental saat ini tidak punya kuota tetap. Jaga kecepatan tetap wajar — memeriksa endpoint order setiap 3 hingga 5 detik sudah menangkap setiap kode — dan tahan trafik berkelanjutan di bawah kira-kira 10 permintaan per detik, karena lonjakan yang lebih berat bisa diperlambat di lapisan edge.

Kirim

Dapatkan seed di halaman utama, isi $25 atau lebih dalam kripto, dan kode verifikasi pertama Anda hanya lima permintaan lagi. Membangun dengan LLM alih-alih skrip? Arahkan model Anda ke server MCP SmsNoKYC atau ikuti panduan integrasi agen AI — seluruh katalog 116 negara dan 133 layanan menjadi satu panggilan tool.

Hal-hal yang belum tercakup dalam referensi ini dibahas di pusat bantuan, glosarium SMS menjelaskan istilah-istilah teknis, dan aktivitas langsung menampilkan pergerakan jaringan secara real-time. Dukungan berjalan melalui tiket dalam aplikasi setelah Anda masuk.