Anwendungsfall-Leitfaden für die Tokens-API
Verwenden Sie das Token für eingeschränkte Daten für den sicheren Zugriff auf Vertriebspartner-APIs.
API-Version: 2021-03-01
Was ist die Token-API?
Die Vertriebspartner-API für Tokens (Token-API) bietet eine sichere Möglichkeit, auf die persönlich identifizierbaren Informationen (PII) eines Kunden zuzugreifen. Sie können den anrufen createRestrictedDataToken
Betrieb der Token-API, um ein Restricted Data Token (RDT) für eine oder mehrere von Ihnen angegebene eingeschränkte Ressourcen abzurufen. Oder, wenn Sie eine Delegate-Anwendung haben, können Sie ein RDT von einer Delegator-Anwendung abrufen, die einem Entwickler gehört, mit dem Sie eng zusammenarbeiten (siehe Autorisierung delegieren). In beiden Fällen autorisiert Sie ein RDT, Operationen aufzurufen, die eingeschränkte Daten zurückgeben. Definitionen finden Sie unter Terminologie.
Wenn Sie einen eingeschränkten Betrieb aufrufen, fügen Sie ein RDT in das x-amz-access-token
Kopfzeile. Dies steht im Gegensatz zu anderen Verkäufer-Partner-API-Vorgängen, bei denen Sie ein LWA-Zugriffstoken in das x-amz-access-token
Kopfzeile. Weitere Informationen finden Sie unter Schritt 3. Fügen Sie der URI Header hinzu.
Delegieren der Autorisierung
Mit der Token-API kann eine Delegatoranwendung ein RDT abrufen, das die Autorisierung für den Zugriff auf personenbezogene Daten an eine Delegate-Anwendung delegiert. Die Delegatoranwendung wird vom Vertriebspartner autorisiert und ist die Anwendung, mit der der Verkaufspartner interagiert. Die Delegate-Anwendung erfüllt eine spezielle Funktion, für die personenbezogene Daten erforderlich sind, z. B. Versand-, Steuerrechnungs- oder Steuererstattungsdienste. Diese beiden Anwendungen gehören unterschiedlichen Entwicklern und sind eng miteinander verknüpft, sodass die Delegator-Anwendung ein RDT sicher an die Delegate-Anwendung übertragen kann. Weitere Informationen zum Delegieren von Autorisierungen mithilfe eines RDT finden Sie unter Tutorial: Autorisierung für den Zugriff auf PII delegieren.
Terminologie
-
Eingeschränktes Datentoken (RDT). Ein kurzlebiges Zugriffstoken, das Vorgänge mit eingeschränkten Aufrufen autorisiert. Ein RDT ist eine Stunde lang gültig.
-
Eingeschränkter Betrieb. Ein Vorgang, der eingeschränkte Daten, wie personenbezogene Daten, zurückgibt. Sie benötigen ein RDT, um einen eingeschränkten Vorgang aufzurufen.
-
Eingeschränkte Ressource. Eine HTTP-Methode und ein Pfad, die einen eingeschränkten Vorgang darstellen.
-
Eingeschränkter Berichtstyp. Ein Berichtstyp, der PII enthält. Weitere Informationen finden Sie unter Eingeschränkte Berichtstypen.
-
Delegierende Anwendung. Eine Anwendung, die ein RDT erhält und es an eine delegierte Anwendung weiterleitet. Der Verkaufspartner autorisiert die delegierende Anwendung und interagiert mit ihr.
-
Delegierte Anwendung. Eine Anwendung, die von einem RDT, das ihr von einer delegierenden Anwendung übergeben wird, die Autorisierung zum Aufrufen eingeschränkter Vorgänge erhält. Eine delegierte Anwendung erfüllt eine spezielle Funktion, für die personenbezogene Daten erforderlich sind, wie Versand, Steuerfakturierung oder Steuerüberweisung, und ist nicht direkt vom Verkaufspartner autorisiert.
-
Specific path. A path in a restricted resource that contains a specific order or shipment identifier. For example,
orders/v0/orders/902-3159896-1390916/address
. -
Generic path. A path in a restricted resource that contains a generic identifier, such as
{orderId}
or{shipmentId}
. For example,orders/v0/orders/{orderId}/address
.
Eingeschränkte Vorgänge
Eingeschränkte Vorgänge geben personenbezogene Daten der Kunden zurück. Sie benötigen ein RDT, um einen eingeschränkten Vorgang aufzurufen.
Hier ist eine Liste der eingeschränkten Vorgänge, gruppiert nach API:
API für Direktversand von Bestellungen:
getOrders
getOrder
API für Bestellungen mit direktem Versand v2021-12-28
getOrders
getOrder
API für Direktversand:
getShippingLabel
getShippingLabels
getPackingSlip
getPackingSlips
getCustomerInvoice
getCustomerInvoices
createShippingLabels
API für direkten Versand v2021-12-28
getShippingLabel
getCustomerInvoices
getCustomerInvoice
getPackingSlips
getPackingSlip
Easy Ship API v2022-03-23
createScheduledPackageBulk
API für die Händlerabwicklung:
getShipment
cancelShipment
cancelShipmentOld
createShipment
API für Bestellungen:
getOrders
getOrder
getOrderItems
getOrderRegulatedInfo
getOrderAddress
getOrderBuyerInfo
getOrderItemsBuyerInfo
API für Berichte:
getReportDocument
Hinweise
- Das
getReportDocument
Ein Vorgang wird nur dann als eingeschränkter Vorgang betrachtet, wenn ein eingeschränkter Berichtstyp angegeben ist. Weitere Informationen finden Sie in der Liste von eingeschränkte Berichtstypen. - Beim Anrufen des
createRestrictedDataToken
Operation, um ein RDT für das zu erhaltengetReportDocument
Operation, die angegebene eingeschränkte Ressource kann nur einen bestimmten Pfad enthalten, keinen generischen Pfad. Definitionen finden Sie unter Terminologie. - Bei Verwendung von RDT für den Zugriff auf
getReportDocument
Bedienung, stellen Sie sicher, dass Ihre Anwendung die richtigen Rollen hat, um auf den Bericht zuzugreifen. Beziehen Sie sich auf Rollen in der Vertriebspartner-API für die Zuordnung von Rollen zu Berichten.
Rechnungsstellung für den Versand:
getShipmentDetails
API für den Versand:
getShipment
Eingeschränkte Berichtstypen
Eingeschränkte Berichtstypen enthalten personenbezogene Daten. Wenn Sie einen getReportDocument
-Vorgang aufrufen und einen eingeschränkten Berichtstyp angeben, müssen Sie dem Aufruf ein RDT hinzufügen.
Hier finden Sie eine Liste der eingeschränkten Berichtstypen:
GET_AMAZON_FULFILLED_SHIPMENTS_DATA_INVOICING
GET_AMAZON_FULFILLED_SHIPMENTS_DATA_TAX
GET_FLAT_FILE_ACTIONABLE_ORDER_DATA_SHIPPING
GET_FLAT_FILE_ORDER_REPORT_DATA_SHIPPING
GET_FLAT_FILE_ORDER_REPORT_DATA_INVOICING
GET_FLAT_FILE_ORDER_REPORT_DATA_TAX
GET_FLAT_FILE_ORDERS_RECONCILIATION_DATA_TAX
GET_FLAT_FILE_ORDERS_RECONCILIATION_DATA_INVOICING
GET_FLAT_FILE_ORDERS_RECONCILIATION_DATA_SHIPPING
GET_ORDER_REPORT_DATA_INVOICING
GET_ORDER_REPORT_DATA_TAX
GET_ORDER_REPORT_DATA_SHIPPING
GET_EASYSHIP_DOCUMENTS
GET_GST_MTR_B2B_CUSTOM
GET_VAT_TRANSACTION_DATA
SC_VAT_TAX_REPORT
Tutorial: Holen Sie sich die Autorisierung für den Zugriff auf eingeschränkte Berichtstypen mit PII-Informationen
-
Das
getReportDocument
Ein Vorgang wird nur dann als eingeschränkter Vorgang betrachtet, wenn ein eingeschränkter Berichtstyp angegeben ist. Weitere Informationen finden Sie in der Liste von eingeschränkte Berichtstypen. -
Beim Anrufen des
createRestrictedDataToken
Operation, um ein RDT für das zu erhaltengetReportDocument
Operation, die angegebene eingeschränkte Ressource kann nur einen bestimmten Pfad enthalten, keinen generischen Pfad. Definitionen finden Sie unter Terminologie.
Voraussetzungen
Um dieses Tutorial abzuschließen, benötigen Sie Folgendes:
-
Autorisierung durch den Verkaufspartner, für den Sie Aufrufe durchführen. Siehe Autorisierung von API-Apps für Verkaufspartner für weitere Informationen.
-
Genehmigung für die folgenden Rollen:
- Direkter Versand an Verbraucher. Erforderlich für den Zugriff auf die Lieferadressinformationen.
- Steuerüberweisung. Erforderlich für den Zugriff auf Käuferinformationen.
- Rechnungsstellung mit Steuern. Erforderlich für den Zugriff auf Käuferinformationen.
Informationen zum Beantragen des Zugriffs auf diese Rollen finden Sie unter Registrierung als Entwickler und aktualisiere dein Entwicklerprofil.
Schritt 1: RDT abrufen
- Rufen Sie den
createRestrictedDataToken
-Vorgang auf, wobei die folgenden Parameter übergeben werden:
Textparameter:
Parameter | Beschreibung | Erforderlich |
---|---|---|
restrictedResources | Eine Liste eingeschränkter Ressourcen. Hinweis: Eine Zunahme der Anzahl eingeschränkter Ressourcen führt zu einer Zunahme der Größe des resultierenden eingeschränkten Datentokens. Die maximale Größe des Tokens für eingeschränkte Daten vor der Kodierung und Verschlüsselung darf 7 KB nicht überschreiten, ohne dass das Risiko eines Ausfalls besteht, wenn das Token verwendet wird. Wenn Sie mehrere Ressourcen anfordern, stellen Sie sicher, dass die angeforderten Ressourcen für den Kontotyp des Vertriebspartners gültig sind. Wenn Sie beispielsweise ein RDT-Token für einen Verkäufer anfordern, nehmen Sie keine anbieterspezifischen APIs in die createRestrictedDataToken Anruf anfordern. Typ: < RestrictedResource > Reihe |
Beispiel anfordern
POST https://sellingpartnerapi-na.amazon.com/tokens/2021-03-01/restrictedDataToken
{
"restrictedResources": [
{
"method": "GET",
"path": "/reports/2021-06-30/documents/amzn1.spdoc.1.4.eu.dca0cb77-4733-4769-8476-f09bc32be2af.T1KIM200NIMFNU.1234"
}
]
}
Antwort
Eine erfolgreiche Antwort umfasst Folgendes:
Name | Beschreibung |
---|---|
restrictedDataToken | Ein eingeschränktes Datentoken (RDT). Dies ist ein kurzlebiges Zugriffstoken, das Aufrufe für eingeschränkte Operationen autorisiert. Übergeben Sie diesen Wert mit dem x-amz-access-token Header bei nachfolgenden Aufrufen dieser eingeschränkten Ressourcen. Die Größe des RDT ist relativ zur Anzahl der eingeschränkten Ressourcen, die in der Anfrage angegeben sind. Die maximale Größe des Tokens für eingeschränkte Daten vor der Kodierung und Verschlüsselung darf 7 KB nicht überschreiten, ohne dass das Risiko eines Fehlers besteht, wenn das Token verwendet wird. Typ: Zeichenfolge |
expiresIn | Die Lebensdauer des Restricted Data Tokens in Sekunden. Typ: Ganzzahl |
Beispiel für eine Antwort
{
"restrictedDataToken": "Atz.sprdt|IQEBLjAsAhRmHjNgHpi0U-Dme37rR6CuUpSR",
"expiresIn": 3600
}
- Speichern Sie die
restrictedDataToken
Wert (der RDT), um ihn in dergetReportDocument
Betrieb.
Tutorial: Autorisierung für den Zugriff auf personenbezogene Daten für Großbestellungen anfordern
Sie können ein RDT anfordern, um autorisierten Zugriff auf personenbezogene Daten für Großbestellungen zu erhalten. Die dataElements
-Werte, die Sie angeben (mit dem restrictedResources
-Parameter des createRestrictedDataToken
-Vorgangs) bestimmen den Typ der eingeschränkten Daten, auf die Ihre Anwendung über das RDT zugreifen kann. In diesem Tutorial fordern wir ein RDT an, das den Zugriff sowohl auf Käuferinformationen als auch auf Lieferadressinformationen autorisiert.
Voraussetzungen
Um dieses Tutorial abzuschließen, benötigen Sie Folgendes:
-
Autorisierung durch den Verkaufspartner, für den Sie Aufrufe durchführen. Siehe Autorisierung von API-Apps für Verkaufspartner für weitere Informationen.
-
Genehmigung für die folgenden Rollen:
- Direkter Versand an Verbraucher. Erforderlich für den Zugriff auf die Lieferadressinformationen.
- Steuerüberweisung. Erforderlich für den Zugriff auf Käuferinformationen.
- Rechnungsstellung mit Steuern. Erforderlich für den Zugriff auf Käuferinformationen.
Informationen zum Beantragen des Zugriffs auf diese Rollen finden Sie unter Registrierung als Entwickler und aktualisiere dein Entwicklerprofil.
Schritt 1: RDT abrufen
Rufen Sie den createRestrictedDataToken
-Vorgang auf, um ein RDT zu erhalten.
- Rufen Sie den
createRestrictedDataToken
-Vorgang auf, wobei die folgenden Parameter übergeben werden:
Textparameter:
Parameter | Beschreibung | Erforderlich |
---|---|---|
restrictedResources
|
Eine Liste eingeschränkter Ressourcen. Hinweis:
Typ: < |
Ja |
Beispiel anfordern
POST https://sellingpartnerapi-na.amazon.com/tokens/2021-03-01/restrictedDataToken
{
"restrictedResources": [
{
"method": "GET",
"path": "/orders/v0/orders",
"dataElements": ["buyerInfo", "shippingAddress"]
}
]
}
Antwort
Eine erfolgreiche Antwort umfasst Folgendes:
Name | Beschreibung |
---|---|
restrictedDataToken
|
Ein eingeschränktes Datentoken (RDT). Dies ist ein kurzlebiges Zugriffstoken, das Aufrufe für eingeschränkte Vorgänge autorisiert. Übergeben Sie diesen Wert mit der Die Größe des RDT ist relativ zur Anzahl der eingeschränkten Ressourcen, die in der Anfrage angegeben sind. Die maximale Größe des geschützten Datentokens vor der Codierung und Verschlüsselung darf 7 KB nicht überschreiten, sonst besteht das Risiko, dass es bei Verwendung des Tokens zu einem Fehler kommt. Typ: Zeichenfolge |
expiresIn
|
Die Laufzeit des RDT in Sekunden. Typ: Ganzzahl |
Beispiel für eine Antwort
{
"restrictedDataToken": "Atz.sprdt|IQEBLjAsAhRmHjNgHpi0U-Dme37rR6CuUpSR",
"expiresIn": 3600
}
- Speichern Sie den
restrictedDataToken
-Wert (das RDT), der in Schritt 2 verwendet werden soll. Fügen Sie das RDT einem Aufruf desgetOrders
-Vorgangs hinzu.
Schritt 2: RDT einem Aufruf des getOrders
-Vorgangs hinzufügen
getOrders
-Vorgangs hinzufügenRufen Sie den getOrders
-Vorgang der API für Bestellungen auf und geben Sie die entsprechenden Parameter an, um nach den gewünschten Bestellungen zu filtern. Stellen Sie sicher, dass Sie das RDT aus Schritt 1: RDT abrufen der x-amz-access-token
-Kopfzeile des Aufrufs von getOrders
hinzufügen. Da Sie sowohl buyerInfo
als auch shippingAddress
in Schritt 1: RDT abrufen angegeben haben, ist der Aufruf von getOrders
autorisiert, sowohl Käuferinformationen als auch Lieferadressinformationen für jede Bestellung zurückzugeben. Hätten Sie nur buyerInfo
in Schritt 1 angegeben, wäre getOrders
nur autorisiert, Käuferinformationen für jede Bestellung zurückzugeben. Hätten Sie nur shippingAddress
in Schritt 1 angegeben, wäre getOrders
nur autorisiert, Lieferadressinformationen für jede Bestellung zurückzugeben.
Tutorial: Autorisierung für den Zugriff auf personenbezogene Daten für die Bestellartikel in einer Bestellung erhalten
Sie können ein RDT anfordern, das den Zugriff auf personenbezogene Daten in den Bestellartikeln in einer bestimmten Reihenfolge autorisiert. In diesem Workflow geben Sie dataElements
=buyerInfo
an, um anzuzeigen, dass das RDT Ihre Anwendung autorisiert, auf die Käuferinformationen für die bestellten Artikel zuzugreifen.
Voraussetzungen
Um dieses Tutorial abzuschließen, benötigen Sie Folgendes:
-
Autorisierung durch den Verkaufspartner, für den Sie Aufrufe durchführen. Siehe Autorisierung von API-Apps für Verkaufspartner für weitere Informationen.
-
Genehmigung für die folgenden Rollen:
- Steuerüberweisung
- Steuerfakturierung
Je nach Anwendungsfall benötigen Sie möglicherweise nur eine Genehmigung für eine dieser Rollen. Weitere Informationen zu Rollen und Zugriffsanfragen finden Sie unter Registrierung als Entwickler und aktualisiere dein Entwicklerprofil.
Schritt 1: Bestell-ID abrufen
Sie benötigen eine Bestell-ID, um eine Bestellung zu identifizieren, für die Sie Informationen zum Bestellartikel wünschen. Sie benötigen auch eine Bestell-ID, um ein RDT zu erhalten, das Ihre Anwendung zum Zugriff auf die Käuferinformationen für die bestellten Artikel autorisiert. Sie können den getOrders
-Vorgang der API für Bestellungen verwenden, um eine Liste von Bestellungen abzurufen, aus der Sie eine Bestell-ID für die Bestellung abrufen können, an der Sie interessiert sind.
-
Rufen Sie den
getOrders
-Vorgang der API für Bestellungen auf und geben Sie die entsprechenden Parameter an, um nach der gewünschten Bestellung zu filtern.Der Vorgang gibt Bestellungen zurück, die Ihrer Anfrage entsprechen. Jede Bestellung enthält eine Bestell-ID.
-
Identifizieren Sie anhand der zurückgesendeten Bestellungen die Bestellung, für die Sie Informationen zum Bestellartikel benötigen.
-
Speichern Sie die Bestellnummer für die Bestellung, die Sie in Schritt 2: RDT abrufen und Schritt 3: RDT einem Aufruf des
getOrderItems
-Vorgangs hinzufügen verwenden möchten.
Schritt 2: RDT abrufen
Rufen Sie den createRestrictedDataToken
-Vorgang auf, um ein RDT abzurufen. Fügen Sie der path
-Eigenschaft des restrictedResources
-Parameters die Bestell-ID aus Schritt 1. Bestell-ID abrufen hinzu. In diesem Workflow geben wir den buyerInfo
-Wert des dataElements
-Parameters an. Dies bedeutet, dass das RDT den Zugriff auf personenbezogene Daten für Anwendungsfälle wie Steuern und Geschenkverpackungen autorisieren sollte.
Rufen Sie den createRestrictedDataToken
-Vorgang auf, um ein RDT zu erhalten.
- Rufen Sie den
createRestrictedDataToken
-Vorgang auf, wobei die folgenden Parameter übergeben werden:
Textparameter:
Parameter | Beschreibung | Erforderlich |
---|---|---|
restrictedResources
|
Eine Liste eingeschränkter Ressourcen. Hinweis:
Typ: < |
Ja |
Beispiel anfordern
POST https://sellingpartnerapi-na.amazon.com/tokens/2021-03-01/restrictedDataToken
{
"restrictedResources": [
{
"method": "GET",
"path": "/orders/v0/orders/123-1234567-1234567/orderItems",
"dataElements": ["buyerInfo"]
}
]
}
Antwort
Eine erfolgreiche Antwort umfasst Folgendes:
Name | Beschreibung |
---|---|
restrictedDataToken
|
Ein eingeschränktes Datentoken (RDT). Dies ist ein kurzlebiges Zugriffstoken, das Aufrufe für eingeschränkte Vorgänge autorisiert. Übergeben Sie diesen Wert mit der Die Größe des RDT ist relativ zur Anzahl der eingeschränkten Ressourcen, die in der Anfrage angegeben sind. Die maximale Größe des geschützten Datentokens vor der Codierung und Verschlüsselung darf 7 KB nicht überschreiten, sonst besteht das Risiko, dass es bei Verwendung des Tokens zu einem Fehler kommt. Typ: Zeichenfolge |
expiresIn
|
Die Laufzeit des RDT in Sekunden. Typ: Ganzzahl |
Beispiel für eine Antwort
{
"restrictedDataToken": "Atz.sprdt|IQEBLjAsAhRmHjNgHpi0U-Dme37rR6CuUpSR",
"expiresIn": 3600
}
- Speichern Sie den
restrictedDataToken
-Wert (das RDT), der in Schritt 2 verwendet werden soll. Fügen Sie das RDT einem Aufruf desgetOrder
-Vorgangs hinzu.
Schritt 3: RDT einem Aufruf des getOrderItems
-Vorgangs hinzufügen
getOrderItems
-Vorgangs hinzufügenRufen Sie den getOrderItems
-Vorgang der API für Bestellungen auf und geben Sie die Bestell-ID an, die Sie in Schritt 1: Bestell-ID abrufen angegeben haben. Achten Sie darauf, das RDT aus Schritt 1 der x-amz-access-token
-Kopfzeile des Aufrufs von getOrderItems
hinzuzufügen.
Tutorial: Autorisierung für den Zugriff auf personenbezogene Daten delegieren
Sie können die Autorisierung zum Aufrufen eingeschränkter Vorgänge an eine "delegierte Anwendung" delegieren. Dabei handelt es sich um eine Anwendung, die spezielle Funktionen für einen Verkaufspartner ausführt (z. B. Versand, Steuerfakturierung oder Steuerüberweisung), jedoch nicht direkt vom Verkaufspartner autorisiert wurde. Sie delegieren die Autorisierung auf diese Weise, indem Sie folgendermaßen vorgehen:
- Rufen Sie den
createRestrictedDataToken
-Vorgang der Tokens-API auf und geben Sie die entsprechende Anwendungs-ID der delegierten Anwendung an. - Rufen Sie ein RDT über die
createRestrictedDataToken
-Antwort ab. - Übergeben Sie das RDT an die delegierte Anwendung.
Das RDT ermächtigt die Delegatee-Anwendung, eingeschränkte Operationen aufzurufen, die die PII zurückgeben, die für die Ausführung von Funktionen im Namen des Vertriebspartners erforderlich sind. Definitionen finden Sie unter Terminologie.
Voraussetzungen
Um dieses Tutorial abzuschließen, benötigen Sie Folgendes:
-
Autorisierung durch den Verkaufspartner, für den Sie Aufrufe durchführen. Siehe Autorisierung von API-Apps für Verkaufspartner für weitere Informationen.
-
Zu haben in der Registrierung per App Formular, für das Sie den Zugriff auf personenbezogene Daten an eine andere Anwendung delegieren möchten. Anweisungen zur Aktualisierung des Registrierung per App Formular, siehe Registrierung Ihrer Bewerbung. Geben Sie im Formular die Arten von personenbezogenen Daten an, die Sie delegieren möchten.
-
Die Bestellnummer für eine Bestellung, für die Versand- oder Steuerfunktionen erforderlich sind.
-
Eine Partnerschaft mit einem Entwickler mit einer delegierten Anwendung.
-
Die Anwendungs-ID der delegierten Anwendung.
-
Ein sicheres Mittel, um ein RDT und eine Bestell-ID an eine delegierte Anwendung zu übertragen.
Darüber hinaus muss der Entwickler in der delegierten Anwendung in Schritt 3: Delegierte Anwendung ruft den getOrder
-Vorgang auf Folgendes tun:
-
Registrieren Sie sich als Entwickler und fordern Sie die Genehmigung für die Rollen an, die für den Zugriff auf Käuferinformationen und/oder Lieferadressinformationen erforderlich sind. Diese sind Folgende:
- Direkter Versand an Verbraucher. Erforderlich für den Zugriff auf die Lieferadressinformationen.
- Steuerüberweisung. Erforderlich für den Zugriff auf Käuferinformationen.
- Rechnungsstellung mit Steuern. Erforderlich für den Zugriff auf Käuferinformationen.
Weitere Informationen zu Rollen finden Sie unter Rollen in der Vertriebspartner-API.
Schritt 1: RDT abrufen
Rufen Sie den createRestrictedDataToken
-Vorgang auf, um ein RDT zu abzurufen. In der path
-Eigenschaft des restrictedResources
-Parameters fügen Sie der Bestellung, für den personenbezogene Daten erforderlich sind, die Bestell-ID hinzu. In diesem Workflow geben wir sowohl die Werte buyerInfo
als auch shippingAddress
des dataElements
-Parameters an. Dies bedeutet, dass das RDT die Autorisierung für den Zugriff auf personenbezogene Daten für Anwendungsfälle wie Steuern und Versand beinhalten sollte. In Ihrem eigenen Workflow geben Sie möglicherweise nur einen Wert an, je nachdem, welche personenbezogenen Daten für Ihren Anwendungsfall benötigt werden.
- Rufen Sie den
createRestrictedDataToken
-Vorgang auf, wobei die folgenden Parameter übergeben werden:
Textparameter:
Parameter | Beschreibung | Erforderlich |
---|---|---|
restrictedResources
|
Eine Liste eingeschränkter Ressourcen. Hinweis:
Typ: < |
Ja |
targetApplication
|
Die Anwendungs-ID für die Zielanwendung, an die der Zugriff delegiert wird. Typ: Zeichenfolge |
Nein |
Beispiel anfordern
POST https://sellingpartnerapi-na.amazon.com/tokens/2021-03-01/restrictedDataToken
{
"restrictedResources": [
{
"method": "GET",
"path": "/orders/v0/orders/123-1234567-1234567",
"dataElements": ["buyerInfo", "shippingAddress"]
}
],
"targetApplication": "amzn1.sellerapps.app.target-application"
}
Antwort
Eine erfolgreiche Antwort umfasst Folgendes:
Name | Beschreibung |
---|---|
restrictedDataToken
|
Ein eingeschränktes Datentoken (RDT). Dies ist ein kurzlebiges Zugriffstoken, das Aufrufe für eingeschränkte Vorgänge autorisiert. Übergeben Sie diesen Wert mit der Die Größe des RDT ist relativ zur Anzahl der eingeschränkten Ressourcen, die in der Anfrage angegeben sind. Die maximale Größe des geschützten Datentokens vor der Codierung und Verschlüsselung darf 7 KB nicht überschreiten, sonst besteht das Risiko, dass es bei Verwendung des Tokens zu einem Fehler kommt. Typ: Zeichenfolge |
expiresIn
|
Die Laufzeit des RDT in Sekunden. Typ: Ganzzahl |
Beispiel für eine Antwort
{
"restrictedDataToken": "Atz.sprdt|IQEBLjAsAhRmHjNgHpi0U-Dme37rR6CuUpSR",
"expiresIn": 3600
}
- Speichern Sie den
restrictedDataToken
-Wert (das RDT), das der delegierten Anwendung im folgenden Schritt zur Verfügung gestellt werden soll.
Schritt 2: RDT und Bestell-ID an die delegierte Anwendung übergeben
Übermitteln Sie das RDT und die Bestell-ID sicher an die delegierte Anwendung. Die Anwendung verwendet diese beim Aufrufen des getOrder
-Vorgangs im folgenden Schritt.
Schritt 3: Delegierte Anwendung ruft den getOrder
-Vorgang auf
getOrder
-Vorgang aufDie delegierte Anwendung ruft den getOrder
-Vorgang der API für Bestellungen auf, wobei im Pfad die Bestell-ID aus Schritt 2: RDT und Bestell-ID an die delegierte Anwendung übergeben angegeben wurde. Der Aufruf muss das RDT (ebenfalls aus Schritt 2) in der x-amz-access-token
-Kopfzeile des Aufrufs beinhalten. Da sowohl buyerInfo
als auch shippingAddress
in Schritt 1: RDT abrufen angegeben wurden, gibt der getOrder
-Aufruf die Käuferinformationen und die Lieferadresse für die Bestellung zurück.
- Die delegierte Anwendung ruft den
getOrder
-Vorgang auf, wobei die folgenden Parameter übergeben werden:
Textparameter:
Parameter | Beschreibung | Erforderlich |
---|---|---|
orderId
|
Eine von Amazon definierte Bestell-ID im 3-7-7-Format. Typ: Zeichenfolge |
Ja |
Beispiel anfordern
GET https://sellingpartnerapi-na.amazon.com/orders/v0/orders/123-1234567-1234567
Antwort
Eine erfolgreiche Antwort umfasst Folgendes:
Name | Beschreibung |
---|---|
payload
|
Die Nutzlast für den Typ: Bestellung |
Beispiel für eine Antwort
{
"payload": {
"AmazonOrderId": "902-3159896-1390916",
"PurchaseDate": "2017-01-20T19:49:35Z",
"LastUpdateDate": "2017-01-20T19:49:35Z",
"OrderStatus": "Pending",
"FulfillmentChannel": "SellerFulfilled",
"NumberOfItemsShipped": 0,
"NumberOfItemsUnshipped": 0,
"PaymentMethod": "Other",
"PaymentMethodDetails": [
"CreditCard",
"GiftCerificate"
],
"MarketplaceId": "ATVPDKIKX0DER",
"ShipmentServiceLevelCategory": "Standard",
"OrderType": "StandardOrder",
"EarliestShipDate": "2017-01-20T19:51:16Z",
"LatestShipDate": "2017-01-25T19:49:35Z",
"IsBusinessOrder": false,
"IsPrime": false,
"IsGlobalExpressEnabled": false,
"IsPremiumOrder": false,
"IsSoldByAB": false,
"DefaultShipFromLocationAddress": {
"Name": "MFNIntegrationTestMerchant",
"AddressLine1": "2201 WESTLAKE AVE",
"City": "SEATTLE",
"StateOrRegion": "WA",
"PostalCode": "98121-2778",
"CountryCode": "US",
"Phone": "+1 480-386-0930 ext. 73824",
"AddressType": "Commercial"
},
"FulfillmentInstruction": {
"FulfillmentSupplySourceId": "sampleSupplySourceId"
},
"IsISPU": false,
"ShippingAddress": {
"Name": "Michigan address",
"AddressLine1": "1 Cross St.",
"City": "Canton",
"StateOrRegion": "MI",
"PostalCode": "48817",
"CountryCode": "US"
},
"BuyerInfo": {
"BuyerEmail": "user@example.com",
"BuyerName": "John Doe",
"BuyerTaxInfo": {
"CompanyLegalName": "A Company Name"
},
"PurchaseOrderNumber": "1234567890123"
}
}
}
- Die Delegiertenanwendung verwendet die Daten in der Antwort, um ihre Versand- und Steuerfunktionen auszuführen.
Tutorial: Autorisierung für den Zugriff auf Sendungsinformationen für mehrere Sendungen erhalten
Sie können ein RDT abrufen, das die Genehmigung zum Abrufen von Versandinformationen für alle Sendungen eines Verkaufspartners erteilt.
Voraussetzungen
Um dieses Tutorial abzuschließen, benötigen Sie Folgendes:
-
Autorisierung durch den Verkaufspartner, für den Sie Aufrufe durchführen. Siehe Autorisierung von API-Apps für Verkaufspartner für weitere Informationen.
-
Zulassung für die Versand direkt an den Verbraucher Rolle, die für den Zugriff auf Lieferadressinformationen erforderlich ist. Informationen zum Beantragen des Zugriffs auf diese Rolle finden Sie unter Registrierung als Entwickler und aktualisiere dein Entwicklerprofil.
-
Sendungsnummern der Sendungen, für die Sie Versandinformationen erhalten möchten.
Schritt 1: RDT abrufen
Rufen Sie den createRestrictedDataToken
Operation, um ein RDT zu erhalten. In der path
Eigentum der restrictedResources
Für einen Parameter, den Sie angeben, verwenden Sie einen generischen Pfad, der diesen Text enthält: {shipmentId}
. Definitionen finden Sie unter Terminologie.
- Rufen Sie den
createRestrictedDataToken
-Vorgang auf, wobei die folgenden Parameter übergeben werden:
Textparameter:
Parameter | Beschreibung | Erforderlich |
---|---|---|
restrictedResources
|
Eine Liste eingeschränkter Ressourcen. Hinweis:
Typ: < |
Ja |
Beispiel anfordern
POST https://sellingpartnerapi-na.amazon.com/tokens/2021-03-01/restrictedDataToken
{
"restrictedResources": [
{
"method": "GET",
"path": "/mfn/v0/shipments/{shipmentId}"
}
]
}
Antwort
Eine erfolgreiche Antwort umfasst Folgendes:
Name | Beschreibung |
---|---|
restrictedDataToken
|
Ein eingeschränktes Datentoken (RDT). Dies ist ein kurzlebiges Zugriffstoken, das Aufrufe für eingeschränkte Vorgänge autorisiert. Übergeben Sie diesen Wert mit der Die Größe des RDT ist relativ zur Anzahl der eingeschränkten Ressourcen, die in der Anfrage angegeben sind. Die maximale Größe des geschützten Datentokens vor der Codierung und Verschlüsselung darf 7 KB nicht überschreiten, sonst besteht das Risiko, dass es bei Verwendung des Tokens zu einem Fehler kommt. Typ: Zeichenfolge |
expiresIn
|
Die Laufzeit des RDT in Sekunden. Typ: Ganzzahl |
Beispiel für eine Antwort
{
"restrictedDataToken": "Atz.sprdt|IQEBLjAsAhRmHjNgHpi0U-Dme37rR6CuUpSR",
"expiresIn": 3600
}
-
Speichern Sie den
restrictedDataToken
-Wert (das RDT), der in Schritt 2 verwendet werden soll. Fügen Sie das RDT einem Aufruf desgetShipment
-Vorgangs hinzu.Definitionen finden Sie unter Terminologie.
Schritt 2: RDT einem Aufruf des getShipment
-Vorgangs hinzufügen
getShipment
-Vorgangs hinzufügenRufen Sie den getShipment
Betrieb der Merchant Fulfillment-API unter Verwendung des generischen Pfads, den Sie in angegeben haben Schritt 1. Holen Sie sich ein RDT und ersetzend {shipmentId}
mit einer echten Sendungsnummer des Verkaufspartners. Zum Beispiel GET /mfn/v0/shipments/FBA1234ABC5D
. Wiederholen Sie diesen Schritt für alle Sendungen, für die Sie Versandinformationen wünschen, und geben Sie bei jedem Anruf die entsprechende Sendungsnummer an. Jeder Anruf muss das RDT von enthalten Schritt 1. Holen Sie sich ein RDT in der x-amz-access-token
Kopfzeile.
Hinweis
An RDT remains valid for one hour.
Tutorial: Generieren Sie ein SDK für die Token-API
Schritte zur Generierung eines SDK für die Token-API in Java oder C# finden Sie im Folgenden:
- Generieren Sie ein Java-SDK mit LWA-Tokenaustausch
- Ein C#-SDK mit LWA-Token-Generierung und Authentifizierung erstellen
If you're using the Java SDK, you should also:
-
Lauf
mvn package
im generierten SDK-Ordner. -
Laden Sie eine der folgenden Dateien herunter und verwenden Sie sie, um Klassen in der
main/java/sampleCode/
Ordner der generierten Client-Bibliothek. Definitionen finden Sie unter Terminologie.- RestrictedDataTokenWorkflow.java. Zum Erhalt und zur Nutzung eines RDTs, um die eigene Anwendung zum Aufrufen einer oder mehrerer eingeschränkter Vorgänge zu autorisieren.
- DelegatedRestrictedDataTokenWorkflowForDelegator.java. Zum Abrufen eines RDT, das die Autorisierung zum Aufrufen eingeschränkter Vorgänge an eine delegierte Anwendung delegiert.
- DelegatedRestrictedDataTokenWorkflowForDelegatee.java. Für eine delegierte Anwendung, die ein RDT von einer delegierenden Anwendung erhält und es für die Autorisierung zum Aufrufen eingeschränkter Vorgänge verwendet.
Verwenden Sie die neueste Version der Token-API
Verwenden Sie die neueste Version von
tokens_2021-03-01.json
bei der Generierung Ihres SDK, um sicherzustellen, dass Sie die neuesten Funktionen erhalten.
Updated 6 months ago