[Beta]{class="badge informative"}
Shopify Streaming
Adobe Experience Platform unterstützt die Erfassung von Daten aus Streaming-Anwendungen. Unterstützung für Streaming-Anbieter ist Shopify.
Voraussetzungen prerequisites
Im folgenden Abschnitt werden die erforderlichen Schritte beschrieben, die vor Verwendung der Shopify Streaming -Quelle durchgeführt werden müssen.
Sie müssen über ein gültiges Shopify -Partnerkonto verfügen, um eine Verbindung zu den Shopify -APIs herzustellen. Wenn Sie noch kein Partnerkonto haben, registrieren Sie sich über das Dashboard Shopify Partner.
Anwendung erstellen
Mit einem gültigen Shopify Partnerkonto können Sie jetzt mit dem Partner-Dashboard fortfahren und Ihre App erstellen. Umfassende Schritte zum Erstellen Ihrer App in Shopify finden Sie im Shopify Handbuch zu den ersten Schritten.
Rufen Sie nach der Erstellung Ihrer App die Client-ID und das Client-Geheimnis aus der Registerkarte Client-Anmeldeinformationen im Partner-Dashboard Shopify ab. Die Client-ID und das Client-Geheimnis werden in den nächsten Schritten verwendet, um Ihren Autorisierungscode und Ihr Zugriffstoken abzurufen.
Abrufen des Autorisierungscodes
Rufen Sie anschließend Ihren Autorisierungscode ab, indem Sie die URL myshopify.com
Ihrer Domäne in Ihren Browser eingeben und Abfragezeichenfolgen verwenden, die Ihren API-Schlüssel, Ihre Perimeter und den Umleitungs-URI definieren.
Das Format dieser URL lautet wie folgt:
API-Format
https://{SHOP}.myshopify.com/admin/oauth/authorize?client_id={API_KEY}&scope={SCOPES}&redirect_uri={REDIRECT_URI}
shop
myshopify.com
-URL.api_key
scopes
scope=write_orders,read_customers
setzen, um Berechtigungen zum Ändern von Bestellungen und zum Lesen von Kunden zu gewähren.redirect_uri
Anfrage
https://connnectors-test.myshopify.com/admin/oauth/authorize?client_id=l6fiviermmzpram5i1spfub99shms3j9&scope=write_orders,read_customers&redirect_uri=https://acme.com
Antwort
Bei einer erfolgreichen Antwort wird Ihre Umleitungs-URL zurückgegeben, einschließlich des Autorisierungscodes, der zum Generieren Ihres Zugriffstokens erforderlich ist.
https://www.acme.com/?code=k6j2palgrbljja228ou8c20fmn7w41gz&hmac=68c9163f772eecbc8848c90f695bca0460899c125af897a6d2b0ebbd59d3a43b&shop=connnectors-test.myshopify.com&state=123456×tamp=1658305460
Zugriffstoken abrufen
Nachdem Sie nun Ihre Client-ID, Ihr Client-Geheimnis und Ihren Autorisierungscode haben, können Sie Ihr Zugriffstoken abrufen. Um Ihr Zugriffstoken abzurufen, stellen Sie eine POST-Anfrage an die myshopify.com
-URL Ihrer Domäne, während Sie diese URL mit dem Shopify’s -API-Endpunkt anhängen: /admin/oauth/access_token
.
API-Format
POST /{SHOP}.myshopify.com/admin/oauth/access_token
Anfrage
Die folgende Anfrage generiert ein Zugriffstoken für Ihre Shopify -Instanz.
curl -X POST \
'https://connnectors-test.myshopify.com/admin/oauth/access_token' \
-H 'developer-token: {DEVELOPER_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'Cookie: _master_udr=xxx; request_method=POST'
-d '{
"client_id": "l6fiviermmzpram5i1spfub99shms3j9",
"client_secret": "dajn3caxz9s7ti624ncyv_m4f60jnwi3ii3y3k",
"code": "k6j2palgrbljja228ou8c20fmn7w41gz"
}'
Antwort
Bei einer erfolgreichen Antwort werden Ihr Zugriffstoken und die Berechtigungsbereiche zurückgegeben.
{
"access_token": "shpca_wjhifwfc91psjtldysxd6rqli371tx54",
"scope": "write_orders,read_customers"
}
Webhook für Streaming-Shopify-Daten erstellen webhook
Webhooks ermöglichen es Anwendungen, mit Ihren Shopify -Daten synchronisiert zu bleiben oder eine Aktion auszuführen, nachdem ein bestimmtes Ereignis in einem Shop aufgetreten ist. Beim Streaming von Shopify -Daten an Experience Platform können Webhooks verwendet werden, um den HTTP-Endpunkt und die Themen für die Anmeldung zu definieren.
Anfrage
Die folgende Anfrage erstellt einen Webhook für Ihre Shopify Streaming -Daten.
curl -X POST \
'https://connnectors-test.myshopify.com/admin/api/2022-07/webhooks.json' \
-H 'X-Shopify-Access-Token: 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' \
-H 'Content-Type: application/json' \; request_method=POST' \
-d '{
"webhook": {
"address": "https://dcs.adobedc.net/collection/9d411a24aa3c0a3eded92bac6c64d0da986ee7a8212f87168c5fb42d9ddc3227",
"topic": "orders/create",
"format": "json"
}
}'
webhook.address
webhook.topic
webhook.format
Antwort
Bei einer erfolgreichen Antwort werden Informationen zu Ihrem Webhook zurückgegeben, einschließlich der zugehörigen id
-, Adresse- und anderen Metadateninformationen.
{
"webhook": {
"id": 1091138715786,
"address": "https://dcs.adobedc.net/collection/9d411a24aa3c0a3eded92bac6c64d0da986ee7a8212f87168c5fb42d9ddc3227",
"topic": "orders/create",
"created_at": "2022-07-20T07:15:23-04:00",
"updated_at": "2022-07-20T07:15:23-04:00",
"format": "json",
"fields": [],
"metafield_namespaces": [],
"api_version": "2021-10",
"private_metafield_namespaces": []
}
}
Einschränkungen limitations
Im Folgenden finden Sie eine Liste bekannter Einschränkungen, auf die Sie bei der Verwendung von Webhooks mit der Quelle Shopify Streaming stoßen können.
- Es ist nicht garantiert, dass Sie die Reihenfolge der verschiedenen Themen für dieselbe Ressource festlegen können. Beispielsweise ist es möglich, dass ein
products/update
-Webhook vor einemproducts/create
-Webhook bereitgestellt wird. - Sie können Ihren Webhook so einrichten, dass Webhook-Ereignisse mindestens einmal an einen Endpunkt gesendet werden. Das bedeutet, dass ein Endpunkt dasselbe Ereignis mehrmals empfangen kann. Sie können nach doppelten Webhook-Ereignissen suchen, indem Sie die Kopfzeile
X-Shopify-Webhook-Id
mit vorherigen Ereignissen vergleichen. - Shopify behandelt HTTP 2xx-Statusantworten als erfolgreiche Benachrichtigungen. Alle anderen Status-Code-Antworten werden als fehlgeschlagen betrachtet. Shopify bietet einen Wiederholungsmechanismus für fehlgeschlagene Webhook-Benachrichtigungen. Wenn keine Antwort vorhanden ist, nachdem fünf Sekunden gewartet wurde, versucht Shopify im Laufe der nächsten 48 Stunden die Verbindung 19 Mal erneut. Wenn am Ende des Wiederholungszeitraums immer noch keine Antworten vorhanden sind, löscht Shopify den Webhook.
Nächste Schritte
In den folgenden Tutorials erfahren Sie, wie Sie mithilfe der API und der Benutzeroberfläche Ihre Shopify Streaming-Quelle mit dem Experience Platform verbinden: