> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kameleoon.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Speichern und Abrufen externer Daten zum Targeting von Benutzern

> Speichern Sie externe CRM- oder CDP-Benutzerdaten in Kameleoon mithilfe des Map-Endpoints der Data API und verwenden Sie diese dann als Targeting-Bedingung in Experiment-Segmenten.

Kameleoon Web und Feature Experimentation-Lösungen ermöglichen es Ihnen, Benutzer basierend auf externen Daten zu targetieren, die in anderen Systemen (wie CRMs und CDPs) gespeichert sind, indem Sie den [Map-Endpoint der Data API](/api-reference/map/update-data-for-several-keys) und [Custom Data](../../../custom-data) verwenden.

Dieses Tutorial behandelt:

* Speichern externer Benutzerdaten mit dem [POST Map-Endpoint](/api-reference/map/update-data-for-several-keys).
* Lesen von Benutzerdaten mit dem [GET Map-Endpoint](/api-reference/map/get-data-for-a-key). (Hinweis: [Dieser Schritt](#daten-mit-retrievedatafromremotesource-abrufen-activation-api) verwendet eine Activation-API-Methode für **Web Experimentation**, die die **Data API** kapselt. Für **Feature Experimentation** ist eine ähnliche Methode in allen Kameleoon-SDKs verfügbar, die den Prozess vereinfacht, indem die manuelle API-Aufruflogik vermieden wird).
* Nutzung gespeicherter Daten in einem Targeting-Segment durch Verwendung von Custom Data mit Experimenten.

## Daten über den MAP-Endpoint der DATA API senden

Da die Data API eine **REST-API** ist, speichert eine **POST**-Anfrage an den [MAP](/api-reference/map/update-data-for-several-keys)-Endpoint zusätzliche Informationen, die mit einem bestimmten Schlüssel verknüpft sind – in der Regel ein Besuchercode oder eine interne User-ID, die bereitgestellt wird, wenn ein Benutzer die Website besucht.

<Note>
  Sie können ein Authentifizierungstoken erhalten, um auf den MAP-Endpoint zuzugreifen, indem Sie demselben Ablauf wie bei der [Automation API](../../automation-api-rest/get-started/get-started#authentifizierung) mit JSON Web Tokens folgen (optional). Weitere Informationen zur Authentifizierung und Ratenbegrenzung finden Sie in [diesem Artikel](../overview#authentication-and-rate-limiting).
</Note>

Die cURL-Anfrage muss die folgenden Parameter enthalten:

* **`siteCode`**: Eine Zeichenfolge aus Buchstaben und Zahlen, die das Experimentprojekt identifiziert. Siehe [diesen Artikel](/user-manual/faq#how-do-i-find-my-sitecode), um zu erfahren, wie Sie ihn abrufen können.
* **JSON-Objekt**: Der Anfragetext enthält ein Objekt, das aus einer Liste von Schlüsseln und relevanten Benutzerdaten besteht.
* **`User-Agent`**: Anfragen, die als Bots oder Spider identifiziert werden, werden gemäß den [IAB/ABC-User-Agent-Filterregeln](https://www.iab.com/guidelines/iab-abc-international-spiders-bots-list/) abgelehnt. Kameleoon verwendet eine Single-Pass-Methode, was bedeutet, dass für Anfragen von Standard-Webbrowser-Bibliotheken (wie XHR) keine Aktion erforderlich ist. **In anderen Fällen sollten Sie jedoch einen benutzerdefinierten `User-Agent`-Wert festlegen, um die Standardeinstellung der Bibliothek zu überschreiben.**

```shell theme={null}
curl -X POST -L 'https://eu-data.kameleoon.io/map/maps?siteCode=f17c21u1ag' \
-H 'Content-Type: application/json' \
-H 'User-Agent: MyCustomUserAgent/1.0' \
-d '{
	"myUserID1": {
        "audiencesNames": {
            "premium": true
        }
    },
    "myUserID2": {
        "audiencesNames": {
            "premium": false
        }
    },
    ...
}'
```

<Note>
  Eine verarbeitete Anfrage gibt keinen Inhalt zurück. Um den Erfolg zu überprüfen, senden Sie eine Anfrage an [diesen Endpoint](/api-reference/map/get-data-for-a-key) mit folgender URL: `https://eu-data.kameleoon.io/map/map?siteCode=f17c21u1ag&key=myUserID1`
</Note>

## Daten mit `retrieveDataFromRemoteSource` abrufen (Activation API)

Mit den auf Kameleoon-Servern gespeicherten Daten verwenden Sie Custom Data, um auf Informationen zu Personen zuzugreifen, die die Website besuchen. Custom Data dient als **Targeting-Bedingung** innerhalb von Experiment-Segmenten.

Erstellen und konfigurieren Sie zunächst Custom Data in Kameleoon.

Klicken Sie im linken Menü des Kameleoon-Dashboards unter **Configure** auf **Custom data**:

<Frame>
  ![Configuration](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/Configure.png)
</Frame>

Sie werden zum Custom-Data-Dashboard weitergeleitet. Klicken Sie in der oberen rechten Ecke auf **New custom data**.

<Frame>
  ![New\_custom\_data](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/New.png)
</Frame>

Sie werden zum Fenster **Edit the custom data** weitergeleitet.

<Frame>
  ![Custom\_data\_window](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/custom-data-window.png)
</Frame>

Beispiel: Erstellen Sie Custom Data mit dem Namen „Premium users" für Benutzer mit einem „Premium"-Status von `true`. Diese Informationen wurden im [vorherigen Schritt](#post-data-using-the-data-apis-map-endpoint) gespeichert.

```shell theme={null}
"audiencesNames": {
  "premium": true
}
```

Um Benutzer mit einem Premium-Status von `true` zu identifizieren, ändern Sie die Abrufmethode auf **Custom JavaScript** und fügen Sie den folgenden Code für die Methode `retrieveDataFromRemoteSource` unter **Paste a sample code** ein:

```javascript theme={null}
Kameleoon.API.Data.retrieveDataFromRemoteSource(user_id, function (data) {

if (data && data.audiencesNames && data.audiencesNames.premium !== undefined) {
Kameleoon.API.Data.setCustomData("Premium users", data.audiencesNames.premium);
}});
return {"value": null};
```

Diese Methode ruft den für einen bestimmten Benutzer gespeicherten Wert ab. Im Beispielcode enthält die Variable `user_id` die eindeutige ID des Benutzers.

<Note>
  Projekte, die Kameleoon Feature Experimentation verwenden, können die SDK-Methode `getRemoteData()` innerhalb des Feature-Flag-Codes verwenden, um Daten abzurufen.
</Note>

Sobald Sie alle Informationen im Fenster zur Erstellung von Custom Data eingegeben haben, klicken Sie auf **Next**.

<Frame>
  ![Custom\_data\_configured](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/cd.png)
</Frame>

<Frame>
  ![Custom\_data\_configured\_extended](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/cd2.png)
</Frame>

Das nächste Fenster bietet Ihnen zusätzliche optionale Konfigurationsoptionen. Klicken Sie auf **Create**:

<Frame>
  ![Custom\_data\_created](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/create.png)
</Frame>

Sie werden zu Ihrem Custom-Data-Dashboard weitergeleitet, wo Sie die Custom Data **Premium** users finden.

<Frame>
  ![Custom\_data\_dashboard](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/dashboard.png)
</Frame>

Sobald die Custom Data „Premium users" erstellt ist, kann sie für das Targeting in Experimenten verwendet werden.

Klicken Sie dazu auf der linken Seite des Dashboards unter **Configure** auf **Segments**.

<Frame>
  ![Configure\_segment](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/config-segment.png)
</Frame>

Wenn Sie beispielsweise mit einem **New segment** arbeiten möchten, klicken Sie auf **Edit**.

<Frame>
  ![New\_segment](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/new-seg.png)
</Frame>

Wählen Sie dann auf der linken Seite des **Segment**-Konfigurationsfensters unter **Conditions** > **Technical** die zuvor erstellten Custom Data **Premium users** aus.

<Frame>
  ![Conditions](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/conditions.png)
</Frame>

Konfigurieren Sie dann unter **Definitions** die Custom Data so, dass Besuche mit der **Custom Data Premium users** auf **true** einbezogen werden.

<Frame>
  ![definition](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/definition.png)
</Frame>

Klicken Sie dann auf **Next** > **Edit segment**.

<Frame>
  ![EDIT SEGMENT](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/save.png)
</Frame>

Sie haben das Segment nun erfolgreich konfiguriert, um Besuche mit der Custom Data **Premium users** einzubeziehen.

Um New segment in einem Experiment zu verwenden, kehren Sie zu Ihrem Experimente-Dashboard zurück.

Klicken Sie neben dem Experiment, dem Sie **New segment** zuordnen möchten, auf **Edit**.

<Frame>
  ![Edit-experiment](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/edit-experiment.png)
</Frame>

Sobald Sie zum folgenden Fenster weitergeleitet werden, wählen Sie in der oberen linken Ecke **Targeting** aus.

<Frame>
  ![Targeting](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/Targeting.png)
</Frame>

Wählen Sie unter **Targeting** die Option **Target a segment** und anschließend **New segment** aus.

Auf Ihrem Bildschirm wird Folgendes angezeigt:

<Frame>
  ![Segment\_targetted](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/Segment-targeting.png)
</Frame>

Klicken Sie dann in der oberen rechten Ecke auf **Launch**.

<Frame>
  ![Launch](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/Launch.png)
</Frame>

Eine Zusammenfassung des Experimententwurfs wird angezeigt.

<Frame>
  ![Draft](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/Draft.png)
</Frame>

Wenn Sie mit der bestehenden Konfiguration zufrieden sind, klicken Sie auf **Launch**.

<Frame>
  ![Launched](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/Launched.png)
</Frame>

Kehren Sie zu Ihrem Dashboard zurück und klicken Sie auf das Experiment, dem Sie das Segment zugeordnet haben. Sie werden sehen, dass **New segment** erfolgreich zum Experiment hinzugefügt wurde:

<Frame>
  ![Final](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/dataapitutorial/Final.png)
</Frame>
