Autentikasi (API Key)

Semua permintaan ke API SentralPesan wajib menyertakan API Key di dalam HTTP Header. Anda bisa mendapatkan API Key rahasia ini di menu API Keys & Docs pada Dashboard setelah Anda berlangganan paket yang mendukung fitur API.

Header Key Authorization
Header Value Bearer [API_KEY_ANDA]
Referensi Device ID

Sistem kami memungkinkan Anda menghubungkan banyak nomor WhatsApp sekaligus. Oleh karena itu, Anda wajib menyertakan parameter device_id di dalam body request agar sistem mengetahui dari nomor WhatsApp mana pesan tersebut harus dikirimkan.

Anda dapat melihat daftar Device ID aktif Anda di menu Device & QR Code pada Dashboard pengguna.

Endpoint: Kirim Pesan Teks

Gunakan endpoint ini untuk mengirim pesan teks biasa ke nomor tujuan manapun. Sistem secara otomatis akan memformat awalan nomor 08 menjadi 628.

POST https://sentralpesan.com/api/send_message

Headers Wajib:

Content-Type application/json
Authorization Bearer [API_KEY_ANDA]

Parameter Body (JSON):

Parameter Tipe Keterangan
device_id String ID Perangkat Anda (Contoh: SP-079547). Wajib diisi.
number String Nomor tujuan pengiriman (Contoh: 628123456789). Wajib diisi.
message String Isi teks pesan yang ingin dikirim. Mendukung karakter Emoji. Wajib diisi.

Contoh Request (cURL):

curl -X POST https://sentralpesan.com/api/send_message \
-H "Content-Type: application/json" \
-H "Authorization: Bearer GANTI_DENGAN_API_KEY_ANDA" \
-d '{
    "device_id": "SP-XXXXXX",
    "number": "6281234567890",
    "message": "Halo! Ini adalah notifikasi sistem dari SentralPesan."
}'

Contoh Respons Kembalian (JSON)

Jika Sukses Terkirim (HTTP 200)
{
    "status": "success",
    "message": "Pesan berhasil masuk ke jaringan WhatsApp.",
    "data": {
        "device_id": "SP-XXXXXX",
        "number": "6281234567890",
        "message_id": "true_6281234567890@c.us_3EB0..."
    }
}
Jika Gagal / Device Offline (HTTP 400/401)
{
    "status": "failed",
    "message": "Perangkat sedang Offline. Silakan buka dashboard dan pastikan perangkat sudah di-scan (QR Code)."
}
Jika Pending / Timeout (HTTP 202)
{
    "status": "pending",
    "message": "Sistem sibuk. Pesan tertahan di antrean (Timeout).",
    "data": {
        "device_id": "SP-XXXXXX",
        "number": "6281234567890",
        "message_id": null
    }
}
Contoh Skrip PHP Terintegrasi (Siap Pakai)

Jika Anda menggunakan bahasa pemrograman PHP, Anda dapat menyalin kode di bawah ini untuk menguji pengiriman pesan langsung dari server Anda.

<?php
$curl = curl_init();

// Siapkan Data JSON
$payload = json_encode(array(
  "device_id" => "MASUKAN_DEVICE_ID_ANDA", 
  "number" => "081234567890", 
  "message" => "Halo! Ini adalah pesan testing otomatis dari API SentralPesan."
));

// Konfigurasi cURL
curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://sentralpesan.com/api/send_message',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS => $payload,
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Authorization: Bearer MASUKAN_API_KEY_ANDA_DI_SINI'
  ),
));

// Eksekusi API
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);

// Evaluasi Hasil
if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo "Hasil Response API:\n" . $response;
}
?>