Erste Schritte mit REST APIs getting-started-with-rest-apis
Informationen zu allgemeinen Anforderungen, Authentifizierung, optionalen Abfrageparametern, Anforderung URLs und anderen Verweisen.
API-Anforderungen und Recommendations api-requirements-recommendations
Beachten Sie Folgendes beim Arbeiten mit dem Code der Audience Manager-API:
- Anforderungsparameter: Alle Anforderungsparameter sind erforderlich, sofern nicht anders angegeben.
- Anforderungsheader: Bei Verwendung von Adobe Developer-Token müssen Sie die Kopfzeile
x-api-key
angeben. Sie können Ihren API -Schlüssel abrufen, indem Sie die Anweisungen auf der Seite Dienstkontointegration befolgen. - JSONContent-Typ: Geben Sie
content-type: application/json
undaccept: application/json
in Ihren Code ein. - Anforderungen und Antworten: Anforderungen als ordnungsgemäß formatiertes JSON -Objekt senden. Audience Manager antwortet mit JSON formatierten Daten. Serverantworten können angeforderte Daten, einen Statuscode oder beides enthalten.
- Zugriff: Ihr Audience Manager -Berater stellt Ihnen eine Client-ID und einen Schlüssel zur Verfügung, mit denen Sie API -Anfragen stellen können.
- Dokumentation und Codebeispiele: Text in kursiv stellt eine Variable dar, die Sie beim Erstellen oder Empfangen von API -Daten bereitstellen oder übergeben. Ersetzen Sie den Text kursiv gedruckt durch Ihren eigenen Code, Ihre eigenen Parameter oder andere erforderliche Informationen.
Authentifizierung authentication
Die Audience Manager REST APIs unterstützen drei Authentifizierungsmethoden.
- [Empfohlen]{class="badge positive"}OAuth Server-zu-Server-Authentifizierung mit der Adobe-Entwicklerkonsole. Adobe Developer ist das Ökosystem und die Community für Adobe. Es enthält APIs für alle Adobe-Produkte. Dies ist die empfohlene Methode zum Einrichten und Verwenden von Adobe APIs. Weitere Informationen zu OAuth Server-zu-Server-Authentifizierung finden Sie in der Adobe-Entwicklerdokumentation.
- [veraltet]{class="badge negative"}JWT (Service Account)-Authentifizierung mit der Adobe-Entwicklerkonsole. Adobe Developer ist das Ökosystem und die Community für Adobe. Es enthält APIs für alle Adobe-Produkte.
- [veraltet]{class="badge negative"}Legacy OAuth Authentication. Diese Methode wird zwar nicht mehr unterstützt, Kunden mit vorhandenen OAuth -Integrationen können diese Methode jedoch weiterhin verwenden.
OAuth-Server-zu-Server-Authentifizierung mit Adobe Developer oauth-adobe-developer
In diesem Abschnitt wird beschrieben, wie Sie die erforderlichen Anmeldeinformationen erfassen, um Audience Manager-API-Aufrufe zu authentifizieren, wie im unten stehenden Flussdiagramm beschrieben. Sie können die meisten erforderlichen Anmeldeinformationen bei der ersten einmaligen Einrichtung erfassen. Das Zugriffstoken muss jedoch alle 24 Stunden aktualisiert werden.
Übersicht über Adobe Developer developer-overview
Adobe Developer ist das Ökosystem und die Community für Adobe. Es enthält APIs für alle Adobe-Produkte.
Dies ist die empfohlene Methode zum Einrichten und Verwenden von Adobe APIs.
Voraussetzungen prerequisites-server-to-server
Bevor Sie die OAuth Server-to-Server-Authentifizierung konfigurieren können, stellen Sie sicher, dass Sie Zugriff auf die Adobe Developer Console in Adobe Developer haben. Wenden Sie sich für Zugriffsanfragen an Ihren Organisationsadministrator.
Authentifizierung oauth
Gehen Sie wie folgt vor, um die OAuth Server-to-Server-Authentifizierung mit Adobe Developer zu konfigurieren:
- Melden Sie sich bei Adobe Developer Console an.
- Führen Sie die Schritte im Implementierungshandbuch für "OAuth Server-zu-Server-Anmeldedaten"🔗 aus.
- Wählen Sie während Schritt 2: Hinzufügen einer API zu Ihrem Projekt mithilfe der Dienstkontoauthentifizierung die Option Audience Manager API aus.
- Probieren Sie die Verbindung aus, indem Sie Ihren ersten API -Aufruf anhand der Anweisungen aus Schritt 3 durchführen.
Hinzufügen einer Audience Manager-API zu einem Projekt add-aam-api-to-project
Wechseln Sie zu Adobe Developer Console und melden Sie sich mit Ihrer Adobe ID an. Führen Sie anschließend die im Tutorial zum Erstellen eines leeren Projekts in der Adobe Developer Console-Dokumentation beschriebenen Schritte aus.
Nachdem Sie ein neues Projekt erstellt haben, wählen Sie Add API auf dem Bildschirm Project Overview aus.
Der Bildschirm Add an API wird angezeigt. Wählen Sie das Produktsymbol für Adobe Experience Cloud und dann Audience Manager API aus, bevor Sie Next auswählen.
Wählen Sie den Authentifizierungstyp OAuth Server-zu-Server aus. select-oauth-server-to-server
Wählen Sie anschließend den Authentifizierungstyp aus, um Zugriffstoken zu generieren und auf die Audience Manager-API zuzugreifen.
Produktprofile für Ihre Integration auswählen select-product-profiles
Wählen Sie im Bildschirm Configure API die gewünschten Produktprofile aus. Das Dienstkonto Ihrer Integration erhält über die hier ausgewählten Produktprofile Zugriff auf granulare Funktionen.
Wählen Sie Save configured API aus, wenn Sie bereit sind.
Sammeln von Anmeldeinformationen gather-credentials
Nachdem die API zum Projekt hinzugefügt wurde, zeigt die Seite "Audience Manager API"für das Projekt die folgenden Anmeldeinformationen an, die für alle Aufrufe an Audience Manager-APIs erforderlich sind:
{API_KEY}
(Client ID){ORG_ID}
(Organization ID)
Zugriffstoken generieren generate-access-token
Der nächste Schritt besteht darin, eine {ACCESS_TOKEN}
-Berechtigung für die Verwendung in Audience Manager-API-Aufrufen zu generieren. Im Gegensatz zu den Werten für {API_KEY}
und {ORG_ID}
muss alle 24 Stunden ein neues Token generiert werden, um weiterhin Audience Manager-APIs zu verwenden. Wählen Sie "Generate access token", wie unten dargestellt.
API-Aufruf testen test-api-call
Nachdem Sie Ihr Authentifizierungs-Bearer-Token erhalten haben, führen Sie einen API-Aufruf durch, um zu testen, ob Sie jetzt auf Audience Manager-APIs zugreifen können.
-
Navigieren Sie zur API-Referenzdokumentation.
-
Wählen Sie Authorize aus und fügen Sie das Zugriffstoken ein, das Sie im Schritt Zugriffstoken generieren erhalten haben.
-
Führen Sie einen GET-Aufruf an den API-Endpunkt
/datasources
durch, um eine Liste aller global verfügbaren Datenquellen abzurufen, wie in der API-Referenzdokumentation angegeben. Wählen Sie "Try it out", gefolgt von "Execute", wie unten dargestellt.
code language-shell |
---|
|
Bei Verwendung eines funktionierenden Zugriffs-Tokens gibt der API-Endpunkt eine Antwort "200"zusammen mit einem Antworttext zurück, der alle globalen Datenquellen enthält, auf die Ihr Unternehmen Zugriff hat.
code language-json |
---|
|
[veraltet]{class="badge negative"}JWT (Service Account) Authentifizierung mit Adobe Developer jwt
Übersicht über Adobe Developer adobeio
Adobe Developer ist das Ökosystem und die Community für Adobe. Es enthält APIs für alle Adobe-Produkte.
Dies ist die empfohlene Methode zum Einrichten und Verwenden von Adobe APIs.
Voraussetzungen prerequisites
Bevor Sie die JWT-Authentifizierung konfigurieren können, stellen Sie sicher, dass Sie Zugriff auf die Adobe Developer Console in Adobe Developer haben. Wenden Sie sich für Zugriffsanfragen an Ihren Organisationsadministrator.
Authentifizierung auth
Gehen Sie wie folgt vor, um die JWT (Service Account)-Authentifizierung mit Adobe Developer zu konfigurieren:
- Melden Sie sich bei Adobe Developer Console an.
- Führen Sie die Schritte unter Verbindung mit Dienstkonten aus.
- Wählen Sie während Schritt 2: Hinzufügen einer API zu Ihrem Projekt mithilfe der Dienstkontoauthentifizierung die Option Audience Manager API aus.
- Probieren Sie die Verbindung aus, indem Sie Ihren ersten API -Aufruf anhand der Anweisungen aus Schritt 3 durchführen.
note note |
---|
NOTE |
Um den Audience Manager REST APIs automatisiert zu konfigurieren und zu verwenden, können Sie den JWT programmatisch generieren. Detaillierte Anweisungen finden Sie unter JWT (Service Account) Authentication . |
RBAC-Berechtigungen für technische Konten
Wenn Ihr Audience Manager-Konto die rollenbasierte Zugriffssteuerung verwendet, müssen Sie ein technisches Audience Manager-Benutzerkonto erstellen und es der Audience Manager-RBAC-Gruppe hinzufügen, die die API-Aufrufe durchführt.
Gehen Sie wie folgt vor, um ein technisches Benutzerkonto zu erstellen und es einer RBAC-Gruppe hinzuzufügen:
-
Rufen Sie
GET
aufhttps://aam.adobe.io/v1/users/self
. Durch den Aufruf wird ein technisches Benutzerkonto erstellt, das Sie auf der Seite Users unter Admin Console sehen können. -
Melden Sie sich bei Ihrem Audience Manager-Konto an und fügen Sie das technische Benutzerkonto 🔗 der Benutzergruppe hinzu, die die API-Aufrufe durchführt.
[veraltet]{class="badge negative"}OAuth Authentifizierung (veraltet) oauth-deprecated
note warning |
---|
WARNING |
Audience Manager REST API Token-Authentifizierung und -Erneuerung über OAuth 2.0 ist jetzt veraltet. |
Verwenden Sie stattdessen die Authentifizierung mit JWT (Dienstkonto). |
Die Audience Manager REST API befolgt OAuth 2.0 Standards für die Token-Authentifizierung und -Erneuerung. In den folgenden Abschnitten wird beschrieben, wie Sie sich authentifizieren und mit den APIs arbeiten.
Generischen API Benutzer erstellen requirements
Es wird empfohlen, ein separates technisches Benutzerkonto für die Arbeit mit den Audience Manager APIs zu erstellen. Dies ist ein generisches Konto, das nicht an einen bestimmten Benutzer in Ihrem Unternehmen gebunden ist oder mit diesem verknüpft ist. Mit diesem Benutzerkonto vom Typ API können Sie zwei Dinge erreichen:
- Identifizieren Sie, welcher Dienst die API aufruft (z. B. Aufrufe aus Ihren Apps, die unsere API verwenden, oder aus anderen Tools, die API -Anfragen stellen).
- Gewähren Sie unterbrechungsfreien Zugriff auf die APIs. Ein Konto, das an eine bestimmte Person gebunden ist, kann gelöscht werden, wenn sie Ihr Unternehmen verlässt. Dadurch wird verhindert, dass Sie mit dem verfügbaren API -Code arbeiten. Ein generisches Konto, das nicht an einen bestimmten Mitarbeiter gebunden ist, hilft Ihnen, dieses Problem zu vermeiden.
Nehmen wir als Beispiel oder Anwendungsfall für diesen Kontotyp an, Sie möchten viele Segmente gleichzeitig mit den Tools für die Massenverwaltung ändern. Dazu benötigt Ihr Benutzerkonto API Zugriff. Anstatt einem bestimmten Benutzer Berechtigungen hinzuzufügen, erstellen Sie ein unspezifisches Benutzerkonto mit dem Namen API , das über die entsprechenden Anmeldeinformationen, den Schlüssel und das Geheimnis verfügt, um API -Aufrufe durchzuführen. Dies ist auch nützlich, wenn Sie eigene Anwendungen entwickeln, die die Audience Manager APIs verwenden.
Arbeiten Sie mit Ihrem Audience Manager -Berater zusammen, um ein generisches Benutzerkonto einzurichten, das nur für API gilt.
Workflow zur Kennwortauthentifizierung password-authentication-workflow
Passwortauthentifizierung sicher auf unsere REST API zugreifen. Die folgenden Schritte beschreiben den Workflow für die Kennwortauthentifizierung von einem JSON -Client in Ihrem Browser.
note tip |
---|
TIP |
Verschlüsseln Sie den Zugriff und aktualisieren Sie Token, wenn Sie sie in einer Datenbank speichern. |
Schritt 1: Anfordern des Zugriffs auf API
Wenden Sie sich an Ihren Partner Solutions Manager. Sie erhalten eine API Client-ID und ein Geheimnis. Die Kennung und das Geheimnis authentifizieren Sie bei API.
Hinweis: Wenn Sie ein Aktualisierungstoken erhalten möchten, geben Sie dies an, wenn Sie den Zugriff auf API anfordern.
Schritt 2: Anfordern des Tokens
Übergeben Sie eine Token-Anfrage an Ihren bevorzugten JSON-Client. Wenn Sie die Anforderung erstellen:
- Verwenden Sie eine
POST
-Methode, umhttps://api.demdex.com/oauth/token
aufzurufen. - Konvertieren Sie Ihre Client-ID und Ihr Geheimnis in eine Base-64-kodierte Zeichenfolge. Trennen Sie die ID und das Geheimnis während des Konvertierungsprozesses durch einen Doppelpunkt. Beispielsweise werden die Anmeldedaten
testId : testSecret
indGVzdElkOnRlc3RTZWNyZXQ=
konvertiert. - Übergeben Sie die HTTP headers
Authorization:Basic <base-64 clientID:clientSecret>
undContent-Type: application/x-www-form-urlencoded
. Die Kopfzeile könnte beispielsweise wie folgt aussehen:Authorization: Basic dGVzdElkOnRlc3RTZWNyZXQ=
Content-Type: application/x-www-form-urlencoded
- Richten Sie den Anfragetext wie folgt ein:
grant_type=password&username=<your-AudienceManager-user-name>&password=<your-AudienceManager-password>
Schritt 3: Token erhalten
Die Antwort JSON enthält Ihr Zugriffstoken. Die Antwort sollte wie folgt aussehen:
code language-json |
---|
|
Der Schlüssel expires_in
gibt die Anzahl der Sekunden an, bis das Zugriffstoken abläuft. Es hat sich bewährt, kurze Ablaufzeiten zu verwenden, um die Exposition zu begrenzen, wenn das Token jemals offen gelegt wird.
Token aktualisieren refresh-token
Aktualisieren Sie Token, um den API -Zugriff zu verlängern, nachdem das ursprüngliche Token abläuft. Bei Bedarf enthält die Antwort JSON im Kennwort-Workflow ein Aktualisierungstoken. Wenn Sie kein Aktualisierungstoken erhalten, erstellen Sie mithilfe des Kennwortauthentifizierungsprozesses ein neues.
Sie können auch ein Aktualisierungstoken verwenden, um ein neues Token zu generieren, bevor das vorhandene Zugriffstoken abläuft.
Wenn Ihr Zugriffstoken abgelaufen ist, erhalten Sie einen 401 Status Code
-Wert und die folgende Kopfzeile in der Antwort:
WWW-Authenticate: Bearer realm="oauth", error="invalid_token", error_description="Access token expired: <token>"
Die folgenden Schritte beschreiben den Workflow für die Verwendung eines Aktualisierungstokens zum Erstellen eines neuen Zugriffstokens von einem JSON -Client in Ihrem Browser.
Schritt 1: Anfordern des neuen Tokens
Übergeben Sie eine Aktualisierungs-Token-Anfrage mit Ihrem bevorzugten JSON-Client. Wenn Sie die Anforderung erstellen:
- Verwenden Sie eine
POST
-Methode, umhttps://api.demdex.com/oauth/token
aufzurufen. - Konvertieren Sie Ihre Client-ID und Ihr Geheimnis in eine Base-64-kodierte Zeichenfolge. Trennen Sie die ID und das Geheimnis während des Konvertierungsprozesses durch einen Doppelpunkt. Beispielsweise werden die Anmeldedaten
testId : testSecret
indGVzdElkOnRlc3RTZWNyZXQ=
konvertiert. - Übergeben Sie die HTTP-Header
Authorization:Basic <base-64 clientID:clientSecret>
undContent-Type: application/x-www-form-urlencoded
. Die Kopfzeile könnte beispielsweise wie folgt aussehen:Authorization: Basic dGVzdElkOnRlc3RTZWNyZXQ=
Content-Type: application/x-www-form-urlencoded
- Geben Sie im Anfragetext den Wert "
grant_type:refresh_token
"an und übergeben Sie das Aktualisierungstoken, das Sie in Ihrer vorherigen Zugriffsanforderung erhalten haben. Die Anfrage sollte wie folgt aussehen:grant_type=refresh_token&refresh_token=b27122c0-b0c7-4b39-a71b-1547a3b3b88e
Schritt 2: Empfangen des neuen Tokens
Die Antwort JSON enthält Ihr neues Zugriffstoken. Die Antwort sollte wie folgt aussehen:
code language-json |
---|
|
Autorisierungscode und implizite Authentifizierung authentication-code-implicit
Die Audience Manager REST API unterstützt Autorisierungscode und implizite Authentifizierung. Um diese Zugriffsmethoden verwenden zu können, müssen sich Ihre Benutzer bei https://api.demdex.com/oauth/authorize
anmelden, um Zugriff auf Token zu erhalten und sie zu aktualisieren.
Authentifizierte API Anforderungen stellen authenticated-api-requests
Voraussetzungen für den Aufruf von API -Methoden nach Erhalt eines Authentifizierungstokens.
So führen Sie Aufrufe für die verfügbaren API -Methoden durch:
- Legen Sie in der Kopfzeile
HTTP
den WertAuthorization: Bearer <token>
fest. - Bei Verwendung der JWT (Service Account)-Authentifizierung müssen Sie die
x-api-key
-Kopfzeile angeben, die mit Ihrerclient_id
übereinstimmt. Sie können Ihreclient_id
von der Seite Adobe Developer-Integration abrufen. - Rufen Sie die erforderliche API -Methode auf.
Optionale API Abfrageparameter optional-api-query-parameters
Legen Sie die optionalen Parameter fest, die für Methoden verfügbar sind, die alle Eigenschaften für ein Objekt zurückgeben.
Sie können diese optionalen Parameter mit API -Methoden verwenden, die alle -Eigenschaften für ein Objekt zurückgeben. Legen Sie diese Optionen in der Anforderungszeichenfolge fest, wenn Sie diese Abfrage an den API übergeben.
page
pageSize
sortBy
descending
ascending
ist der Standardwert.search
GET https://aam.adobe.io/v1/models/?search=Test
. Sie können nach jedem Wert suchen, der von einer "get all"-Methode zurückgegeben wird.folderId
permissions
Gibt eine Liste von Segmenten basierend auf der angegebenen Berechtigung zurück. READ
ist der Standardwert. Zu den Berechtigungen gehören:
READ
: Gibt Informationen zu einem Segment zurück und zeigt sie an.WRITE
: MitPUT
können Sie ein Segment aktualisieren.CREATE
: Verwenden SiePOST
, um ein Segment zu erstellen.DELETE
: Löschen Sie ein Segment. Erfordert Zugriff auf zugrunde liegende Eigenschaften, falls vorhanden. Beispielsweise benötigen Sie Berechtigungen zum Löschen der Eigenschaften, die zu einem Segment gehören, wenn Sie es entfernen möchten.
Geben Sie mehrere Berechtigungen mit separaten Schlüssel-Wert-Paaren an. Um beispielsweise nur eine Liste von Segmenten mit READ
- und WRITE
-Berechtigungen zurückzugeben, geben Sie "permissions":"READ"
, "permissions":"WRITE"
ein.
includePermissions
true
, um Ihre Berechtigungen für das Segment zurückzugeben. Der Standardwert ist false
.Ein Hinweis zu Seitenoptionen
Wenn die Seiteninformationen nicht angegeben sind, gibt die Anfrage nur JSON zurück, was zu einem Array führt. Wenn die Seiteninformationen den Wert aufweisen, wird die zurückgegebene Liste in ein JSON -Objekt eingeschlossen, das Informationen zum Gesamtergebnis und zur aktuellen Seite enthält. Ihre Beispielanfrage mit Seitenoptionen könnte in etwa wie folgt aussehen:
GET https://aam.adobe.io/v1/models/?page=1&pageSize=2&search=Test
API URLs api-urls
URLs für Anforderungen, Staging- und Produktionsumgebungen sowie Versionen.
Anfrage URLs request-urls
In der folgenden Tabelle ist die Anfrage URLs aufgeführt, die zum Übergeben von API -Anforderungen verwendet wird (nach Methode).
Abhängig von der verwendeten Authentifizierungsmethode müssen Sie Ihre Anfrage URLs entsprechend den Tabellen unten anpassen.
Anfrage URLs für den [empfohlenen ]{class="badge positive"}[veraltet]{class="badge negative"}JWT Authentifizierung über Adobe Developer request-urls-jwt
https://aam.adobe.io/v1/models/
https://aam.adobe.io/v1/datasources/
https://aam.adobe.io/v1/signals/derived/
https://aam.adobe.io/v1/destinations/
https://aam.adobe.io/v1/partner-sites/
https://aam.adobe.io/v1/folders/traits /
Segmente:
https://aam.adobe.io/v1/folders/segments /
https://aam.adobe.io/v1/schemas/
https://aam.adobe.io/v1/segments/
https://aam.adobe.io/v1/traits/
https://aam.adobe.io/v1/customer-trait-types
https://aam.adobe.io/v1/taxonomies/0/
Anfrage URLs für den [veralteten ]{class="badge negative"}OAuth Authentifizierung request-urls-oauth
https://api.demdex.com/v1/models/
https://api.demdex.com/v1/datasources/
https://api.demdex.com/v1/signals/derived/
https://api.demdex.com/v1/destinations/
https://api.demdex.com/v1/partner-sites/
https://api.demdex.com/v1/folders/traits /
Segmente:
https://api.demdex.com/v1/folders/segments /
https://api.demdex.com/v1/schemas/
https://api.demdex.com/v1/segments/
https://api.demdex.com/v1/traits/
https://api.demdex.com/v1/customer-trait-types
https://api.demdex.com/v1/taxonomies/0/
Umgebungen environments
Die Audience Manager API bieten Zugriff auf verschiedene Arbeitsumgebungen. Diese Umgebungen helfen Ihnen beim Testen von Code mit separaten Datenbanken, ohne dass sich dies auf Live-Produktionsdaten auswirkt. In der folgenden Tabelle sind die verfügbaren API -Umgebungen und die entsprechenden Ressourcen-Hostnamen aufgeführt.
Abhängig von der verwendeten Authentifizierungsmethode müssen Sie Ihre Umgebung URLs entsprechend der unten stehenden Tabelle anpassen.
https://aam.adobe.io/...
https://api.demdex.com/...
https://aam-beta.adobe.io/...
https://api-beta.demdex.com/...
Versionen versions
Neue Versionen dieser APIs werden regelmäßig veröffentlicht. Bei einer neuen Version wird die Versionsnummer API erhöht. Die Versionsnummer wird in der Anfrage URL als v<version number>
referenziert, wie im folgenden Beispiel gezeigt:
https://<host>/v1/...
Definierte Antwortcodes response-codes-defined
HTTP
Statuscodes und Antworttext, die von der Audience Manager REST API zurückgegeben werden.
200
OK
201
Created
PUT
- und POST
-Anforderungen zurück.204
No Content
400
Bad Request
403
Forbidden
404
Not Found
409
Conflict
500
Server Error