AERA API v2 mit APICall: Login erfolgreich, Folgeaufruf auf FullImports liefert 401 / 404 – wie korrekt authentifizieren?

Hallo zusammen,

ich versuche aktuell, mit Synesty einen Angebotsimport an die AERA Seller API v2 anzubinden und komme beim Thema Authentifizierung im Folgeaufruf nicht weiter.

Ausgangslage

Der Login über einen APICall funktioniert erfolgreich:

POST https://api.aera-online.de/v2/login

Body:

{
  "Data": {
    "CreateUserSessionData": {
      "LoginName": "${aeraUser!}",
      "Password": "${aeraPassword!}"
    }
  }
}

Die Antwort liefert korrekt:

  • Data.UserSessionForInfo.Id

  • Data.UserSessionForInfo.UserDefaultCompanyId

Also Login grundsätzlich okay.

Ziel

Danach möchte ich einen zweiten APICall auf den AERA-Endpoint ausführen:

POST /Roles/Sellers/{CompanyId}/Offers/FullImports

mit Query-Parametern wie:

  • ProcessingDate=2026-03-10

  • Currency=EUR

  • ValidateOnly=true

  • ClearSpecialOffer=false

und JSON-Body mit CreateOfferImportDataList.

Bisherige Tests

1. FullImports ohne Session-ID im Pfad

Pfad:

/Roles/Sellers/<COMPANY_ID>/Offers/FullImports?ProcessingDate=2026-03-10&Currency=EUR&ValidateOnly=true&ClearSpecialOffer=false

Ergebnis:

  • 401 Unauthorized

2. FullImports mit Session-ID im Pfad

Pfad:

/<SESSION_ID>/roles/companies/<COMPANY_ID>/offers/fullimports?processingdate=2026-03-10&currency=EUR&clearspecialoffer=false&validateonly=true

Ergebnis:

  • 404 Not Found

3. Request-Format

Im zweiten APICall habe ich bereits gesetzt:

  • bodyContentType = application/json; charset=UTF-8

  • Header:

    • Accept: application/json

    • Content-Type: application/json

Damit änderte sich der Fehler von 400 Bad Request auf 401 Unauthorized, also scheint der Body grundsätzlich zumindest näher an korrekt zu sein.

Mein aktueller Eindruck

Ich vermute, dass das eigentliche Problem die Authentifizierung des Folgeaufrufs ist:

  • Entweder übernimmt Synesty die Session aus dem Login nicht automatisch in den nächsten APICall

  • oder AERA erwartet für die aktuelle v2 Seller API eine andere Übergabe der Authentifizierung

Meine Fragen an euch

  1. Hat jemand mit Synesty schon eine API angebunden, bei der

    • zuerst ein Login per JSON-Body erfolgt

    • und danach ein zweiter APICall die erhaltene Session wiederverwenden muss?

  2. Gibt es im APICall-Step eine Möglichkeit,

    • Login-Zustand / Cookies / Session sauber in den nächsten APICall zu übernehmen?
  3. Falls nicht:

    • Was wäre in Synesty der sinnvollste Weg für so einen Fall?

    • Zwei APICalls?

    • anderer HTTP-Step?

    • anderer Workaround?

  4. Ist es möglich, im APICall die tatsächlich gesendeten Header/Cookies des Folgeaufrufs vollständig zu sehen?

Falls jemand ein ähnliches Muster schon gelöst hat, wäre ich für einen Hinweis sehr dankbar.

Viele Grüße

Markus

Hallo Markus,

Ich kenne die API leider nicht und bin mir nicht sicher, was erwartet wird. Leider kann ich bei dir noch nicht genau herauslesen, wo die Session ID im 2. APICall erwartet wird. Falls du das nicht in der API Dokumentation findest, wäre es gut wenn du bei AERA nachfragen könntest.

Falls die Session ID irgendwie per HTTP Header übergeben werden soll, dann musst du diese aus dem Ergebnis des 1. APICall Steps in requestHeader des 2. APICall Steps angeben, z.B.
sessionid=${output@APICall_1.firstRow("Data.UserSessionForInfo.Id")}

Die Cookies sollten innerhalb des Flows erhalten bleiben. D.h. nachdem der 1. APICall ausgeführt wurde, ist der Cookie im 2. APICall auch verfügbar.

Ein wichtiger Hinweis noch für die Step Vorschau: Bei der Vorschau eines Steps werden nur die abhängigen Steps ausgeführt. Je nachdem wie die Steps konfiguriert sind, kann das dazu führen, das der 1. APICall bei der Vorschau nicht ausgeführt wird. Im Vorschau Fenster siehst du auf der linken Seite alle ausgeführten Steps. Du kannst über den „Falsches Vorschau-Ergebnis“ auch alle vorherigen Steps ausführen.

Login per JSON body habe ich persönlich noch nicht gesehen, aber per XML oder URL Parameter hatten wir das auch schon. Mit zwei APICall Steps ist das schon der richtige Weg.

Du kannst im Flow den Debug Modus aktivieren und den Flow ausführen. Beim APICall Step sollten alle gesendeten Header enthalten sein.

VG Torsten

Danke Torsten. Jetzt habe ich es hinbekommen.

Vielen Dank für die Hilfe.

Gruß Markus

1 „Gefällt mir“