Skip to main content

Create / easy.affiliate REST-API (Orders)

📝 Einleitung

Um neue Orders automatisiert im easy.affiliate-System anzulegen, steht ein REST-konformer Webservice zur Verfügung. Über die HTTP-Methode POST können neue Transaktionen übermittelt werden. Jeder User erhält hierfür einen Authentifizierungs-Token und eine Login-ID, die im Frontend einsehbar sind.


🔐 Authentifizierung

Für den Zugriff sind folgende Header erforderlich:

Header Beschreibung Typ
Content-Type Muss auf application/json gesetzt sein String
X-Network-ID Netzwerk-ID: meist -1 für mandantenübergreifende API Integer
X-Auth-Token Dein API-Token (im Frontend sichtbar) String
X-Auth-ID Deine Login-ID (im Frontend sichtbar) Integer

📩 Endpunkte

  • Admin: https://SUBDOMAIN.de/ws/V6/admin/JSON/Orders
  • Advertiser: https://SUBDOMAIN.de/ws/V6/advertiser/JSON/Orders

🧪 Beispiel (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 '[{
    "ordertoken": "testorder001",
    "campaign_id": 1,
    "trigger_id": 2,
    "status": 1,
    "turnover": 199.99,
    "commission": 20.00
  }]' \
  https://SUBDOMAIN.de/ws/V6/admin/JSON/Orders

🧾 Body-Parameter

Parameter Beschreibung Datentyp Pflichtfeld
ordertoken Eindeutiger Identifier für die Order. Muss systemweit eindeutig sein. String ✅ Ja
campaign_id ID der Kampagne, der die Order zugeordnet wird. Integer ✅ Ja
trigger_id ID des Triggers, der bei Nutzung von ordertoken zwingend angegeben werden muss. Integer ✅ Ja
status Status der Order: 0 = offen, 1 = bestätigt, 2 = storniert Integer ✅ Ja
turnover Bestellwert in Kampagnenwährung Float ✅ Ja
original_turnover Bestellwert in Fremdwährung Float Nein
commission Provisionswert in Kampagnenwährung. Kann übergeben werden, falls selbst berechnet Float Nein
cancel_reason Angabe eines Stornogrundes bei Status = 2 (storniert) String Nein

📘 Hinweise

Wichtige Implementierungsdetails:

  • ordertoken: Muss eindeutig sein – idealerweise eine Kombination aus Zeitstempel, Shop-ID oder externer Ordernummer.
  • trigger_id: Wenn du diese nicht kennst, frage im Frontend deine Kampagnenkonfiguration ab.
  • Bulk-Aktionen: Du kannst auch mehrere Orders in einem Array auf einmal anlegen.
  • Updates: Wird eine Order mit gleichem ordertoken bereits im System gefunden, kann ein PUT-Request genutzt werden, um sie zu aktualisieren.