1. Memulai integrasi
- Daftar akun melalui Daftar Member/Reseller dan ikuti proses aktivasi akun.
- Login ke dashboard Member/Reseller.
- Buka menu Profil → Kredensial API atau Dokumentasi API. API URL dan API Key akun tersedia di sana.
- Simpan API Key di konfigurasi server website Anda. Jangan masukkan key ke kode JavaScript publik atau HTML pelanggan.
2. API URL & autentikasi
Semua request dikirim dengan metode POST ke alamat berikut. API menerima parameter form-urlencoded; gunakan header X-API-Key untuk autentikasi.
Memuat API URL…Content-Type: application/x-www-form-urlencoded X-API-Key: API_KEY_ANDA action=services
3. Daftar endpoint
POSTaction=services
Mengambil daftar layanan aktif yang memang tersedia untuk pemesanan melalui API, beserta ID, jenis target, harga Member/Reseller, dan batas jumlah.
POSTaction=balance
Mengambil saldo akun Member/Reseller yang memiliki API Key tersebut.
POSTaction=add
Membuat pesanan baru dengan saldo Member/Reseller. Parameter wajib: service, link, quantity.
POSTaction=status
Memeriksa status dan informasi jumlah order yang dimiliki akun tersebut.
POSTaction=refill, cancel, refill_status
Endpoint tindakan tambahan untuk pesanan yang dimiliki akun dan memenuhi ketentuan layanan/admin. Permintaan refill/cancel bisa berupa pengajuan; tidak berarti provider langsung menjalankannya.
4. Mengambil Service List
Parameter:
| Parameter | Wajib | Penjelasan |
|---|---|---|
action | Ya | services |
curl -X POST 'https://rpsmm.web.id/api.php' \ -H 'X-API-Key: API_KEY_ANDA' \ -H 'Content-Type: application/x-www-form-urlencoded' \ --data 'action=services'
Contoh bentuk item respons (nama, ID, harga, dan angka adalah ilustrasi):
[{
"service": "SERVICE_ID",
"name": "Instagram Followers",
"type": "username",
"rate": "25000.00",
"min": 100,
"max": 100000,
"refill": false,
"cancel": false,
"platform": "Instagram",
"category": "Followers"
}]
Ambil ID layanan dari respons API setiap kali memperbarui katalog. Daftar hanya mencakup layanan yang aktif dan dapat dipesan melalui jalur API; layanan manual yang harus diproses langsung oleh Admin tidak ditawarkan sebagai order API.
5. Memeriksa saldo
curl -X POST 'https://rpsmm.web.id/api.php' \ -H 'X-API-Key: API_KEY_ANDA' \ -H 'Content-Type: application/x-www-form-urlencoded' \ --data 'action=balance'
Contoh respons:
{
"balance": "100000.00",
"currency": "IDR",
"account_type": "RESELLER"
}
6. Membuat pesanan
| Parameter | Wajib | Penjelasan |
|---|---|---|
action | Ya | add |
service | Ya | Service ID dari services. |
link | Ya | Target sesuai jenis layanan: URL, username, atau target yang didukung. |
quantity | Ya | Jumlah dalam batas min dan max. |
username | Kondisional | Wajib untuk layanan yang meminta username tambahan, seperti kategori komentar tertentu. |
comments | Kondisional | Daftar komentar bila layanan mewajibkannya; satu komentar per baris. |
curl -X POST 'https://rpsmm.web.id/api.php' \ -H 'X-API-Key: API_KEY_ANDA' \ -H 'Content-Type: application/x-www-form-urlencoded' \ --data-urlencode 'action=add' \ --data-urlencode 'service=SERVICE_ID' \ --data-urlencode 'link=https://contoh.com/target' \ --data-urlencode 'quantity=1000'
Contoh respons pesanan diterima:
{
"order": "RP12345",
"display_order_id": "RP12345",
"charge": "25000.00",
"balance": "75000.00",
"status": "Pending",
"message": "Order berhasil dibuat dan masuk proses."
}
7. Memeriksa status pesanan
curl -X POST 'https://rpsmm.web.id/api.php' \ -H 'X-API-Key: API_KEY_ANDA' \ -H 'Content-Type: application/x-www-form-urlencoded' \ --data-urlencode 'action=status' \ --data-urlencode 'order=RP12345'
Contoh respons:
{
"order": "RP12345",
"display_order_id": "RP12345",
"status": "Partial",
"start_count": 120,
"remains": 500,
"charge": "12500.00",
"refund": "12500.00"
}
Status hasil akan mengikuti catatan pesanan RP SMM yang tersinkron dengan provider. Contoh respons di atas hanya ilustrasi format, bukan status order aktif.
8. Refill dan Cancel
Parameter utama adalah action dan order. Contoh pengajuan cancel:
curl -X POST 'https://rpsmm.web.id/api.php' \ -H 'X-API-Key: API_KEY_ANDA' \ -H 'Content-Type: application/x-www-form-urlencoded' \ --data-urlencode 'action=cancel' \ --data-urlencode 'order=RP12345'
Gunakan action=refill_status dengan order dan, bila tersedia, action_id untuk memeriksa status refill. Ketersediaan tergantung pengaturan layanan, masa garansi, status order, dan persetujuan/proses yang berlaku di RP SMM.
9. Kode error umum
| HTTP | Arti | Tindakan |
|---|---|---|
| 400 | Parameter, target, jumlah, atau service ID tidak valid. | Periksa parameter dan batas layanan. |
| 401 | API Key tidak valid, dinonaktifkan, atau bukan milik akun Member/Reseller aktif. | Periksa API Key dan status akun. |
| 404 | Order tidak ditemukan atau bukan milik akun tersebut. | Gunakan order ID dari akun yang sama. |
| 409 | Layanan belum tersedia untuk pemrosesan API atau tindakan tidak dapat diproses. | Periksa ketersediaan layanan dan ketentuan tindakan. |
| 429 | Batas permintaan sementara terlampaui. | Kurangi frekuensi request lalu coba kembali. |
| 500 | Gangguan internal. | Coba kembali setelah jeda; jangan mengirim order berulang tanpa memeriksa status. |
10. Keamanan & praktik integrasi
- Kirim API request dari backend/server website Anda, bukan browser pelanggan.
- Simpan API Key sebagai secret di konfigurasi server.
- Batasi request dan jangan polling status terlalu sering.
- Setelah timeout saat membuat order, periksa status/riwayat sebelum mengirim order baru untuk menghindari pesanan ganda.
- API key hanya membuka pesanan dan saldo milik akun Member/Reseller tersebut.
