Report Events
Nutzerverhalten-Events werden eingesetzt, um zentrale Informationen zu erfassen – darunter den Zeitpunkt des Ereignisses, die Umgebung, die durchgeführten Aktionen sowie deren Ausführung und die dahinterstehenden Gründe.
Das Melden von Nutzerereignissen muss mit der EUID (eindeutige Nutzer-ID) verknüpft sein.
API-Endpunkt
POST /v1/event/report
Authentifizierung des API-Aufrufs
Die EngageLab REST API verwendet HTTP Basic Authentication als Authentifizierungsmethode. Fügen Sie dazu das Feld „Authorization“ zum HTTP-Header hinzu:
Authorization: Basic ${base64_auth_string}
Authorization: Basic ${base64_auth_string}
Diesen Codeblock im schwebenden Fenster anzeigen
Der ${base64_auth_string} wird nach folgendem Schema generiert: base64(api_key:api_secret), wobei api_key und api_secret Platzhalter für Ihre Zugangsdaten sind.
- Der Header-Name lautet „Authorization“, der Wert ist das base64-kodierte „Benutzername:Passwort“-Paar (durch Doppelpunkt getrennt).
- Für die MA API entspricht der Benutzername dem APIKey und das Passwort dem APISecret. Bitte richten Sie eine API-Datenquelle ein, um APIKey und APISecret zu erhalten.
Beispielanfrage
Anfrage-Header
> POST /v1/event/report
> Content-Type: application/json
> Authorization: Basic N2Q0MzFlNDJkZmE2YTZkNjkzYWMyZDA0OjVlOTg3YWM2ZDJlMDRkOTVhOWQ4ZjBkMQ==
> POST /v1/event/report
> Content-Type: application/json
> Authorization: Basic N2Q0MzFlNDJkZmE2YTZkNjkzYWMyZDA0OjVlOTg3YWM2ZDJlMDRkOTVhOWQ4ZjBkMQ==
Diesen Codeblock im schwebenden Fenster anzeigen
Anfrage-Body
{
"app_key": "96441e4d73207a6517abfbbc", // Der AppKey der Anwendung, optional
"data": [
{
"euid": 10000091198, // Die EUID des Verhaltensergebnisses
"event_name": "sign_up", // Der Name des Ereignisses, eindeutig im Projekt
"itime": 1654076420772, // Der genaue Zeitstempel, wann das Ereignis aufgetreten ist
"random_id": "5b102148-0d28-4a6a-8658-483f7d1c735e", // Die Reporting-ID des Ereignisses, optional
"properties": {
"propertyA": "a", // Name der Ereigniseigenschaft: Eigenschaftswert
"propertyB": 2
}
},
{
"euid": 10000091199,
"event_name": "login",
"itime": 1654076420235,
"properties": {
"propertyC": "a",
"propertyD": 3,
"propertyJ": "true",
"propertyK": 169,
"propertyL": [
"test1",
"20231025"
]
}
}
]
}
{
"app_key": "96441e4d73207a6517abfbbc", // Der AppKey der Anwendung, optional
"data": [
{
"euid": 10000091198, // Die EUID des Verhaltensergebnisses
"event_name": "sign_up", // Der Name des Ereignisses, eindeutig im Projekt
"itime": 1654076420772, // Der genaue Zeitstempel, wann das Ereignis aufgetreten ist
"random_id": "5b102148-0d28-4a6a-8658-483f7d1c735e", // Die Reporting-ID des Ereignisses, optional
"properties": {
"propertyA": "a", // Name der Ereigniseigenschaft: Eigenschaftswert
"propertyB": 2
}
},
{
"euid": 10000091199,
"event_name": "login",
"itime": 1654076420235,
"properties": {
"propertyC": "a",
"propertyD": 3,
"propertyJ": "true",
"propertyK": 169,
"propertyL": [
"test1",
"20231025"
]
}
}
]
}
Diesen Codeblock im schwebenden Fenster anzeigen
Anfrageparameter
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
| app_key | String | Nein | AppKey der App oder Webanwendung; kann genutzt werden, um die erzeugende Anwendung zu kennzeichnen |
| data | Array | Ja | Liste der Verhaltensergebnisse |
| euid | Long | Ja | Eindeutige Nutzer-ID der Person, die das Verhaltensergebnis ausgelöst hat |
| event_name | String | Ja | Name des Ereignisses |
| itime | Long | Ja | Exakter Zeitstempel des Verhaltensergebnisses (13-stelliger Millisekundenwert) |
| random_id | String | Nein | Reporting-ID des Ereignisses zur Überprüfung der Einzigartigkeit; wird bei Nichtangabe automatisch generiert |
| properties | JSON-Objekt | Nein | Ereigniseigenschaften. Der Schlüssel ist der Name der Eigenschaft, der Wert ist der Eigenschaftswert. Anforderungen an Schlüsselnamen: Kleinbuchstaben, Zahlen, Unterstriche, muss mit einem Buchstaben beginnen. |
Rückgabeparameter
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
| code | Int | Ja | Gibt an, ob der API-Aufruf erfolgreich war. 0 steht für Erfolg, andere Werte für Fehler. |
| message | String | Ja | Ergebnisbeschreibung des API-Aufrufs; erläutert den Fehlercode. |
Erfolgreiche Rückgabe
{
"code": 0,
"message": "success"
}
{
"code": 0,
"message": "success"
}
Diesen Codeblock im schwebenden Fenster anzeigen
Fehlgeschlagene Rückgabe
{
"code": 40050,
"message": ""
}
{
"code": 40050,
"message": ""
}
Diesen Codeblock im schwebenden Fenster anzeigen
Fehlercodes
| Code | Beschreibung | Detaillierte Erklärung |
|---|---|---|
| 40050 | Authentifizierung des API-Aufrufs fehlgeschlagen. | Prüfen Sie, ob Projekt-ID und Projektschlüssel korrekt sind. |
| 40007 | EUID ist leer. | Prüfen Sie den Wert der EUID. |
| 50031 | Projekt-ID ist ungültig. | Prüfen Sie, ob APIKey und APISecret korrekt sind. |
| 50034 | Projekt-ID existiert nicht. | Prüfen Sie, ob APIKey und APISecret korrekt sind und ob das Projekt gelöscht wurde. |
| 50074 | API-Datenquelle existiert nicht. | Prüfen Sie, ob APIKey und APISecret korrekt sind und ob die API-Datenquelle gelöscht wurde. |
| 55004 | Geschäftsspezifische Parameter sind ungültig. | Prüfen Sie, ob die Felder der Anfrageparameter korrekt sind. |
| 55101 | Anzahl der Nutzer-IDs überschreitet das Limit. | Prüfen Sie, ob mehr als 100 Nutzer-IDs übermittelt wurden. |
| 55102 | Ungültige Nutzer-Attributnamen vorhanden. | Prüfen Sie, ob der Attributname den Namensanforderungen entspricht, nicht leer ist, keine reservierten Zeichen verwendet und die Längenbegrenzung einhält. |
| 55103 | Nutzer-Attributwerte dürfen nicht leer sein. | Prüfen Sie, ob der Wert des Nutzer-Attributs im Anfrage-Body leer ist. |
| 55105 | Wert der Nutzer-ID überschreitet 256 Zeichen. | Prüfen Sie, ob der Wert der Nutzer-ID 256 Zeichen überschreitet. |
| 55106 | Name der Nutzer-ID ist nicht im unterstützten Bereich. | Prüfen Sie, ob der Name der Nutzer-ID user_id, anonymous_id oder registration_id ist. |
| 55107 | Wert der Nutzer-ID ist leer. | Prüfen Sie, ob der Wert der Nutzer-ID im Anfrage-Body leer ist. |
| 55108 | Ungültige EUID. | Prüfen Sie den Wert der EUID. |
| -1 | Interner Serverfehler. | Wenden Sie sich an den technischen Support von EngageLab. |

