Flujo de autorización Selling Partner Appstore

Cómo autorizar una aplicación mediante la Selling Partner Appstore.

Nota: Este flujo de autorización es exclusivo para aplicaciones de sellers.

Opcional: pruebe su flujo de autorización

Le recomendamos que pruebe su flujo de autorización para asegurarse de que su aplicación pueda intercambiar parámetros con Amazon y recibir información de autorización. Debe probar su flujo de autorización mientras su solicitud esté en estado de draft.

Asegúrese de que su solicitud esté en estado de draft.

Cree uno o más URI de autorización de OAuth con fines de prueba. Incluya version=beta en los URI de OAuth para indicar que el flujo es para autorizar una aplicación en estado de draft. Para obtener más información, consulte Construir un URI de autorización de OAuth.

En lugar de comenzar en Paso 1. El selling partner inicia la autorización desde la Selling Partner Appstore., puede iniciar el flujo de prueba navegando a un URI de autorización de OAuth existente.

Nota: Si está probando su flujo con un selling partner de confianza, asegúrese de tener el URI de autorización de OAuth correspondiente a su región operativa.

Si su prueba de flujo de autorización es exitosa, puede convertirlo en un flujo de producción.

Opcional: convierta su flujo de autorización de prueba en un flujo de producción

Incluya su aplicación en la Selling Partner Appstore. Esta acción cambiará automáticamente el estado de su solicitud de Draft a Publicado.

Actualice su flujo para que ya no agregue version=beta al URI de devolución de llamada de Amazon. Eliminar este parámetro garantizará que cualquier socio seller pueda autorizar su aplicación publicada a partir de Paso 1. El selling partner inicia la autorización desde la Selling Partner Appstore..

Paso 1: Iniciar la autorización desde la Selling Partner Appstore

Inicie sesión en Seller Central y vaya a la Selling Partner Appstore.

Abra la página Detalle de su aplicación.

Seleccione Autorizar ahora.

Paso 2: Consentimiento para autorizar su aplicación

Revise y acepte los datos de acceso solicitados por su aplicación.

Seleccione Iniciar sesión en [nombre de su aplicación] ahora.

Amazon carga su URI de inicio de sesión (que proporcionó en el registro de la aplicación) en el navegador y agrega los siguientes parámetros de consulta:

ParámetroDescripción
amazon_callback_uriUn URI para redirigir el navegador a Amazon.
amazon_stateUn valor de status generado por Amazon para protegerse contra ataques de falsificación de requests entre sites.
selling_partner_idEl identificador del selling partner que está autorizando su aplicación.

Nota: si este es un flujo de prueba (iniciado al navegar a su URI de autorización de OAuth), Amazon incluirá el parámetro version=beta. Si se trata de un flujo de producción (iniciado desde la Selling Partner Appstore), Amazon no incluirá el parámetro.

Por ejemplo:

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

Paso 3. Inicie sesión en su sitio web

Inicie sesión en su sitio web. Si no tiene una cuenta, debe completar el proceso de registro antes de iniciar sesión.

Su aplicación carga el URI de devolución de llamada de Amazon (proporcionado por Amazon en el paso anterior) en el navegador, agregando los siguientes parámetros:

ParámetroDescripción
redirect_uriUn URI para redirigir el navegador a su aplicación. Debe ser un URI de redireccionamiento de OAuth que especificó cuando registró su aplicación . Si no incluye el redirect_uri , el valor predeterminado es el primer URI de redireccionamiento de OAuth que especificó cuando registró su aplicación.
Opcional
amazon_stateEl Valor deamazon_statepasado por Amazon en el paso anterior.
stateUn valor de estado generado por su aplicación. Su aplicación usa este valor para mantener el estado entre esta solicitud y la respuesta, lo que ayuda a protegerse contra los ataques de falsificación de solicitudes entre sitios.

Importante: debido a que la información de OAuth se pasa a través de parámetros de consulta de URI, le recomendamos encarecidamente que haga lo siguiente: (1) Asegúrese de que el token de estado sea de corta duración y verificable que sea único para su usuario, y (2) header el Referrer-Policy: no-referrer HTTP , que evita la filtración de información confidencial a los sitio web a los que se vincula su sitio web. Para obtener más información sobre la falsificación de solicitudes entre sitios y el cálculo de un parámetro de estado, consulte Cross-site Request Forgery.

Nota: Si está probando su flujo de trabajo, también debe incluir el parámetro version=beta, que garantiza que el flujo de trabajo autorice una aplicación en estado Draft. Si no incluye el parámetro, el flujo de trabajo autorizará una aplicación publicada en la Selling Partner Appstore.

Por ejemplo:

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

O

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

Paso 4. Amazon te envía la información de autorización

Seller Central muestra una notificación que indica que Amazon le está autorizando a acceder a los datos. Mientras se muestra esta página, se llevan a cabo las siguientes acciones:

  1. Amazon carga su URI de redireccionamiento de OAuth en el navegador y agrega los siguientes parámetros de consulta:
ParámetroDescripción
stateEl valor de estado que pasó en el paso anterior.
selling_partner_idEl identificador del selling partner que está autorizando su aplicación.
mws_auth_tokenEl Valor de MWSAuthToken que utiliza cuando crea una cadena de consulta para una llamada a Amazon Marketplace Web Service. El El parámetro mws\_auth\_token solo se pasa cuando el selling partner autoriza una aplicación híbrida de API de selling partners (SP-API). Tenga en cuenta que si usted es el selling partner que autoriza la aplicación SP-API híbrida y el propietario de la aplicación (lo que significa que usted mismo autorizó su propia aplicación Amazon MWS), no recibirá el MWSAuthToken. Para obtener más información, consulte Aplicaciones API de selling partners híbridas .
spapi_oauth_codeEl código de autorización de inicio de sesión con Amazon (LWA) que cambia por un Refresh Token (Token de actualización de LWA). Para obtener más información, consulte el Paso 5. Su aplicación intercambia el código de autorización de LWA por un Refresh Token (Token de actualización de LWA) .
Nota: un código de autorización LWA caduca después de cinco minutos. Debe cambiarlo por un Refresh Token (Token de actualización de LWA) antes de que caduque.

Por ejemplo:

https://client-example.com?state=state-example&mws_auth_token=mwsauthtokenexample&selling_partner_id=sellingpartneridexample&spapi_oauth_code=spapioauthcodeexample
  1. Su aplicación valida el valor del estado.
  2. Su aplicación guarda el selling_partner_id , mws_auth_token (si se pasa), y valores de spapi_oauth_code .
  3. Se abre la página de destino de su sitio web.

Paso 5. Intercambie el código de autorización de LWA por un Refresh Token (Token de actualización de LWA) (Refresh Token)

Nota: Opcionalmente, puede utilizar el SDK de Iniciar sesión con Amazon para JavaScript para facilitar el intercambio del código de autorización de LWA por un Refresh Token (Token de actualización de LWA). Para obtener más información, consulte la documentación de Iniciar sesión con Amazon:

  1. Su aplicación realiza una llamada al servidor de autorización de Iniciar sesión con Amazon (LWA) (https://api.amazon.com/auth/o2/token) para intercambiar el código de autorización de LWA por un Refresh Token (Token de actualización de LWA). La llamada debe incluir los siguientes parámetros de consulta:
ParámetroDescripción
grant_typeEl tipo de concesión de acceso solicitada. Debe ser authorization_code .
codeEl código de autorización LWA que recibió en el Paso 4. Amazon le envía la información de autorización .
redirect_uriEl URI de redirección para su aplicación.
client_idParte de sus credenciales de LWA. Para obtener este valor, consulte Visualización de la información y las credenciales de su aplicación .
client_secretParte de sus credenciales de LWA. Para obtener este valor, consulte Visualización de la información y las credenciales de su aplicación .

Por ejemplo:

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
  1. El servidor de autorización de Iniciar sesión con Amazon devuelve el Refresh Token (Token de actualización de LWA). La respuesta está en formato JSON y contiene los siguientes elementos:
ParámetroDescripción
access_tokenUn token que autoriza a su aplicación a realizar ciertas acciones en nombre de un selling partner. Para obtener más información, consulte Conexión a la API de Selling Partner .
token_typeEl tipo de token devuelto (debe ser bearer ).
expires_inEl número de segundos antes de que el token de acceso deje de ser válido.
refresh_tokenUn token de larga duración que se puede cambiar por un nuevo token de acceso. Para obtener más información, consulte Conexión a la API de Selling Partner.
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"
}
  1. Su aplicación guarda el valor de refresh_token .
  2. El navegador abre una página que indica los próximos pasos para usar su aplicación.

Nota: Un Refresh Token (Token de actualización de LWA) es un token de larga duración que se intercambia por un token de acceso a LWA. Este token de acceso debe incluirse en las llamadas a todas las operaciones de la API de Selling Partner, excepto las operaciones restringidas y las operaciones sin garantía, que utilizan modelos de autorización ligeramente diferentes. Después de que se emite un token de acceso, tiene una validez de una hora. El mismo token de acceso se puede utilizar en varias llamadas a la API hasta que expire.

Para intercambiar un token de actualización por un token de acceso utilizando un SDK generado, consulte Conexión a la API de Selling Partner utilizando un SDK generado en Java. Para intercambiar manualmente un token de actualización por un token de acceso, consulte Conexión a la API del Selling Partner.

Importante: Para las aplicaciones híbridas de la API de Selling Partner: si se le ha proporcionado un token de autenticación de MWS en el paso 4. Amazon le envía la información de autorización, su aplicación también está autorizada para realizar llamadas a Amazon Marketplace Web Service en nombre del selling partner. Para obtener más información, consulte Aplicaciones híbridas de la API de Selling Partner.

Paso 6. Renueva tu autorización

  1. Inicie sesión en Seller Central y vaya a la página Administra tus aplicaciones .
  2. Seleccione renovar autorización para renovar su autorización por 1 año.