Skip to main content

EMID Webservice

📝 Einleitung

Um zu einer EMID automatisiert die zugehörigen Touchpoint-Daten aus dem easy.affiliate-System auslesen zu können, stellt die easy Marketing GmbH eine Webservice-API zur Verfügung. Diese liefert zu einer EMID (= _id eines Dokuments der MongoDB-Collection tracking.action) den kompletten Touchpoint zurück: Zeitpunkt, Typ, Triplet (Kampagne/Projekt/Werbemittel), Weiterleitungs-URL sowie alle GET-Parameter des ursprünglichen Requests.

Typischer Use-Case: Zu einer Liste von aaaids/EMIDs die GET-Parameter (z. B. Partner-ID) ermitteln, ohne manuellen Einzel-Download über TripleA.

Jedem User stehen hierfür ein Authentifizierungs-Token und eine Login_id zur Verfügung, die über das Frontend abgerufen werden können.

  • User-ID: Wo ist die User-ID hinterlegt? (Siehe Frontend-Profil)
  • Access-Token: Wo ist der Access-Token hinterlegt? (Siehe API-Einstellungen)

Endpunkte

Zielgruppe URL
Admin https://SUBDOMAIN.de/ws/V6/admin/JSON/Emids/Read
Advertiser https://SUBDOMAIN.de/ws/V6/advertiser/JSON/Emids/Read

Beispiele

Beispiel mit cURL

curl -X POST \
  -H "Content-Type: application/json" \
  -H "X-Network-ID: -1" \
  -H "X-Auth-Token: ADMIN_APIUSER_TOKEN" \
  -H "X-Auth-ID: ADMIN_APIUSER_LOGIN_ID" \
  -d '{ "emid": "6512a1f0c3e4b2a1d0f9e8a7" }' \
  https://DOMAIN/ws/V6/admin/JSON/Emids/Read

Codebeispiel

Mit der folgenden Methode kann zu einer EMID der Touchpoint ausgelesen werden. Ein Beispielaufruf sieht folgendermaßen aus:

Headers
Variable Wert / Bedeutung
Content-Type application/json
X-Network-ID -1
X-Auth-Token ADMIN_APIUSER_TOKEN
X-Auth-ID ADMIN_APIUSER_LOGIN_ID
Body
{
    "emid": "1314e1f0c3a4b2a1d0f3e5a7"
}

Variablenerläuterung

Headers

Variable Bedeutung Datentyp
Content-Type Der Content-Type des Requests String
X-NETWORKID Hier wird die ID des Mandanten eingetragen. Wenn nur ein Mandant vorhanden ist oder mandantenübergreifend gearbeitet wird, muss der Wert “-1” eingetragen werden. Integer
X-AUTH-TOKEN Hier wird der API-Authentifizierungs-Token des Admin Nutzers hinterlegt. String
X-AUTH-ID Hier wird die ID des Admin Nutzers hinterlegt. Integer

Body

Parameter Beschreibung Datentyp Pflichtfeld
emid Klick-/Action-ID (24-stellig hex) = _id des Dokuments in tracking.action. Alternativ als id übergebbar. String ✅ Ja

Response

Die Antwort enthält das komplette Action-Dokument im Feld data.

Beispiel (Erfolg)
{
    "data": {
        "_id": "6512a1f0c3e4b2a1d0f9e8a7",
        "sessionid": "…",
        "time": "2026-09-15 06:51:30",
        "type": "click",
        "triplet": {
            "campaign_id": 146,
            "project_id": 42,
            "admedia_id": 7
        },
        "iphash": "…",
        "deeplink": "https://ziel-shop.de/…",
        "Request": {
            "Get": {
                "partner_id": "12345",
                "subid": "…"
            },
            "Server": {
                "HTTP_REFERER": "https://…",
                "HTTP_USER_AGENT": "Mozilla/5.0 …"
            }
        }
    },
    "log": "no logmessage provided",
    "sessionId": null,
    "session": null
}

Felder im data-Objekt

Feld Beschreibung Datentyp
_id EMID (ObjectId des Action-Dokuments) String
sessionid Session-ID des Users String
time Zeitpunkt des Touchpoints Datetime
type Typ des Touchpoints (click, view, …) String
triplet.campaign_id Kampagnen-ID Integer
triplet.project_id Projekt-ID Integer
triplet.admedia_id Werbemittel-ID Integer
iphash Hash der IP-Adresse String
deeplink Weiterleitungs-/Ziel-URL String
Request.Get Alle GET-Parameter des Requests (z. B. Partner-ID) Object
Request.Server Server-Variablen des Requests (HTTP_REFERER, HTTP_USER_AGENT, …) Object

Hinweis: Der Endpunkt liefert IDs, keine Klartext-Namen. Kampagnen-/Projekt-/Werbemittel-Titel müssen bei Bedarf separat aufgelöst werden.


Fehler

Fehler werden als JSON mit error: true zurückgegeben.

Typ message (Beispiel) Ursache
Ws\NotFoundException The requested entity 'Action <emid> not found' couldn't be found. EMID existiert nicht in tracking.action
InvalidArgumentException internal server error. Details: Invalid emid format emid ist keine gültige 24-stellige Hex-ObjectId
InvalidArgumentException Missing emid parameter emid/id fehlt im Body
403 Authentifizierung fehlgeschlagen (Token/Session ungültig)
Beispiel (nicht gefunden)
{
    "data": false,
    "error": true,
    "type": "Ws\\NotFoundException",
    "message": "The requested entity 'Action 6512a1f0c3e4b2a1d0f9e8a7 not found' couldn't be found.",
    "session": null,
    "sessionid": null
}

*) Hinweis: Der Endpunkt verarbeitet eine EMID pro Request. Für eine Liste bitte pro EMID einen Request absetzen; die CSV-Aufbereitung erfolgt clientseitig aus der JSON-Antwort.