logoDokumen
Cari

IKHTISAR REST API

Batasan Dasar

  • API ini dirancang mengikuti spesifikasi HTTP dan REST. Misalnya, permintaan query menggunakan metode GET, dan permintaan pengiriman menggunakan metode POST. Jika permintaan tidak menggunakan metode HTTP yang sesuai, maka akan dikembalikan error.
  • Kecuali dinyatakan lain, nilai parameter pemanggilan harus ditranskodekan sebagai UTF-8 dan dienkode menggunakan URL encoding.

Batasan Frekuensi Permintaan

API kami menerapkan batasan frekuensi pemanggilan untuk menjaga stabilitas dan keadilan layanan. Batas QPS (Queries Per Second) untuk setiap AppKey adalah sebagai berikut:

  • Batas Standar: Maksimal 500 permintaan per detik.
  • Batas Lanjutan: Jika Anda adalah pelanggan paket berbayar dan AppKey berbayar Anda membutuhkan batas QPS lebih tinggi, silakan hubungi tim bisnis kami: Sales@engagelab.com.

Pusat Data dan Base URL

Mulai 19 Maret 2025, pengembang yang baru mengakses Engagelab Push API diminta untuk menggunakan nama domain berikut. Base URL lama dengan akhiran .cc masih dapat digunakan, namun pengembang disarankan untuk beralih ke nama domain terbaru.

Pusat Data Base URL
Singapura https://pushapi-sgp.engagelab.com
Virginia, AS https://pushapi-usva.engagelab.com
Frankfurt, Jerman https://pushapi-defra.engagelab.com
Hong Kong, Tiongkok https://pushapi-hk.engagelab.com

Saat menggunakan REST API, Anda perlu menggabungkan base URL yang dipilih dengan path API spesifik untuk mendapatkan endpoint lengkap.

{base URL}/{API path}
              
              {base URL}/{API path}

            
Tampilkan blok kode ini di jendela mengambang

Di sini, {base URL} adalah base URL pusat data yang dipilih, dan {API path} adalah path endpoint API tertentu, misalnya v4/devices/{registration_id}.

Contoh:

  • Misalkan pusat data Singapura dipilih dengan base URL https://pushapi-sgp.engagelab.com.
  • Jika tujuannya menghapus informasi registrasi untuk perangkat tertentu, dan path API-nya adalah v4/devices/{registration_id}, maka endpoint API lengkapnya menjadi:
https://pushapi-sgp.engagelab.com/v4/devices/{registration_id}
              
              https://pushapi-sgp.engagelab.com/v4/devices/{registration_id}

            
Tampilkan blok kode ini di jendela mengambang

Di sini, {registration_id} adalah ID registrasi perangkat yang dimaksud.

Dengan cara ini, Anda dapat membangun URL endpoint API lengkap untuk mengakses berbagai pusat data.

Metode Autentikasi

Engagelab REST API menggunakan autentikasi HTTP basic. Cara dasarnya adalah dengan menambahkan Authorization pada header HTTP:

Authorization: Basic base64_auth_string
              
              Authorization: Basic base64_auth_string

            
Tampilkan blok kode ini di jendela mengambang

Algoritma pembuatan base64_auth_string: base64(appKey:masterSecret)
String yang terdiri dari appKey, tanda titik dua, dan masterSecret kemudian dikonversi dengan base64.
Silakan buka halaman AppPush dan dapatkan informasi AppKey serta Master Secret di halaman Info APP.
image.png

Contoh Autentikasi

AppKey Anda adalah "c96f42e0d2e662e45d035ab1", masterSecret adalah "df4d59e84eac2f9d53b36f12", memanggil Push API v4 menggunakan perintah curl seperti berikut:

curl --insecure -X POST -v https://pushapi-sgp.engagelab.com/v4/push -H "Content-Type: application/json" -u "c96f42e0d2e662e45d035ab1:df4d59e84eac2f9d53b36f12" -d '{ "from": "push", "to": "all", "body": { "platform": ["android","ios"], "notification": { "alert": "Hi,MTPush !", "notification": { "alert" :"Hello, Push!", "android": { "alert": "Hi, Push!", "title": "Kirim ke Android", "builder_id": 1, "extras": { "newsid": 321 } }, "ios": { "alert": "Hi, MTPush!", "sound": "default", "badge": "+1", "extras": { "newsid": 321 } } } } }, "request_id": "12345678", "custom_args": "informasi bisnis" }'
              
               curl --insecure -X POST -v https://pushapi-sgp.engagelab.com/v4/push 
-H "Content-Type: application/json" 
-u "c96f42e0d2e662e45d035ab1:df4d59e84eac2f9d53b36f12" 
-d '{
    "from": "push",
    "to": "all",
    "body": {
        "platform": ["android","ios"],
        "notification": {
            "alert": "Hi,MTPush !",
            "notification": {
                "alert" :"Hello, Push!",
                "android": {
                    "alert": "Hi, Push!",
                    "title": "Kirim ke Android",
                    "builder_id": 1,
                    "extras": {
                        "newsid": 321
                    }
                },
                "ios": {
                    "alert": "Hi, MTPush!",
                    "sound": "default",
                    "badge": "+1",
                    "extras": {
                        "newsid": 321
                    }
                }
            }
        }
    },
    "request_id": "12345678",
    "custom_args": "informasi bisnis"
}'

            
Tampilkan blok kode ini di jendela mengambang

Contoh Permintaan HTTP:

> POST /v4/push HTTP/1.1 > Authorization: Basic Yzk2ZjQyZTBkMmU2NjJlNDVkMDM1YWIxOmRmNGQ1OWU4NGVhYzJmOWQ1M2IzNmYxMg==
              
              > POST /v4/push HTTP/1.1
> Authorization: Basic Yzk2ZjQyZTBkMmU2NjJlNDVkMDM1YWIxOmRmNGQ1OWU4NGVhYzJmOWQ1M2IzNmYxMg==

            
Tampilkan blok kode ini di jendela mengambang
icon
Hubungi Sales