Workflow d'autorisation de l'Appstore pour les partenaires de vente
Autorisez une application à l'aide de l'Appstore Selling Partner.
Les partenaires de vente peuvent utiliser l'Appstore pour les partenaires de vente pour découvrir des applications tierces qui s'intègrent à SP-API et s'y connecter. Les partenaires de vente peuvent utiliser ces applications pour gérer plus efficacement leurs activités commerciales sur Amazon. Pour utiliser une application de l'Appstore pour les partenaires de vente, le partenaire de vente doit autoriser cette application à accéder aux informations de son compte Amazon. L'accès aux applications est accordé via un workflow OAuth qui implique les étapes suivantes :
Étape 1 : Initier l'autorisation depuis l'Appstore pour les partenaires de vente.
- Connectez-vous à Seller Central et accédez à l'Appstore pour les partenaires de vente.
- Ouvrez le Detail page pour votre candidature.
- Choisissez Authorize Now.
Étape 2 : Consentir à autoriser votre application
-
Examinez et autorisez l'accès aux données demandé par votre application.
-
Choisissez Login to < your application name > now.
Amazon charge votre URI de connexion (que vous avez fourni lors de l'enregistrement de l'application) dans le navigateur, en ajoutant les paramètres de requête suivants :
Paramètre Description amazon_callback_uri
Un URI conçu pour rediriger le navigateur vers Amazon. amazon_state
Valeur d'état générée par Amazon pour se prémunir contre les attaques de type “cross-site request forgery” (falsification des requêtes intersites). selling_partner_id
Identifiant du partenaire de vente autorisant votre application. Remarque
Remarque : s'il s'agit d'un workflow de test (démarré en accédant à votre URI d'autorisation OAuth), Amazon inclut le paramètre
version=beta
. S'il s'agit d'un workflow de production (démarré depuis l'Appstore pour les partenaires de vente), Amazon n'inclut pas ce paramètre.Par exemple :
https://d2yzyfnnpjylxu.cloudfront.net/index.html?amazon_callback_uri=https://amazon.com/apps/authorize/confirm/amzn1.sellerapps.app.2eca283f-9f5a-4d13-b16c-474EXAMPLE57&amazon_state=amazonstateexample&selling_partner_id=A3FHEXAMPLEYWS
Étape 3 : Se connecter à votre site Web
-
Connectez-vous à votre site Web. Si vous n'avez pas de compte, vous devez d'abord terminer le processus d'inscription.
-
Votre application charge l'URI de rappel Amazon (transmis par Amazon à l'étape précédente) dans le navigateur, en ajoutant les paramètres suivants :
Paramètre | Description |
---|---|
redirect_uri | Ce paramètre fait référence à un URI redirigeant le navigateur vers votre application. Il s'agit de l'URI de redirection OAuth que vous avez spécifié lorsque vous avez enregistré votre application. Lorsque vous n'incluez pas le paramètre redirect_uri , la valeur par défaut est le premier URI de redirection OAuth que vous avez spécifié lors de l'enregistrement de votre application.Facultatif |
amazon_state | La valeur amazon_state transmise par Amazon à l'étape précédente. |
state | Une valeur d'état générée par votre application. Votre application utilise cette valeur pour maintenir l'état entre cette demande et la réponse, afin de se prémunir contre les attaques de type “cross-site request forgery” (falsification des requêtes intersites). Important : les informations OAuth étant transmises via les paramètres de requête URI, nous vous recommandons vivement de procéder comme suit : (1) assurez-vous que le jeton d'état est éphémère et unique de manière vérifiable pour votre utilisateur, et (2) définissez l'en-tête |
Remarque
Si vous testez votre flux de travail, vous devez également inclure le
version=beta
paramètre, qui garantit que le flux de travail autorise une application dansDraft
état. Si vous n'incluez pas le paramètre, le flux de travail autorise la publication d'une application sur l'Appstore des partenaires de vente.
Par exemple :
https://amazon.com/apps/authorize/confirm/amzn1.sellerapps.app.2eca283f-9f5a-4d13-b16c-474EXAMPLE57?redirect_uri=https://d2yzyfnnpjylxu.cloudfront.net/landing.html&amazon_state=amazonstateexample&state=-37131022&version=beta
Ou
https://amazon.com/apps/authorize/confirm/amzn1.sellerapps.app.2eca283f-9f5a-4d13-b16c-474EXAMPLE57?redirect_uri=https://d2yzyfnnpjylxu.cloudfront.net/landing.html&amazon_state=amazonstateexample&state=-37131022
Étape 4 : Amazon vous envoie les informations d'autorisation
Seller Central affiche une notification indiquant qu'Amazon vous autorise à accéder aux données. Dans le même temps, les actions suivantes se produisent :
-
Amazon charge votre URI de redirection OAuth dans le navigateur, en ajoutant les paramètres de requête suivants :
Paramètre Description state
La valeur d'état que vous avez transmise à l'étape précédente. selling_partner_id
Identifiant du partenaire de vente autorisant votre application. spapi_oauth_code
Le code d'autorisation Se connecter avec votre compte Amazon (LWA) que vous échangez contre un jeton d'actualisation LWA. Pour plus d'informations, reportez-vous à l'Étape 5 : Votre application échange le code d'autorisation LWA contre un jeton d'actualisation LWA.
Remarque : un code d'autorisation LWA expire au bout de cinq minutes, par conséquent, vous devez l'échanger contre un jeton d'actualisation LWA avant son expiration.Par exemple :
https://client-example.com?state=state-example&selling_partner_id=sellingpartneridexample&spapi_oauth_code=spapioauthcodeexample -
Votre application valide la valeur d'état.
-
Votre application enregistre le
selling_partner_id
etspapi_oauth_code
valeurs. -
La page de destination de votre site Web est lancée.
Important
Les développeurs doivent garder à l'esprit que si le processus d'inscription prend plus de 10 minutes, l'état et l'URI de rappel Amazon expireront, interrompant ainsi le workflow. Si aucune redirection vers l'URI de rappel Amazon n'est détectée après l'inscription, les développeurs doivent demander au partenaire de vente d'initier la création du flux OAuth à l'aide du workflow de site Web. Le partenaire de vente peut également revenir à la page détaillée de l'application sur l'Appstore pour les partenaires de vente et redémarrer le workflow.
Étape 5 : Échanger le code d'autorisation LWA contre un jeton d'actualisation LWA
Astuce
Remarque : vous pouvez utiliser le SDK pour JavaScript Se connecter avec votre compte Amazon afin de faciliter l'échange d'un code d'autorisation LWA contre un jeton d'actualisation LWA. Pour plus d'informations, consultez la documentation Se connecter avec votre compte Amazon :
-
Votre application appelle le serveur d'autorisation Se connecter avec votre compte Amazon (LWA) (
https://api.amazon.com/auth/o2/token
) pour échanger le code d'autorisation LWA contre un jeton d'actualisation LWA. L'appel doit inclure les paramètres de requête suivants :Paramètre Description grant_type
Type d'autorisation d'accès demandée. Doit être authorization_code
.code
Le code d'autorisation LWA que vous avez reçu à l'Étape 4 : Amazon vous envoie les informations d'autorisation. redirect_uri
L'URI de redirection pour votre application. client_id
Ce paramètre fait partie de vos informations d'identification LWA. Pour obtenir cette valeur, reportez-vous à la section Affichage des informations et des informations d'identification relatives à votre application. client_secret
Ce paramètre fait partie de vos informations d'identification LWA. Pour obtenir cette valeur, reportez-vous à la section Affichage des informations et des informations d'identification relatives à votre application. Par exemple :
POST /auth/o2/token HTTP/l.l Host: api.amazon.com Content-Type: application/x-www-form-urlencoded;charset=UTF-8 grant_type=authorization_code&code=SplxlOexamplebYS6WxSbIA&client_id=foodev&client_secret=Y76SDl2F -
Le serveur d'autorisation LWA renvoie le jeton d'actualisation LWA. La réponse est au format JSON et inclut les éléments suivants :
Paramètre Description access_token
Un jeton autorisant votre application à effectuer certaines actions pour le compte d'un partenaire de vente. Pour plus d'informations, reportez-vous à la section Se connecter à l'API partenaire de vente. token_type
Le type de jeton renvoyé (doit être bearer
).expires_in
Le nombre de secondes avant que le jeton d'accès ne devienne invalide. refresh_token
Un jeton avec une longue durée de vie qui peut être échangé contre un nouveau jeton d'accès. Pour plus d'informations, reportez-vous à la section Se connecter à l'API partenaire de vente. HTTP/l.l 200 OK Content-Type: application/json; charset UTF-8 Cache - Control: no-store Pragma: no-cache { "access_token": "Atza|IQEBLjAsAexampleHpi0U-Dme37rR6CuUpSR", "token_type": "bearer", "expires_in": 3600, "refresh_token": "Atzr|IQEBLzAtAhexamplewVz2Nn6f2y-tpJX2DeX" } -
Votre application enregistre la valeur
refresh_token
. -
Le navigateur ouvre une page qui indique les prochaines étapes à suivre pour utiliser votre application.
Remarque
Un jeton d'actualisation LWA est un jeton avec une longue durée de vie que vous échangez contre un jeton d'accès LWA. Un jeton d'accès obtenu par le biais de cet échange doit être inclus dans les appels à toutes les opérations de l'API partenaire de vente, sauf les opérations restreintes et les opérations sans autorisation, qui utilisent des modèles d'autorisation légèrement différents. Une fois qu'un jeton d'accès est émis, il est valide pendant une heure. Enfin, le même jeton d'accès peut être utilisé pour plusieurs appels d'API, jusqu'à son expiration.
Pour échanger un jeton d'actualisation contre un jeton d'accès à l'aide d'un SDK généré, reportez-vous à la section Se connecter à l'API partenaire de vente à l'aide d'un SDK Java généré. En revanche, pour échanger manuellement un jeton d'actualisation contre un jeton d'accès, reportez-vous à la section Se connecter à l'API partenaire de vente.
Étape 6. (Facultatif) Testez votre flux de travail d'autorisation
Nous vous recommandons de tester votre flux de travail d'autorisation pour vous assurer que votre application peut échanger des paramètres avec Amazon et recevoir des informations d'autorisation. Vous devez tester votre flux de travail d'autorisation pendant que votre application est en cours Draft
statut.
-
Assurez-vous que votre candidature est en
Draft
statut. -
Créez un ou plusieurs URI d'autorisation OAuth à des fins de test. Incluez le
version=beta
paramètre dans le ou les URI OAuth pour indiquer que le flux de travail sert à autoriser une application dansDraft
statut. Pour plus d'informations, reportez-vous à Création d'un URI d'autorisation OAuth.Au lieu de commencer par l'étape 1 dans le cadre de laquelle le partenaire de vente initie l'autorisation depuis l'Appstore pour les partenaires de vente, vous pouvez démarrer le workflow de test en accédant à un URI d'autorisation OAuth existant.
Astuce
Si vous testez votre flux de travail auprès d'un partenaire commercial de confiance, assurez-vous qu'il dispose de l'URI d'autorisation OAuth qui correspond à sa région d'activité.
Si votre workflow d'autorisation de test est réussi, vous pouvez le convertir en workflow de production.
Étape 7. (Facultatif) Convertissez votre flux de travail d'autorisation des tests en flux de production
-
Répertoriez votre application dans l'Appstore Selling Partner. Cette action change automatiquement votre candidature de
Draft
pourPublished
. -
Mettez à jour votre flux de travail pour supprimer
version=beta
paramètre de l'URI de rappel Amazon. La suppression de ce paramètre garantit que tout partenaire commercial peut autoriser votre application publiée à partir de Étape 1.
Schéma de flux de
Le schéma suivant donne une vue d'ensemble des flux de travail OAuth de l'Appstore des partenaires de vente et du site Web.
Updated 27 days ago