Zum Inhalt springen
Doku

Die Warenkörbe Ihrer Käufer senden, damit Emailit abgebrochene Warenkörbe erkennt.

Basis-URLhttps://api.emailit.com/v2AuthentifizierungFehlerRate Limits

Warenkorb erstellen oder aktualisieren

Senden Sie den aktuellen Warenkorb des Käufers bei jeder Änderung. Der Warenkorb wird über seine id in Ihrem Shop identifiziert: Senden Sie dieselbe id erneut, wird der gespeicherte Warenkorb aktualisiert. Jeder Aufruf ersetzt items und total des Warenkorbs. E-Mail-Adresse, Kontakt, Währung und Checkout-URL bleiben erhalten, wenn Sie sie weglassen. Erfordert einen API-Schlüssel mit dem Scope full oder events. Bei einem Schlüssel mit dem Scope events enthält die Antwort nur object, id und external_id.

Alternativ kann das Tracking-Skript Warenkörbe aus dem Browser senden.

Ein neuer Warenkorb oder eine Änderung an den Artikeln, dem Gesamtbetrag, dem Status oder dem Kontakt eines Warenkorbs löst cart.updated aus. Wird derselbe Warenkorb erneut gesendet, wird nichts ausgelöst.

So wechselt ein Warenkorb zwischen den Status:

  • Abgebrochen. Ein Warenkorb, der zu einem Kontakt gehört, mindestens einen Artikel enthält und während der cart_abandon_minutes der Commerce-Einstellungen (standardmäßig 60) nicht aktualisiert wird, wird abandoned, und Emailit löst cart.abandoned aus. Warenkörbe ohne Kontakt bleiben active.
  • Wieder aktiv. Wenn Sie einen abgebrochenen Warenkorb aktualisieren, wird er active und abandoned_at wird geleert.
  • Konvertiert. Eine Bestellung mit derselben cart_id konvertiert den Warenkorb. Eine neue Bestellung desselben Kontakts konvertiert außerdem die Warenkörbe dieses Kontakts, die zuletzt vor der Bestellung aktualisiert wurden. Ein konvertierter Warenkorb bleibt konvertiert, wenn Sie ihn aktualisieren.
POST/carts

Anfrage-Body

idstring | numberErforderlich

Die Warenkorb- oder Checkout-ID in Ihrem Shop, bis zu 255 Zeichen. Wird als external_id gespeichert. Senden Sie denselben Wert als cart_id mit der Bestellung. Sie können ihn auch als external_id oder cart_id senden.

emailstring

Die E-Mail-Adresse des Käufers. Verknüpft den Warenkorb mit dem Kontakt mit dieser Adresse. Warenkörbe erstellen nie Kontakte: Ein Warenkorb ohne passenden Kontakt kann nicht abgebrochen werden. customer.email wird ebenfalls akzeptiert.

contact_idstring

Der Kontakt des Käufers (con_...). Wenn kein Kontakt diese ID hat, sucht Emailit den Kontakt über email.

anonymous_idstring

Die Besucher-ID des Tracking-Skripts, bis zu 255 Zeichen. Wenn dieser Besucher später identifiziert wird, werden Warenkörbe mit dieser ID und ohne Kontakt mit dem Kontakt verknüpft.

currencystring

Dreistelliger Code nach ISO 4217. Standardmäßig gilt die Währung des Workspaces aus den Commerce-Einstellungen.

itemsobject[]

Bis zu 250 Positionen im selben Format wie items bei Bestellung erstellen oder aktualisieren. Artikel ohne title, url oder image_url übernehmen diese aus dem Katalog. line_items wird ebenfalls akzeptiert.

totalnumber | string

Warenkorbwert. Standardwert: die Summe der Positionsbeträge.

checkout_urlstring

Ein http- oder https-Link, der den Käufer zu diesem Warenkorb zurückbringt, bis zu 2.048 Zeichen. E-Mails können mit dem Warenkorb-Block darauf verlinken.

statusstring

active (Standardwert) oder converted. Senden Sie converted, um einen Warenkorb selbst abzuschließen.

Rückgabe

201 Created mit dem Warenkorb-Objekt, wenn der Warenkorb neu ist, oder 200 OK, wenn ein bestehender Warenkorb aktualisiert wurde. Gibt 422 zurück, wenn ein Feld ungültig ist.

POST/carts
Terminal
curl -X POST https://api.emailit.com/v2/carts \
  -H "Authorization: Bearer your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "id": "c-58f1a2",
    "email": "ada@example.com",
    "currency": "USD",
    "checkout_url": "https://shop.example.com/cart/recover/c-58f1a2",
    "items": [
      { "product_id": "8123456789", "variant_id": "42-blue", "sku": "TRS-BLU-42", "quantity": 1, "price": 89 }
    ]
  }'
JSON
{
  "object": "cart",
  "id": "crt_3Rx784H7VYWRTViadjbp5oKHRud",
  "external_id": "c-58f1a2",
  "contact_id": "con_3EwrXnu9OaQWlfI1AyPUUEoYjQs",
  "email": "ada@example.com",
  "status": "active",
  "currency": "USD",
  "total": 89,
  "items": [
    {
      "product_id": "8123456789",
      "variant_id": "42-blue",
      "sku": "TRS-BLU-42",
      "title": "Trail running shoe",
      "quantity": 1,
      "unit_price": 89,
      "total": 89,
      "url": "https://shop.example.com/products/trail-running-shoe",
      "image_url": "https://shop.example.com/images/trail-running-shoe.jpg"
    }
  ],
  "checkout_url": "https://shop.example.com/cart/recover/c-58f1a2",
  "source": "api",
  "abandoned_at": null,
  "converted_at": null,
  "converted_order_id": null,
  "created_at": "2026-10-08T12:12:47.630Z",
  "updated_at": "2026-10-08T12:12:47.630Z"
}

Warenkorb abrufen

Ruft einen Warenkorb über seine Emailit-ID oder über die Warenkorb- oder Checkout-ID in Ihrem Shop ab. Erfordert einen API-Schlüssel mit dem Scope full.

GET/carts/{id}

Pfadparameter

idstringErforderlich

Die Warenkorb-ID (crt_...) oder die Warenkorb- oder Checkout-ID in Ihrem Shop (external_id). Shop-IDs mit Sonderzeichen müssen Sie URL-kodieren.

Das Warenkorb-Objekt

objectstring

Immer cart.

idstring

Emailit-Warenkorb-ID (crt_...).

external_idstring

Die Warenkorb- oder Checkout-ID in Ihrem Shop: die id, die Sie gesendet haben. Warenkörbe aus dem Tracking-Skript ohne eigene ID verwenden web: plus die anonyme ID des Besuchers.

contact_idstring | null

Der Kontakt, zu dem der Warenkorb gehört (con_...), oder null, solange der Käufer unbekannt ist.

emailstring | null

Die E-Mail-Adresse des Käufers.

statusstring
  • active: Der Käufer kauft noch ein.

  • abandoned: Der Warenkorb gehört zu einem Kontakt, enthält Artikel und hat sich während der cart_abandon_minutes der Commerce-Einstellungen nicht geändert.

  • converted: Für ihn wurde eine Bestellung aufgegeben, oder Sie haben ihn mit status auf converted gesendet.

currencystring | null

Dreistelliger Code nach ISO 4217 für die Beträge.

totalnumber

Warenkorbwert.

itemsobject[]

Positionen. Jede hat product_id (die Produkt-ID in Ihrem Shop), variant_id, sku, title, quantity, unit_price, total, url und image_url.

checkout_urlstring | null

Link, der den Käufer zu diesem Warenkorb zurückbringt.

sourcestring

api oder js für Warenkörbe aus dem Tracking-Skript.

abandoned_atstring | null

Zeitpunkt, zu dem der Warenkorb als abgebrochen markiert wurde. Wird geleert, wenn der Warenkorb erneut aktualisiert wird.

converted_atstring | null

Zeitpunkt, zu dem der Warenkorb konvertiert wurde.

converted_order_idstring | null

Die Bestellung (ord_...), die den Warenkorb konvertiert hat.

created_at, updated_atstring

Zeitpunkt der ersten Speicherung und der letzten Änderung des Warenkorbs, im Format ISO 8601 in UTC.

GET/carts/{id}
Terminal
curl https://api.emailit.com/v2/carts/crt_3Rx784H7VYWRTViadjbp5oKHRud \
  -H "Authorization: Bearer your_api_key"
JSON
{
  "object": "cart",
  "id": "crt_3Rx784H7VYWRTViadjbp5oKHRud",
  "external_id": "c-58f1a2",
  "contact_id": "con_3EwrXnu9OaQWlfI1AyPUUEoYjQs",
  "email": "ada@example.com",
  "status": "abandoned",
  "currency": "USD",
  "total": 107,
  "items": [
    {
      "product_id": "8123456789",
      "variant_id": "42-blue",
      "sku": "TRS-BLU-42",
      "title": "Trail running shoe",
      "quantity": 1,
      "unit_price": 89,
      "total": 89,
      "url": "https://shop.example.com/products/trail-running-shoe",
      "image_url": "https://shop.example.com/images/trail-running-shoe.jpg"
    },
    {
      "product_id": "8123456790",
      "variant_id": null,
      "sku": null,
      "title": "Merino running socks",
      "quantity": 2,
      "unit_price": 9,
      "total": 18,
      "url": "https://shop.example.com/products/merino-running-socks",
      "image_url": "https://shop.example.com/images/merino-running-socks.jpg"
    }
  ],
  "checkout_url": "https://shop.example.com/cart/recover/c-58f1a2",
  "source": "api",
  "abandoned_at": "2026-10-08T13:31:04.118Z",
  "converted_at": null,
  "converted_order_id": null,
  "created_at": "2026-10-08T12:12:47.630Z",
  "updated_at": "2026-10-08T12:28:51.902Z"
}

Warenkörbe auflisten

Listet Warenkörbe auf, zuletzt aktualisierte zuerst. Erfordert einen API-Schlüssel mit dem Scope full.

GET/carts

Query-Parameter

pageinteger

Seitennummer für die Paginierung (Minimum: 1, Standardwert: 1).

limitinteger

Anzahl der zurückgegebenen Warenkörbe (Minimum: 1, Maximum: 100, Standardwert: 25).

statusstring

Nur Warenkörbe mit diesem Status: active, abandoned oder converted.

contact_idstring

Nur Warenkörbe dieses Kontakts (con_...).

matchstring

all (Standardwert) verlangt, dass alle Filter zutreffen. or trifft zu, wenn ein beliebiger Filter passt. Siehe Filtern und Sortieren.

orderstring

Sortierschlüssel für diese Liste. Siehe die Sortierschlüssel unten.

directionstring

asc oder desc.

Filter und Sortierung

Listenfilter sind Query-Parameter der Form key.condition=value auf einer einzigen Ebene. match, order, direction und die Bedingungen pro Typ finden Sie unter Filtern und Sortieren.

Filterschlüssel

SchlüsselTypBedingungenHinweise
external_idstringexact, not_exact, contains, not_contains, starts_with, ends_with, empty, not_empty
emailstringexact, not_exact, contains, not_contains, starts_with, ends_with, empty, not_empty
statusenumexact, not_exactWerte: active, abandoned, converted
totalnumberexact, not_exact, gt, gte, lt, lte, empty, not_empty
currencystringexact, not_exact, contains, not_contains, starts_with, ends_with, empty, not_empty
updated_atdateexact, before, after, empty, not_empty
abandoned_atdateexact, before, after, empty, not_empty
created_atdateexact, before, after, empty, not_empty

Sortierschlüssel

Übergeben Sie in order einen dieser Schlüssel und in direction den Wert asc oder desc: external_id, email, status, total, currency, updated_at, abandoned_at, created_at

Rückgabe

Eine Seite mit Warenkorb-Objekten in data, dazu total_records, next_page_url und previous_page_url. Die Seiten-URLs enthalten nur page und limit; fügen Sie Ihre Filter daher erneut hinzu, wenn Sie ihnen folgen.

GET/carts
Terminal
curl "https://api.emailit.com/v2/carts?status=abandoned&order=abandoned_at&direction=desc" \
  -H "Authorization: Bearer your_api_key"
JSON
{
  "data": [
    {
      "object": "cart",
      "id": "crt_3Rx784H7VYWRTViadjbp5oKHRud",
      "external_id": "c-58f1a2",
      "contact_id": "con_3EwrXnu9OaQWlfI1AyPUUEoYjQs",
      "email": "ada@example.com",
      "status": "abandoned",
      "currency": "USD",
      "total": 89,
      "items": [
        {
          "product_id": "8123456789",
          "variant_id": "42-blue",
          "sku": "TRS-BLU-42",
          "title": "Trail running shoe",
          "quantity": 1,
          "unit_price": 89,
          "total": 89,
          "url": "https://shop.example.com/products/trail-running-shoe",
          "image_url": "https://shop.example.com/images/trail-running-shoe.jpg"
        }
      ],
      "checkout_url": "https://shop.example.com/cart/recover/c-58f1a2",
      "source": "api",
      "abandoned_at": "2026-10-08T13:31:04.118Z",
      "converted_at": null,
      "converted_order_id": null,
      "created_at": "2026-10-08T12:12:47.630Z",
      "updated_at": "2026-10-08T12:28:51.902Z"
    }
  ],
  "total_records": 1,
  "next_page_url": null,
  "previous_page_url": null
}

Warenkorb löschen

Löscht einen Warenkorb. Bestellungen, die ihn konvertiert haben, sind nicht betroffen. Wenn Sie einen Warenkorb mit derselben id erneut senden, wird er als neuer Warenkorb gespeichert. Erfordert einen API-Schlüssel mit dem Scope full.

DELETE/carts/{id}

Pfadparameter

idstringErforderlich

Die Warenkorb-ID (crt_...) oder die Warenkorb- oder Checkout-ID in Ihrem Shop.

DELETE/carts/{id}
Terminal
curl -X DELETE https://api.emailit.com/v2/carts/crt_3Rx784H7VYWRTViadjbp5oKHRud \
  -H "Authorization: Bearer your_api_key"
JSON
{
  "object": "cart",
  "id": "crt_3Rx784H7VYWRTViadjbp5oKHRud",
  "deleted": true
}

War diese Seite hilfreich?

Danke für Ihr Feedback.

Danke, wir lesen jede Nachricht.