API Documentation
Integrasikan layanan nomor virtual, deposit, dan OTP KingRockOTP langsung ke sistem atau bot kamu sendiri — satu API key, response JSON yang konsisten, siap dipakai dalam hitungan menit.
https://KingRockOTP.my.id/api/v1x-api-key: dp_xxxxxxapplication/jsonAPI Key Kamu
Login dulu buat lihat API key kamu langsung di sini. Masuk / Daftar →
1. Dapatkan API Key
Login via endpoint berikut untuk mendapatkan API Key. Simpan api_key dari response dan gunakan sebagai header di setiap request.
POST https://KingRockOTP.my.id/api/login Content-Type: application/json { "username": "budi123", "password": "rahasia" }
{
"success": true,
"user": {
"id": 123,
"username": "budi123",
"balance": 50000,
"api_key": "dp_xxxxxxxxxxxxxxxx"
}
}
Cek Saldo
/balance
Mengambil saldo aktif akun. Tidak memerlukan body parameter.
GET https://KingRockOTP.my.id/api/v1/balance x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"balance": 50000,
"username": "budi123"
}
Buat Deposit QRIS
/deposit/create
Membuat tagihan deposit QRIS baru. QR code aktif selama 5 menit. Saldo masuk otomatis setelah pembayaran dikonfirmasi.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| amount | integer | ✅ Ya | Nominal deposit dalam Rupiah. Minimal 500 |
POST https://KingRockOTP.my.id/api/v1/deposit/create x-api-key: dp_xxxxxxxxxxxxxx Content-Type: application/json { "amount": 50000 }
{
"success": true,
"deposit": {
"id": "DPxxx123",
"amount": 50000,
"total_payment": 52500,
"qr_image": "https://...",
"status": "pending"
}
}
Cek Status Deposit
/deposit/status/:deposit_id
Mengecek apakah deposit sudah dibayar. Polling tiap 5–10 detik disarankan hingga status success.
GET https://KingRockOTP.my.id/api/v1/deposit/status/DP123456 x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"status": "success",
"message": "Deposit berhasil!"
}
Batalkan Deposit
/deposit/cancel
Membatalkan deposit yang masih berstatus pending.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| deposit_id | string | ✅ Ya | ID deposit dari response /deposit/create |
POST https://KingRockOTP.my.id/api/v1/deposit/cancel x-api-key: dp_xxxxxxxxxxxxxx Content-Type: application/json { "deposit_id": "DP123456" }
{
"success": true,
"message": "Deposit dibatalkan"
}
Server kualitas premium dengan banyak pilihan operator per negara. Alur: ambil services → countries (berisi pricelist) → numbers untuk daftar operator → order dengan provider_id + operator_id.
Daftar Layanan
/s1/nokos/services
service_code dipakai sebagai service_id pada endpoint berikutnya.
GET https://KingRockOTP.my.id/api/v1/s1/nokos/services x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"data": [
{
"service_code": 13,
"service_name": "WhatsApp",
"service_img": "https://assets.cindigital.id/apps/wa.png"
}
]
}
Daftar Negara
/s1/nokos/countries
Berisi pricelist per negara. price_with_markup dihitung dari item pertama pricelist + MARKUP_S1.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| service_id | integer | ✅ Ya | service_code dari /services |
GET https://KingRockOTP.my.id/api/v1/s1/nokos/countries ?service_id=13 x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"data": [
{
"number_id": 340437,
"name": "Indonesia",
"prefix": "+62",
"stock_total": 103,
"pricelist": [
{
"provider_id": "3837",
"stock": 103,
"price": 1100,
"available": true
}
],
"price_with_markup": 2100,
"original_price": 1100
}
]
}
Operator & Harga
/s1/nokos/numbers
Mengambil daftar operator untuk satu provider/negara, lengkap dengan harga + markup.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| country_id | integer | ✅ Ya | number_id dari /countries |
| service_id | integer | ✅ Ya | service_code dari /services |
| provider_id | string | Opsional | ID provider dari pricelist. Default item pertama. |
GET https://KingRockOTP.my.id/api/v1/s1/nokos/numbers ?country_id=340437&service_id=13&provider_id=3837 x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"data": [
{
"operator_id": 1,
"operator_name": "any",
"label": "any",
"provider_id": "3837",
"price": 1100,
"price_with_markup": 2100
},
{
"operator_id": 3,
"operator_name": "telkomsel",
"label": "telkomsel",
"provider_id": "3837",
"price": 1100,
"price_with_markup": 2100
}
]
}
Order Nomor Virtual
/s1/nokos/order
Membuat order nomor virtual. Wajib menyertakan provider_id & operator_id dari /numbers.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| service_code | string | ✅ Ya | contoh: "13" |
| service_name | string | ✅ Ya | contoh: "WhatsApp" |
| country_id | integer | ✅ Ya | number_id negara, contoh: 340437 |
| country_name | string | ✅ Ya | contoh: "Indonesia" |
| provider_id | string | ✅ Ya | dari /numbers, contoh: "3837" |
| operator_id | string | ✅ Ya | dari /numbers, contoh: "1" |
| price_original | integer | ✅ Ya | harga asli (tanpa markup) dari /numbers |
POST https://KingRockOTP.my.id/api/v1/s1/nokos/order x-api-key: dp_xxxxxxxxxxxxxx Content-Type: application/json { "service_code": "13", "service_name": "WhatsApp", "country_id": 340437, "country_name": "Indonesia", "provider_id": "3837", "operator_id": "1", "price_original": 1100 }
{
"success": true,
"order": {
"id": "RO0004647717",
"server": "s1",
"phone_number": "+62 858 4441 4442",
"status": "pending",
"price": 2100
}
}
Cek Status OTP
/s1/nokos/status
Mengecek status order & kode OTP. Lakukan polling tiap 10 detik hingga status received.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| order_id | string | ✅ Ya | ID order dari response /order |
GET https://KingRockOTP.my.id/api/v1/s1/nokos/status ?order_id=RO0004647717 x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"data": {
"status": "received",
"otp_code": "949708",
"otp_message": "Your WhatsApp code: 949-708"
}
}
Batalkan Order
/s1/nokos/cancel
Membatalkan order & mengembalikan saldo. Minimal 10 menit setelah order dibuat.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| order_id | string | ✅ Ya | ID order yang akan dibatalkan |
POST https://KingRockOTP.my.id/api/v1/s1/nokos/cancel x-api-key: dp_xxxxxxxxxxxxxx Content-Type: application/json { "order_id": "RO0004647717" }
{
"success": true,
"message": "Order dibatalkan, saldo dikembalikan"
}
Daftar Layanan
/s2/nokos/services
Mengambil semua layanan OTP yang tersedia di server 2. Gunakan id sebagai service_code saat order.
GET https://KingRockOTP.my.id/api/v1/s2/nokos/services x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"data": [
{
"id": "13",
"name": "WhatsApp"
},
{
"id": "5",
"name": "Telegram"
}
]
}
Daftar Negara
/s2/nokos/countries
Mengambil daftar negara yang tersedia. Gunakan number_id sebagai country_id saat order.
GET https://KingRockOTP.my.id/api/v1/s2/nokos/countries x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"data": [
{
"number_id": 6,
"name": "Indonesia"
},
{
"number_id": 1,
"name": "United States"
}
]
}
Provider & Harga
/s2/nokos/numbers
Mengambil daftar provider yang tersedia beserta harga untuk kombinasi layanan dan negara tertentu.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| service_code | string | ✅ Ya | ID layanan dari /services |
| country_id | integer | ✅ Ya | ID negara dari /countries |
GET https://KingRockOTP.my.id/api/v1/s2/nokos/numbers ?service_code=13&country_id=6 x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"data": [
{
"provider_id": "p1",
"label": "Provider A",
"price": 2800,
"count": 142
}
]
}
Order Nomor Virtual
/s2/nokos/order
Membuat order nomor virtual baru. Saldo dipotong otomatis sesuai harga provider. Simpan id dari response untuk cek OTP.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| service_code | string | ✅ Ya | ID layanan, contoh: "13" |
| service_name | string | ✅ Ya | Nama layanan, contoh: "WhatsApp" |
| country_id | integer | ✅ Ya | ID negara, contoh: 6 |
| country_name | string | ✅ Ya | Nama negara, contoh: "Indonesia" |
| provider_id | string | Opsional | ID provider spesifik. Kosongkan untuk auto-pilih. |
| price_original | integer | ✅ Ya | Harga asli dari provider (tanpa markup). |
POST https://KingRockOTP.my.id/api/v1/s2/nokos/order x-api-key: dp_xxxxxxxxxxxxxx Content-Type: application/json { "service_code": "13", "service_name": "WhatsApp", "country_id": 6, "country_name": "Indonesia", "provider_id": "", "price_original":2800 }
{
"success": true,
"order": {
"id": "S6-abc123",
"phone_number": "628123456789",
"status": "waiting",
"price": 2800
}
}
Cek Status OTP
/s2/nokos/status
Mengecek status order dan mengambil kode OTP jika sudah tersedia. Lakukan polling tiap 10 detik hingga status received.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| order_id | string | ✅ Ya | ID order dari response /order |
GET https://KingRockOTP.my.id/api/v1/s2/nokos/status ?order_id=S6-abc123 x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"data": {
"status": "received",
"otp_code": "847291",
"otp_msg": "Your code is 847291",
"phone_number": "628123456789"
}
}
Batalkan Order
/s2/nokos/cancel
Membatalkan order yang masih aktif. Saldo dikembalikan otomatis jika OTP belum pernah diterima. Order hanya bisa dibatalkan minimal 10 menit setelah dibuat.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| order_id | string | ✅ Ya | ID order yang akan dibatalkan |
POST https://KingRockOTP.my.id/api/v1/s2/nokos/cancel x-api-key: dp_xxxxxxxxxxxxxx Content-Type: application/json { "order_id": "S6-abc123" }
{
"success": true,
"message": "Order berhasil dibatalkan",
"refunded": true
}
Daftar Layanan
/s3/nokos/services
Mengambil daftar layanan/aplikasi yang tersedia di server ini.
GET https://KingRockOTP.my.id/api/v1/s3/nokos/services x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"data": [
{ "id": "1", "code": "1", "name": "WhatsApp" },
{ "id": "2", "code": "2", "name": "Telegram" }
]
}
Daftar Negara
/s3/nokos/countries
Mengambil daftar negara yang tersedia.
GET https://KingRockOTP.my.id/api/v1/s3/nokos/countries x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"data": [
{ "number_id": 6, "name": "Indonesia" },
{ "number_id": 1, "name": "Malaysia" }
]
}
Provider & Harga
/s3/nokos/numbers
Mengambil daftar provider/operator beserta harga untuk kombinasi layanan & negara tertentu.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| service_code | string | ✅ Ya | Kode layanan dari /services |
| country_id | string | ✅ Ya | number_id dari /countries |
GET https://KingRockOTP.my.id/api/v1/s3/nokos/numbers?service_code=1&country_id=6 x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"data": [
{
"provider_id": "881",
"label": "Nomor Virtual",
"price": 2500,
"price_with_markup": 3500
}
]
}
Order Nomor
/s3/nokos/order
Membuat order nomor virtual. Wajib menyertakan provider_id dari /numbers.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| service_code | string | ✅ Ya | Kode layanan |
| service_name | string | ❌ Opsional | Nama layanan (untuk histori) |
| country_id | string | ✅ Ya | ID negara |
| country_name | string | ❌ Opsional | Nama negara (untuk histori) |
| provider_id | string | ✅ Ya | Dari response /numbers |
| price_original | number | ✅ Ya | Harga asli (sebelum markup) dari /numbers |
POST https://KingRockOTP.my.id/api/v1/s3/nokos/order x-api-key: dp_xxxxxxxxxxxxxx Content-Type: application/json { "service_code": "1", "service_name": "WhatsApp", "country_id": "6", "country_name": "Indonesia", "provider_id": "881", "price_original": 2500 }
{
"success": true,
"order": {
"id": "NUSA-812345",
"phone_number": "+62812xxxxxxx",
"price": 3500,
"status": "pending",
"expires_at": 1735900000000
}
}
Cek OTP
/s3/nokos/status
Mengecek status & kode OTP dari sebuah order. Panggil secara berkala (polling) sampai status menjadi received.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| order_id | string | ✅ Ya | ID order dari /order |
GET https://KingRockOTP.my.id/api/v1/s3/nokos/status?order_id=NUSA-812345 x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"data": {
"status": "received",
"otp_code": "482910"
}
}
Batalkan Order
/s3/nokos/cancel
Membatalkan order yang masih aktif. Saldo dikembalikan otomatis jika OTP belum pernah diterima. Order hanya bisa dibatalkan minimal 10 menit setelah dibuat.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| order_id | string | ✅ Ya | ID order yang akan dibatalkan |
POST https://KingRockOTP.my.id/api/v1/s3/nokos/cancel x-api-key: dp_xxxxxxxxxxxxxx Content-Type: application/json { "order_id": "NUSA-812345" }
{
"success": true,
"message": "Order berhasil dibatalkan"
}
/s3/nokos/status pada Server 3 mengecek status dari database internal kami (yang diperbarui otomatis tiap beberapa detik), bukan realtime langsung ke provider — jadi tetap lakukan polling seperti biasa.
Daftar Layanan
/s4/nokos/services
Mengambil daftar layanan/aplikasi yang tersedia di server ini.
GET https://KingRockOTP.my.id/api/v1/s4/nokos/services x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"data": [
{ "id": "1", "code": "1", "name": "WhatsApp" },
{ "id": "2", "code": "2", "name": "Telegram" }
]
}
Daftar Negara
/s4/nokos/countries
Mengambil daftar negara yang tersedia.
GET https://KingRockOTP.my.id/api/v1/s4/nokos/countries x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"data": [
{ "number_id": 6, "name": "Indonesia" },
{ "number_id": 1, "name": "Malaysia" }
]
}
Provider & Harga
/s4/nokos/numbers
Mengambil daftar provider/operator beserta harga untuk kombinasi layanan & negara tertentu.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| service_code | string | ✅ Ya | Kode layanan dari /services |
| country_id | string | ✅ Ya | number_id dari /countries |
GET https://KingRockOTP.my.id/api/v1/s4/nokos/numbers?service_code=1&country_id=6 x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"data": [
{
"provider_id": "881",
"label": "Nomor Virtual",
"price": 2500,
"price_with_markup": 3500,
"available": true
}
]
}
Order Nomor
/s4/nokos/order
Membuat order nomor virtual. Wajib menyertakan provider_id dari /numbers.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| service_code | string | ✅ Ya | Kode layanan |
| service_name | string | ❌ Opsional | Nama layanan (untuk histori) |
| country_id | string | ✅ Ya | ID negara |
| country_name | string | ❌ Opsional | Nama negara (untuk histori) |
| provider_id | string | ✅ Ya | Dari response /numbers |
| price_original | number | ✅ Ya | Harga asli (sebelum markup) dari /numbers |
POST https://KingRockOTP.my.id/api/v1/s4/nokos/order x-api-key: dp_xxxxxxxxxxxxxx Content-Type: application/json { "service_code": "1", "service_name": "WhatsApp", "country_id": "6", "country_name": "Indonesia", "provider_id": "881", "price_original": 2500 }
{
"success": true,
"order": {
"id": "SMSC-812345",
"phone_number": "+62812xxxxxxx",
"price": 3500,
"status": "pending",
"expires_at": 1735900000000
}
}
Cek OTP
/s4/nokos/status
Mengecek status & kode OTP dari sebuah order. Panggil secara berkala (polling) sampai status menjadi received.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| order_id | string | ✅ Ya | ID order dari /order |
GET https://KingRockOTP.my.id/api/v1/s4/nokos/status?order_id=SMSC-812345 x-api-key: dp_xxxxxxxxxxxxxx
{
"success": true,
"data": {
"status": "received",
"otp_code": "482910"
}
}
Batalkan Order
/s4/nokos/cancel
Membatalkan order yang masih aktif. Saldo dikembalikan otomatis jika OTP belum pernah diterima. Order hanya bisa dibatalkan minimal 10 menit setelah dibuat.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| order_id | string | ✅ Ya | ID order yang akan dibatalkan |
POST https://KingRockOTP.my.id/api/v1/s4/nokos/cancel x-api-key: dp_xxxxxxxxxxxxxx Content-Type: application/json { "order_id": "SMSC-812345" }
{
"success": true,
"message": "Order berhasil dibatalkan"
}
Dokumentasi & Ketentuan Layanan KingRockOTP OTP
1. Tentang Layanan
KingRockOTP OTP menyediakan layanan penyewaan nomor virtual untuk menerima kode verifikasi (OTP) dari berbagai aplikasi yang didukung. Kami hanya bertindak sebagai penyedia nomor virtual dan tidak memiliki hubungan dengan aplikasi pihak ketiga.
2. Ketentuan Akun
- Setiap pengguna wajib mendaftar akun.
- Pengguna bertanggung jawab atas keamanan akun dan password.
- Dilarang membagikan API Key kepada pihak lain.
- Aktivitas yang dilakukan menggunakan akun menjadi tanggung jawab pemilik akun.
3. Saldo & Deposit
- Deposit yang telah berhasil masuk tidak dapat dikembalikan (Non Refundable).
- Pastikan nominal deposit sesuai.
- Kesalahan transfer akibat kelalaian pengguna bukan tanggung jawab KingRockOTP OTP.
- Deposit otomatis akan diproses apabila pembayaran berhasil terverifikasi.
4. Pemesanan Nomor
- Nomor hanya berlaku untuk satu transaksi sesuai layanan yang dipilih.
- Masa aktif nomor mengikuti timer pada website.
- Nomor yang telah dibeli tidak dapat diganti kecuali sistem gagal memberikan layanan.
- Harga layanan dapat berubah sewaktu-waktu.
5. Refund
Refund hanya diberikan apabila:
- Nomor gagal menerima OTP.
- Nomor dibatalkan oleh sistem.
- Provider mengalami gangguan sebelum OTP diterima.
Refund tidak berlaku apabila:
- Pengguna salah memilih negara/operator.
- Pengguna membatalkan pesanan sendiri.
- OTP sudah berhasil diterima.
- Akun tujuan meminta verifikasi tambahan selain SMS.
6. Penggunaan API
- API hanya boleh digunakan untuk kebutuhan yang sah.
- Dilarang melakukan spam request.
- Dilarang menyebarkan API Key.
- Gunakan fitur Whitelist IP agar API lebih aman.
- Penyalahgunaan API dapat menyebabkan API dinonaktifkan.
7. Larangan
Pengguna dilarang menggunakan layanan untuk:
- Penipuan.
- Spam.
- Aktivitas ilegal.
- Penyalahgunaan identitas.
- Pelanggaran hukum yang berlaku.
Pelanggaran dapat mengakibatkan akun diblokir permanen tanpa pengembalian saldo.
8. Ketersediaan Layanan
KingRockOTP OTP berusaha menjaga uptime setinggi mungkin, namun tidak menjamin:
- Semua layanan selalu tersedia.
- Semua aplikasi selalu menerima nomor virtual.
- Semua OTP pasti masuk tepat waktu.
Gangguan provider berada di luar kendali kami.
9. API Rate Limit
Untuk menjaga stabilitas server:
- Request berlebihan dapat dibatasi.
- Aktivitas mencurigakan akan diblokir sementara.
- Abuse API dapat menyebabkan suspend akun.
10. Keamanan
Disarankan:
- Aktifkan Whitelist IP.
- Hubungkan akun Telegram agar mendapat notifikasi transaksi.
- Jangan membagikan password maupun API Key.
11. Perubahan Harga
Harga layanan dapat berubah sewaktu-waktu mengikuti harga dari provider tanpa pemberitahuan sebelumnya.
12. Perubahan Ketentuan
KingRockOTP OTP berhak mengubah syarat layanan kapan saja. Perubahan akan berlaku setelah dipublikasikan pada website.
13. Bantuan
Apabila mengalami kendala:
- Hubungi Customer Service melalui Telegram.
- Sertakan ID Pesanan agar proses pengecekan lebih cepat.
14. Disclaimer
Dengan menggunakan KingRockOTP OTP, pengguna dianggap telah membaca, memahami, dan menyetujui seluruh syarat dan ketentuan yang berlaku. KingRockOTP OTP tidak bertanggung jawab atas penyalahgunaan layanan oleh pengguna maupun pelanggaran terhadap ketentuan platform pihak ketiga.