# API-basierter Einstieg

<Aside type="caution" icon="setting" title="Hilfe von Entwicklern erforderlich">
 Sie benötigen Hilfe von Ihrem Entwicklungsteam, um eine Journey mit API-basiertem Einstieg einzurichten. Bitte teilen Sie diese Anleitung mit ihnen.
</Aside>

## So funktioniert es

Der API-basierte Einstieg ermöglicht es Ihnen, eine Customer Journey in dem Moment zu starten, in dem ein bestimmtes Geschäftsereignis eintritt. Um eine Kampagne zu starten, müssen Sie eine spezielle API-Anfrage senden.

Hier sind einige Anwendungsfälle für einen API-basierten Einstieg:

* Kunden informieren, wenn Produkte wieder auf Lager sind
* Benutzer benachrichtigen, wenn der Preis eines beliebten Produkts gesunken ist
* Abonnenten benachrichtigen, wenn eine neue Podcast-Episode veröffentlicht wird

Im Gegensatz zu regulären Events können all diese Geschäftsereignisse außerhalb der App auftreten. Zum Beispiel kann die Verfügbarkeit eines Produkts nur in einer externen Datenbank überprüft werden. Hier kommt der API-basierte Einstieg ins Spiel: Sie können das Senden einer Anfrage zum Starten einer Journey einrichten, wann immer bestimmte Änderungen außerhalb der App (zum Beispiel in Ihrer externen Datenbank) auftreten.

<img src="/shared-33.webp" alt="API-basiertes Einstiegselement auf der Journey-Canvas"/>

Es funktioniert wie folgt:

1. Erstellen Sie eine Journey mit einem API-basierten Einstieg. In den Einstiegseinstellungen finden Sie die Vorlage der Anfrage, die die Journey startet.
2. Fügen Sie der Anfrage Segmentierungsbedingungen hinzu, indem Sie die [Segmentierungssprache](/de/developer/api-reference/segmentation-filters-api/segmentation-language) verwenden. Sie können der Anfrage auch Inhaltsplatzhalter hinzufügen, um den Nachrichteninhalt je nach Kontext zu ändern.
3. Automatisieren Sie die Anfrage bei Bedarf. Zum Beispiel können Informationen über eine Preisänderung sofort von der Datenbank an den Webhook gesendet werden. Sobald dies geschieht, sollte der Webhook automatisch die Anfrage zum Starten der Journey senden. Sie können die Anfrage auch manuell senden, wenn Sie keine Automatisierung benötigen.

Sie können die Anfrage unbegrenzt oft senden, um die Segmentierungsbedingungen oder den Nachrichteninhalt zu ändern.

Für weitere Details folgen Sie den nachstehenden Anweisungen.

## Eine Journey mit API-basiertem Einstieg einrichten

1. Erstellen Sie eine Journey mit einem API-basierten Einstieg:

<video src="/journey-elements-api-based-entry-1.webm" title="Eine neue Journey erstellen und API-basierten Einstieg auswählen" autoplay loop muted playsinline />

2. Doppelklicken Sie auf den Schritt des API-basierten Einstiegs. Das Konfigurationsfenster für den Einstieg wird geöffnet.

3. Sie können den Inhalt von Push-Benachrichtigungen und E-Mails bei jedem Start der Journey mithilfe von Inhaltsplatzhaltern ändern. Der Wert jedes Platzhalters kann in der Anfrage geändert werden. Wenn Sie diese Option nicht benötigen, können Sie diesen Schritt überspringen.

> Zum Beispiel erstellen Sie eine Journey, um Abonnenten zu benachrichtigen, wenn eine neue Podcast-Episode veröffentlicht wird. Mit einem Inhaltsplatzhalter können Sie den Podcast-Titel bei jedem Start der Journey ändern.

Fügen Sie zunächst im Einrichtungsfenster für den API-basierten Einstieg Platzhalternamen hinzu. Sie können beliebige Namen verwenden, die für Sie praktisch sind.

<img src="/journey-elements-api-based-entry-2.webp" alt="Inhaltsplatzhalternamen im Einrichtungsfenster für den API-basierten Einstieg hinzufügen"/>

Erstellen Sie nun eine [Push-Voreinstellung](/de/product/content/push-presets) oder einen [E-Mail-Inhalt](/de/product/content/email-content/) und fügen Sie den Platzhalter anstelle des zu ändernden Textes ein. Der Platzhalter muss je nach Bedarf in einem der folgenden Formate vorliegen:

* `{placeholder_name|format_modifier|}` – wenn der Wert des Platzhalters beim Start der Kampagne nicht angegeben wird, sehen die Benutzer an seiner Stelle einen leeren Bereich.
* `{placeholder_name|format_modifier}` – wenn der Wert des Platzhalters nicht angegeben ist und noch keinem Benutzer zugewiesen wurde (falls Sie ein Tag als Platzhalter verwendet haben), wird die Nachricht nicht gesendet.

<details>

<summary>Formatmodifikatoren</summary>

* **CapitalizeFirst** – schreibt den ersten Buchstaben eines Platzhalterwerts groß
* **CapitalizeAllFirst** – schreibt die ersten Buchstaben aller Wörter in einem Platzhalterwert groß
* **UPPERCASE** – wandelt alle Buchstaben in Großbuchstaben um
* **lowercase** – wandelt alle Buchstaben in Kleinbuchstaben um
* **regular** – fügt einen Platzhalterwert genau wie in der Anfrage angegeben ein

</details>

<img src="/journey-elements-api-based-entry-3.webp" alt="Einen Platzhalter für dynamischen Inhalt in eine Push-Voreinstellung einfügen"/>

<Aside type="tip">
Sie können auch einen [bestehenden Tag-Namen](/de/product/audience-data-and-segmentation/user-data-tags/) anstelle eines Platzhalternamens verwenden. In diesem Fall müssen Sie das Überschreiben dieses Tag-Wertes durch den in der Anfrage angegebenen Wert wie unten beschrieben konfigurieren.
</Aside>

Wenn Sie das Push- oder E-Mail-Element in Ihrer Journey konfigurieren, wählen Sie die erstellte Voreinstellung aus und aktivieren Sie die Option **Nachricht mit Event-Attributen personalisieren**.

Wählen Sie die Platzhalter aus, die Sie in der Anfrage beim Starten der Journey ändern möchten. Wählen Sie den **API-basierten Einstieg** als Quelle und den Platzhalternamen als dynamisches Attribut:

<video src="/journey-elements-api-based-entry-4.webm" title="Nachricht mit Event-Attributen aus dem API-basierten Einstieg personalisieren" autoplay loop muted playsinline />

Klicken Sie auf **Anwenden**, um die Änderungen zu speichern.

4. Kopieren Sie im Konfigurationsfenster für den Einstieg die Anfragevorlage, um sie zu ändern:

<img src="/journey-elements-api-based-entry-5.webp" alt="Anfragevorlage aus dem Konfigurationsfenster für den API-basierten Einstieg kopieren"/>
<Aside>
Um eine Journey über die API zu starten, müssen Sie ein gültiges Autorisierungs-Token im Authorization-Header einfügen.

**Erforderliches Header-Format**

  ```http
  Authorization: Api <your_api_token>
  ```
  **Beispiel**

  ```http
  Authorization: Api c8dc6435-xxxxxxxxxxxxxxx
  ```

 </Aside>


5. Fügen Sie dem Parameter `"filter"` Zielgruppenfilter hinzu, indem Sie die [Segmentierungssprache](/de/developer/api-reference/segmentation-filters-api/segmentation-language) verwenden oder die [Segmentierungssprache aus Ihren Segmenten kopieren](/de/product/audience-data-and-segmentation/segmentation/#copy-segment-logic). Richten Sie die erforderlichen [Tags](/de/product/audience-data-and-segmentation/user-data-tags/tags) im Voraus ein.

Um beispielsweise Benutzer anzusprechen, die den Artikel _Socken_ zu ihrer _Wunschliste_ hinzugefügt haben, muss der Wert für `"filter"` wie folgt aussehen:

`"filter": "A(\"12345-12345\") * "T(\"Wishlist\", EQ, \"Socks\")"`

In diesem Beispiel müssen Sie ein _Wunschliste_-Tag in Ihrer App konfiguriert haben.

<Aside type="note">
Ihr Anwendungscode wird automatisch dem Parameter `"filter"` im Format `A(\"12345-12345\")` hinzugefügt. Entfernen oder ändern Sie ihn nicht.

Bitte beachten Sie auch, dass Anführungszeichen ("") und Backslashes (\\) in JSON-Abfragen mit einem Backslash (\\) escaped werden müssen.
</Aside>

<Aside type="tip">
Sie können auch bestimmte Geräte oder Benutzer direkt ansprechen, indem Sie ein Array von HWIDs im Parameter `"hwids"` oder Benutzer-IDs im Parameter `"users"` übergeben, anstatt Filter zu verwenden:

```json
"users": ["user_id_1", "user_id_2", ...],
"hwids": ["hwid_1", "hwid_2", ...]
```
</Aside>

6. Wenn Sie Platzhalter eingerichtet haben, geben Sie den gewünschten Inhalt als deren Werte an:

<img src="/journey-elements-api-based-entry-6.webp" alt="Platzhalterwerte in der API-Anfrage zum Starten der Journey angeben"/>


7. Wenn Sie planen, Ihre Kampagne häufig neu zu starten und nicht möchten, dass dieselben Benutzer mehrmals in die Journey eintreten, legen Sie [Kampagnen-Eintrittsbeschränkungen](/de/product/customer-journey/journey-settings#campaign-entry-limit) fest.

> Zum Beispiel haben Sie eine Kampagne erstellt, um Benutzer über eine Preissenkung für ein bestimmtes Produkt zu informieren. Sie möchten die Journey einige Male neu starten, indem Sie mehrere Anfragen mit unterschiedlichen Zielgruppenfiltern senden. In diesem Fall können Sie Kampagnen-Eintrittsbeschränkungen hinzufügen, damit die Benachrichtigung nicht wiederholt an Benutzer gesendet wird, die auf mehrere Filter passen.

8. Wenn Sie möchten, dass eine Journey startet, wann immer ein bestimmtes Geschäftsereignis eintritt, automatisieren Sie die Anfrage mithilfe des Webhooks. Sobald das Ereignis eintritt, sollte der Webhook automatisch die Anfrage zum Starten der Journey senden.

Sie können die Anfrage auch manuell senden, wenn Sie keine Automatisierung benötigen.

<Aside type="note">
* Wenn Sie die Segmentierungsbedingungen beim Senden einer neuen Anfrage ändern, hat dies keine Auswirkungen auf Benutzer, die bereits in die Journey eingetreten sind.
* Wenn Sie den Nachrichteninhalt beim Senden einer neuen Anfrage ändern, erhalten alle Benutzer die neue Version der Nachricht (einschließlich derer, die bereits in die Journey eingetreten sind, diese Nachricht aber noch nicht erhalten haben).
</Aside>