REST-API-Übersicht

Grundlegende Anforderungen

  • Die API ist so konzipiert, dass sie den HTTP- und REST-Spezifikationen entspricht. Beispielsweise verwendet eine Abfrage die GET-Methode, während eine Übermittlung die POST-Methode nutzt. Wird eine Anfrage nicht mit der entsprechenden HTTP-Methode gestellt, wird ein Fehler zurückgegeben.
  • Sofern nicht anders angegeben, sollten die Aufrufparameter als UTF-8 kodiert und URL-codiert werden.

Anfrage-Limits

Unsere API begrenzt die Aufrufhäufigkeit, um die Stabilität und Fairness des Dienstes zu gewährleisten. Die QPS-Limits (Queries Per Second) lauten wie folgt pro AppKey:

  • Standard-Limit: Maximal 500 Anfragen pro Sekunde.
  • Erweitertes Limit: Wenn Sie Abonnent unseres kostenpflichtigen Tarifs sind und Ihr kostenpflichtiger AppKey ein höheres QPS-Limit benötigt, wenden Sie sich bitte an unser Vertriebsteam: Sales@engagelab.com.

Rechenzentren und Basis-URL

Ab dem 19.03.2025 werden Entwickler, die neu auf die Engagelab Push API zugreifen, gebeten, den folgenden Domainnamen zu verwenden. Die ursprüngliche Basis-URL mit der Endung .cc kann weiterhin genutzt werden, es wird jedoch empfohlen, auf den neuen Domainnamen umzusteigen.

Rechenzentrum Basis-URL
Singapur https://pushapi-sgp.engagelab.com
Virginia, USA https://pushapi-usva.engagelab.com
Frankfurt, Deutschland https://pushapi-defra.engagelab.com
Hongkong, China https://pushapi-hk.engagelab.com

Bei der Nutzung der REST-API muss die gewählte Basis-URL mit dem spezifischen API-Pfad kombiniert werden, um den vollständigen Endpunkt zu erhalten.

{Basis-URL}/{API-Pfad}
              
              {Basis-URL}/{API-Pfad}

            
Diesen Codeblock im schwebenden Fenster anzeigen

Hierbei steht {Basis-URL} für die gewählte Basis-URL des Rechenzentrums und {API-Pfad} für den spezifischen API-Endpunkt, z. B. v4/devices/{registration_id}.

Beispiel:

  • Angenommen, das Rechenzentrum in Singapur wird mit der Basis-URL https://pushapi-sgp.engagelab.com ausgewählt.
  • Wenn die Registrierungsinformationen eines bestimmten Geräts gelöscht werden sollen und der API-Pfad lautet v4/devices/{registration_id}, ergibt sich folgender vollständiger API-Endpunkt:
https://pushapi-sgp.engagelab.com/v4/devices/{registration_id}
              
              https://pushapi-sgp.engagelab.com/v4/devices/{registration_id}

            
Diesen Codeblock im schwebenden Fenster anzeigen

Dabei steht {registration_id} für die Registrierungs-ID des jeweiligen Geräts.

Mit diesem Ansatz können Sie vollständige API-Endpunkt-URLs für verschiedene Rechenzentren erstellen.

Authentifizierungsmethode

Die Engagelab REST-API verwendet HTTP Basic Authentication. Die grundlegende Vorgehensweise besteht darin, den Authorization-Header wie folgt hinzuzufügen:

Authorization: Basic base64_auth_string
              
              Authorization: Basic base64_auth_string

            
Diesen Codeblock im schwebenden Fenster anzeigen

Der base64_auth_string wird wie folgt erzeugt: base64(appKey:masterSecret)
Die Zeichenkette besteht aus appKey, Doppelpunkt und masterSecret und wird anschließend base64-kodiert.
Gehen Sie zur AppPush-Seite, um die AppKey- und Master-Secret-Informationen auf der APP-Info-Seite zu erhalten.
image.png

Authentifizierungsbeispiel

Ihr appKey ist „c96f42e0d2e662e45d035ab1“ und Ihr masterSecret lautet „df4d59e84eac2f9d53b36f12“. Der Aufruf der Push-API v4 per curl-Befehl sieht folgendermaßen aus:

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": "Send to Android", "builder_id": 1, "extras": { "newsid": 321 } }, "ios": { "alert": "Hi, MTPush!", "sound": "default", "badge": "+1", "extras": { "newsid": 321 } } } } }, "request_id": "12345678", "custom_args": "business info" }'
              
               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": "Send to Android",
                    "builder_id": 1,
                    "extras": {
                        "newsid": 321
                    }
                },
                "ios": {
                    "alert": "Hi, MTPush!",
                    "sound": "default",
                    "badge": "+1",
                    "extras": {
                        "newsid": 321
                    }
                }
            }
        }
    },
    "request_id": "12345678",
    "custom_args": "business info"
}'

            
Diesen Codeblock im schwebenden Fenster anzeigen

HTTP-Anfragebeispiel:

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

            
Diesen Codeblock im schwebenden Fenster anzeigen
icon
Vertrieb kontaktieren