Aus dem Englischen übersetzt. Bei Abweichungen gilt die englische Seite. Auf Englisch lesen

Event-Katalog

Jeder Event-Typ, wann er ausgelöst wird und was in data.object steht.

EventWird ausgelöst, wenndata.object
order.createdEine neue Bestellung von einem beliebigen Kanal übernommen wird (Poller oder Kanal-Webhook). Genau eines pro Kanalbestellung, egal wie viele Positionen sie hat (alle stehen im Payload)Bestellung
order.status_changedSich der normalisierte status einer Bestellung ändert (z. B. awaiting_shipment → shipped, → canceled). Ein Event pro Änderung: Eine neue Sendungsverfolgung, ein Abwicklungsdetail oder source_status allein lösen es nicht aus (lies die Bestellung neu, wenn du diese brauchst)Bestellung. data.status ist der Status nach der Änderung, data.previous_status der vorherige; sie unterscheiden sich immer
product.updatedSich der Inhalt eines Produkts ändert, über das Dashboard, die API oder eine übernommene Bearbeitung auf KanalseiteProdukt
product.deletedEin Produkt gelöscht wird{ "id": … }
inventory.updatedSich Menge oder Preis einer Variante durch einen Verkauf auf einem beliebigen Kanal ändert (data.source: "order", ein Event pro Bestellposition, mit data.channel, data.order_id_on_channel, der verkauften data.variant_id / data.sku und data.quantity_change, z. B. -1) oder über die API (data.source: "api"). Eine Stornierung einer solchen Bestellung vor dem Versand gibt die Einheiten zurück (data.source: "order", data.reason: "order_canceled", positives data.quantity_change). Mengenänderungen im Dashboard oder direkt auf einem Kanal lösen es noch nicht aus: Lies GET /products neu, wenn du diese brauchstProdukt (mit aktualisierten variants[])
listing.status_changedEin Angebot einen neuen abgeschlossenen Status erreicht: listed, imported, error oder delisted. Ein Event pro Änderung, nie für einen Schreibvorgang, der den Status beibehält. ongoing (Veröffentlichen oder Delisten läuft) wird nicht gemeldet: Die Operation verfolgt esAngebot (das eine Angebot, das sich geändert hat). data.status ist der neue Status, data.previous_status der zuletzt gemeldete, sodass aufeinanderfolgende Events immer aneinander anschließen (listed → delisted → listed). null nur beim ersten Event eines Angebots
operation.completedEine asynchrone Operation endet (succeeded, partial oder failed). Abonniere dies, statt /operations abzufragenOperation
channel_account.updatedSich die Einstellungen eines Kanalkontos ändern, über das Dashboard oder die API (ein Event pro geändertem Konto). data.source ist dashboard oder api; data.previous_attributes enthält die alten Werte. Setze sie per PATCH zurück, um die Änderung rückgängig zu machenKanalkonto
channel_account.connectedEin über die API verbundenes Kanalkonto die Verbindung abgeschlossen hat (data.connection_id)Kanalkonto
channel_account.disconnectedEin Kanalkonto getrennt wurde, über das Dashboard oder die API (data.source)Kanalkonto (ID + Kanal, status: disconnected)

Mit der Zeit kommen neue Event-Typen hinzu. Konsumenten müssen unbekannte type-Werte tolerieren (protokollieren und bestätigen).

Welche Events brauche ich?

  • Bestellsynchronisierung in dein System → order.created + order.status_changed.
  • Bestandssynchronisierung zurück in dein System → inventory.updated (wird bei Verkäufen auf jedem Kanal ausgelöst; so hältst du ein externes Lager synchron).
  • „Ist mein Produkt live?“ → listing.status_changed (oder operation.completed nach einer Veröffentlichung).
  • Fire-and-forget-Schreibvorgänge → operation.completed, um das Ergebnis pro Kanal ohne Abfragen zu erhalten.
  • Audit / Rückgängigmachen von Kanaleinstellungen → channel_account.updated.
  • Wissen, wann ein Händler die Verbindung eines Kanals abgeschlossen hat → channel_account.connected (und channel_account.disconnected).

Zuletzt aktualisiert am 20. Oktober 2026

Brauchst du Hilfe?

Schreib uns, und ein Mensch antwortet, meist innerhalb eines Werktags.

Auf dieser Seite