Update / easy.affiliate REST-API (Orders)
📝 Einleitung
Um Orders automatisiert im easy.affiliate-System bearbeiten zu können, stellt die easy Marketing GmbH eine Webservice-API zur Verfügung. Diese ermöglicht es, bestehende Orders im Nachgang zu bearbeiten, sobald sie den Validierungsprozess durchlaufen.
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/Orders |
| Advertiser | https://SUBDOMAIN.de/ws/V6/advertiser/JSON/Orders |
Beispiele
Beispiel mit cURL
curl -X PUT \
-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 '[{ "campaign_id": 1, "id": 12345, "status": 1, "turnover":100.00, "commission":12.34 },{ "campaign_id": 1, "ordertoken":"123a456b", "status": 2, "turnover": 0.00 }]' \
https://DOMAIN/ws/V6/admin/JSON/Orders
Codebeispiel
Mit der folgenden Methode können mehrere Orders geupdatet 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
[
{
"id": "12345",
"campaign_id": 1,
"status": 1,
"turnover": 10.00,
"commission": 0.99
},
{
"ordertoken": "123a456b",
"campaign_id": 1,
"trigger_id": 1,
"status": 2,
"turnover": 9.99,
"cancel_reason": "Storno Grund"
}
]
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
Im nachfolgenden werden die Standard-Parameter aufgelistet. Es ist aber über die API möglich, alle zur Verfügung stehenden Parameter zu updaten.
| Parameter | Datentyp | Pflichtfeld | |
|---|---|---|---|
| campaign_id |
id. Alternativ über emid auflösbar.
Integer
✅ Ja
id
"id":"ID"ordertoken.
ordertoken)
ordertoken
"ordertoken":"ORDERTOKEN"id. trigger_id ist hierfür nicht erforderlich.
String
✅ Ja (oder id)"campaign_id":CAMPAIGN_IDcampaign_id auflösen.
"trigger_id":TRIGGER_ID-5 = Moderation, 0 = offen, 1 = bestätigt, 2 = storniert (-6 = storniert mit Grund).
Integer
ordertoken-5012turnover "turnover":TURNOVERüberschrieben.
Float
Nein
"original_turnover":TURNOVER_IN_FREMDWÄHRUNGautocalculate" berechnet bei dynamischen Triggern automatisch aus turnover × trigger_value.
Float
Nein
2 -6.
"cancel_reason":"Stornogrund"8601). Wird gesetzt, wenn übergeben; ansonsten bei Statuswechsel automatisch. Steuert intern auch das Billing-/Moderationsdatum.
descr wie beim Create – beim Update ist der Spaltenname description.
String
Nein
order_currency
Bestellwährung als ISO-Code. Nicht currency wie beim Create.
String
Nein
subid_value
Attributionswert (SubID). Nicht subid wie beim Create.
String
Nein
visibility
Sichtbarkeit: 0 (versteckt) oder 1 (sichtbar).
Integer
Nein
get_parameters
Objekt { "key": "value", … }. Wird pro Order upserted (orders_getparameter).
Object
Nein
*) Hinweis: Wird der ordertoken genutzt, ist neben der campaign_id auch die trigger_id ein Pflichtfeld.