Notiblast
HomeApp
HomeApp
  1. Devices
  • API Key & Izin
  • Email
    • 1. Alur Email
    • 2. Domain & DNS
    • 3. Kirim Email
    • 4. Status Email
    • Messages
      • List Messages
      • Export Messages (CSV)
      • Detail Message
    • Send Email
      POST
  • Whatsapp
    • 1. Alur WhatsApp
    • 2. Hubungkan Nomor
    • 3. Setelah Nomor Terhubung
    • 4. Template Pesan
    • 5. Syarat Template Authentication
    • 6. Verifikasi Bisnis Meta
    • 7. Kirim & Status Pesan
    • Messages
      • List Messages
      • Detail Message
      • Export Messages (CSV)
    • Send WhatsApp
      POST
  • Reports
    • Overview (Dasbor)
    • Email Monitoring
    • WhatsApp Monitoring
    • Push Notification Monitoring
    • Deliverability Summary
  • Push
    • 1. Alur Push Notification
    • 2. Aplikasi Push & Firebase
    • 3. Pasang SDK
    • 4. List Penerima
    • 5. Kirim & Hasil Push
    • Devices
      • Register Device
        POST
      • Release Device
        POST
    • Messages
      • List Push Messages
      • Get Push Message
    • Lists
      • List Push Lists
      • List Push List Members
      • Add Push List Members
      • Remove Push List Members
    • Send Push Notification
      POST
  • Api Logs
    • List API Logs
    • Detail API Log
  • Webhooks
    • Webhook Events (Notiblast → Endpoint Anda)
  1. Devices

Register Device

Developing
POST
https://primaryapi.notiblast.com/v1/push/devices
Mendaftarkan atau memperbarui perangkat. Idempoten: token yang sama pada aplikasi yang sama memperbarui baris yang ada, tidak membuat duplikat.
Panggil ini setiap kali aplikasi dibuka dan setiap kali SDK Firebase memberi token baru.
external_id yang tidak disebut mempertahankan ikatan lama; kirim null eksplisit untuk melepasnya.

Tanpa autentikasi -- dan itu disengaja#

Endpoint ini dipanggil aplikasi client Anda (APK / bundel JS), bukan server Anda. Kunci rahasia yang ditanam di sana pasti bisa dibongkar, jadi memasangnya hanya memberi rasa aman palsu sambil membocorkan kunci yang sama ke setiap pemasang aplikasi.
Yang menjaga jalur ini bukan kredensial, melainkan: company selalu dibaca dari push_app_id (tidak pernah dari body), batas panjang token yang ketat, penolakan field asing, platform harus diaktifkan, dan rate limit per IP.
external_id diterima apa adanya tanpa verifikasi identitas -- tidak ada HMAC. Sama seperti OneSignal. Artinya siapa pun yang tahu push_app_id bisa mengaku sebagai external_id mana pun; jangan mengirim isi rahasia lewat notifikasi push.

Request

Header Params

Body Params application/jsonRequired

Examples

Responses

🟢201Perangkat baru
application/json
Bodyapplication/json

🟢200Perangkat sudah ada, diperbarui
🟠404push_app_id tidak dikenal
🟠422Platform tidak diaktifkan
🟠429Rate limit per IP (60 per 15 menit)
🟠400Body tidak valid
Request Request Example
Shell
JavaScript
Java
Swift
cURL
curl --location 'https://primaryapi.notiblast.com/v1/push/devices' \
--header 'Content-Type: application/json' \
--data '{
    "push_app_id": "507f1f77bcf86cd799439011",
    "token": "cGV4Y2FtcGxlOkFQQTkxYkZ4ZXhhbXBsZXRva2VuZnJvbWZpcmViYXNlc2RrMDEyMzQ1Njc4OWFiY2RlZg",
    "platform": "android",
    "external_id": "usr_88213",
    "os_name": "Android",
    "os_version": "14"
}'
Response Response Example
201 - Example 1
{
    "request_id": "0f9c2a41-8d3e-4c77-9a2b-5f1e6d0c8a73",
    "message": "Push device registered",
    "data": {
        "_id": "507f1f77bcf86cd799439055",
        "push_app": "507f1f77bcf86cd799439011",
        "push_app_name": "Toko Maju — Pelanggan",
        "platform": "android",
        "token_preview": "cGV4Y2…Ab3F",
        "external_id": "usr_88213",
        "os_name": "Android",
        "os_version": "14",
        "status": "subscribed",
        "status_reason": null,
        "dead_at": null,
        "last_active_at": "2026-09-16T01:42:09.000Z",
        "created_at": "2026-07-04T08:12:00.000Z"
    }
}
Modified at 2026-10-21 07:54:50
Previous
5. Kirim & Hasil Push
Next
Release Device
Built with