API v3 mempertahankan kontrak key + action yang familiar dengan respons JSON. Client reseller yang ada dapat langsung mengganti base URL; field dan action lanjutan v3 adalah tambahan opsional.
Pendaftaran gratis melalui /register — email atau Google OAuth. Tidak perlu kartu kredit untuk membuat API key, hanya untuk mengisi wallet guna membuat order live.
Setelah login, buka /dashboard/api. Klik "Generate key" dan salin nilai mentahnya — nilai ini hanya ditampilkan sekali, tidak lagi. Jika Anda kehilangannya, cabut key tersebut lalu buat yang baru. Setiap pengguna bisa memiliki hingga 5 key aktif.
Semua key Anda berbagi limit request per menit efektif akun. Successful spend sepanjang waktu menentukan tier otomatis; limit IP dan action juga dapat berlaku — lihat Rate limit.
Menampilkan services adalah panggilan read-only paling sederhana. action=services mengembalikan array kompatibilitas cache dari service aktif dengan rate sesuai akun, min, max, dan flag kemampuan. Gunakan action=catalog jika Anda membutuhkan pagination, pencarian, ketersediaan, metadata platform/kategori, atau field freshness. Ganti YOUR_API_KEY dengan key dari langkah 2.
# 1. List active catalog services
curl -X POST https://notpanel.com/api/v3 \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "key=YOUR_API_KEY&action=services"const res = await fetch("https://notpanel.com/api/v3", {
method: "POST",
headers: { "Content-Type": "application/x-www-form-urlencoded" },
body: new URLSearchParams({
key: "YOUR_API_KEY",
action: "services",
}),
});
const services = await res.json();
console.log(`Found ${services.length} services`);import requests
res = requests.post(
"https://notpanel.com/api/v3",
data={"key": "YOUR_API_KEY", "action": "services"},
)
services = res.json()
print(f"Found {len(services)} services")<?php
$body = http_build_query([
'key' => 'YOUR_API_KEY',
'action' => 'services',
]);
$response = file_get_contents('https://notpanel.com/api/v3', false, stream_context_create([
'http' => [
'method' => 'POST',
'header' => "Content-Type: application/x-www-form-urlencoded\r\n",
'content' => $body,
],
]));
$services = json_decode($response, true);
echo "Found " . count($services) . " services\n";
Butuh nama yang natural bagi user regional Anda? Tambahkan language=id (atau en, es, pt, ru, tr, ar, hi, fr, zh) ke services atau catalog. Nama dilokalkan dengan terminologi pasar terkurasi sesuai pemakaian nyata di pasar, brand tetap mudah dikenali, dan response melaporkan bahasa yang benar-benar dipakai. Jangan kirim parameter ini untuk mempertahankan bentuk Inggris lama. Admin dapat meninjau atau menyempurnakan setiap nama.
Pilih service, isi wallet, lalu panggil action=add dengan field tipe layanan. Client lama dapat mengirim request yang familiar tanpa perubahan. Untuk retry presisi, tambahkan request_id unik maksimal 128 karakter secara opsional. Lihat Buat order untuk daftar parameter lengkap.
Polling status untuk order individual atau batch hingga 100 ID. Untuk integrasi berbasis event, daftarkan sebuah webhook untuk enam event yang didukung: order.completed, order.partial, order.processing, order.in_progress, order.refunded, dan order.refill_completed. Pengiriman bersifat best-effort dengan retry; rekonsiliasi state penting melalui action=status.
Ganti base URL dan pertahankan call key + action yang familiar. services, add, status, balance, refill, refill_status, dan cancel bekerja langsung. Gunakan catalog, refund_quote, key retry presisi, batch, dan webhook bertanda tangan saat dibutuhkan.