Fluxo de trabalho de autorização da Appstore do parceiro de vendas
Autorizar um aplicativo usando a Appstore do parceiro de vendas.
Os parceiros de vendas podem usar o parceiro de vendas Appstore para descobrir e se conectar com aplicativos de terceiros que se integram à SP-API. Os parceiros de vendas podem usar esses aplicativos para gerenciar seus negócios de vendas na Amazon com mais eficiência. Para usar um aplicativo da loja de aplicativos do parceiro de vendas, o parceiro de vendas deve autorizar o aplicativo a acessar as informações da conta do parceiro de vendas da Amazon. O acesso ao aplicativo é concedido por meio de um fluxo de trabalho do OAuth que envolve as seguintes etapas:
Etapa 1. Iniciar a autorização da Appstore do parceiro de vendas
- Faça login no Seller Central e navegue até a Appstore do parceiro de vendas.
- Abra o Detail página para sua inscrição.
- Escolha Authorize Now.
Etapa 2. Consentir na autorização do seu aplicativo
-
Revise e aceite o acesso aos dados solicitado pelo seu aplicativo.
-
Escolha Login to < your application name > now.
A Amazon carrega o URI do seu login (que você forneceu no registro do aplicativo) no navegador, adicionando os seguintes parâmetros de consulta:
Parâmetro Descrição amazon_callback_uri
Um URI para redirecionar o navegador para a Amazon. amazon_state
Um valor de estado gerado pela Amazon para se proteger contra ataques de falsificação de solicitações entre sites. selling_partner_id
O identificador do parceiro de vendas que está autorizando seu aplicativo. Observação
Observação: se for um fluxo de trabalho de teste (iniciado ao navegar até seu URI de autorização do OAuth), a Amazon incluirá o parâmetro
version=beta
. Se for um fluxo de trabalho de produção (iniciado na Appstore do parceiro de vendas), a Amazon não incluirá o parâmetro.Por exemplo:
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
Etapa 3. Fazer login no seu site
-
Faça login no seu site. Se você não tiver uma conta, primeiro deverá concluir o processo de registro.
-
Seu aplicativo carrega o URI de retorno de chamada da Amazon (passado pela Amazon na etapa anterior) no navegador, adicionando os seguintes parâmetros:
Parâmetro | Descrição |
---|---|
redirect_uri | Um URI para redirecionar o navegador para seu aplicativo. Esse deve ser o URI de redirecionamento do OAuth que você especificou quando registrou seu aplicativo. Se você não incluir o parâmetro redirect_uri , o padrão será o primeiro URI de redirecionamento do OAuth especificado no registro do aplicativo.Opcional |
amazon_state | O valor amazon_state passado pela Amazon na etapa anterior. |
state | Um valor de estado gerado pelo seu aplicativo. Seu aplicativo usa esse valor para manter o estado entre essa solicitação e a resposta. Isso ajuda na proteção contra ataques de falsificação de solicitações entre sites. Importante: como as informações do OAuth são passadas por meio de parâmetros de consulta de URI, é altamente recomendável que você faça o seguinte: (1) certifique-se de que o token de estado tenha vida curta e seja verificavelmente exclusivo para seu usuário e (2) defina o cabeçalho |
Observação
Se você estiver testando seu fluxo de trabalho, você também deve incluir o
version=beta
parâmetro, que garante que o fluxo de trabalho autorize um aplicativo noDraft
estado. Se você não incluir o parâmetro, o fluxo de trabalho autorizará um aplicativo publicado na Selling Partner Appstore.
Por exemplo:
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
Etapa 4. A Amazon envia a você as informações de autorização
O Seller Central exibe uma notificação indicando que a Amazon está autorizando você a acessar os dados. Enquanto essa página é exibida, as seguintes ações ocorrem:
-
A Amazon carrega seu URI de redirecionamento do OAuth no navegador, adicionando os seguintes parâmetros de consulta:
Parâmetro Descrição state
O valor do estado que você passou na etapa anterior. selling_partner_id
O identificador do parceiro de vendas que está autorizando seu aplicativo. spapi_oauth_code
O código de autorização do Login com a Amazon (LWA) que você troca por um token de atualização do LWA. Para obter mais informações, consulte Etapa 5. Seu aplicativo troca o código de autorização do LWA por um token de atualização do LWA.
Observação: um código de autorização do LWA expira após 5 minutos. Você deve trocá-lo por um token de atualização do LWA antes que ele expire.Por exemplo:
https://client-example.com?state=state-example&selling_partner_id=sellingpartneridexample&spapi_oauth_code=spapioauthcodeexample -
Seu aplicativo valida o valor do estado.
-
Seu aplicativo salva o
selling_partner_id
espapi_oauth_code
valores. -
A página de destino do seu site é lançada.
Importante
Os Desenvolvedores devem observar que, se o processo de inscrição demorar mais de 10 minutos, o URI e o estado do callback da Amazon expirarão, interrompendo o fluxo de trabalho. Se nenhum redirecionamento para o URI de retorno de chamada da Amazon for detectado após a inscrição, os Desenvolvedores devem fazer com que o parceiro de vendas inicie a criação do fluxo de trabalho do OAuth usando o fluxo de trabalho do site. Como alternativa, o parceiro de vendas pode voltar à página de detalhes da Appstore do parceiro de vendas do aplicativo e reiniciar o fluxo de trabalho.
Etapa 5. Troque o código de autorização do LWA por um token de atualização do LWA
Dica
Observação: opcionalmente, você pode usar o SDK do Login com a Amazon para JavaScript para ajudar na troca de um código de autorização do LWA por um token de atualização do LWA. Para obter mais informações, consulte a documentação do Login com a Amazon:
-
Seu aplicativo chama o servidor de autorização do Login com a Amazon (LWA) (
https://api.amazon.com/auth/o2/token
) para trocar o código de autorização do LWA por um token de atualização do LWA. A chamada deve incluir os seguintes parâmetros de consulta:Parâmetro Descrição grant_type
O tipo de concessão de acesso solicitada, que deve ser authorization_code
.code
O código de autorização do LWA que você recebeu na Etapa 4. A Amazon envia a você as informações de autorização. redirect_uri
O URI de redirecionamento do seu aplicativo. client_id
Parte de suas credenciais do LWA. Para obter esse valor, consulte Visualizar as informações e credenciais do seu aplicativo. client_secret
Parte de suas credenciais do LWA. Para obter esse valor, consulte Visualizar as informações e credenciais do seu aplicativo. Por exemplo:
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 -
O servidor de autorização do LWA retorna o token de atualização do LWA. A resposta tem o formato JSON e inclui os seguintes elementos:
Parâmetro Descrição access_token
Um token que autoriza seu aplicativo a realizar determinadas ações em nome de um parceiro de vendas. Para obter mais informações, consulte Conectar-se à API do parceiro de vendas. token_type
O tipo de token retornado (deve ser bearer
).expires_in
O número de segundos antes que o token de acesso se torne inválido. refresh_token
Um token de longa duração que pode ser trocado por um novo token de acesso. Para obter mais informações, consulte Conectar-se à API do parceiro de vendas. 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" } -
Seu aplicativo salva o valor
refresh_token
. -
O navegador abre uma página que indica as próximas etapas para usar seu aplicativo.
Observação
Um token de atualização do LWA é um token de longa duração que você troca por um token de acesso do LWA. O token de acesso obtido por meio dessa troca de tokens deve ser incluído nas chamadas para todas as operações da API do parceiro de vendas, exceto operações restritas e operações sem concessão, que usam modelos de autorização um pouco diferentes. Depois que um token de acesso é emitido, ele é válido por 1 hora. O mesmo token de acesso pode ser usado para várias chamadas de API, até que expire.
Para trocar um token de atualização por um token de acesso usando um SDK gerado, consulte Conectar-se à API do parceiro de vendas usando um SDK Java gerado. Para trocar manualmente um token de atualização por um token de acesso, consulte Conectar-se à API do parceiro de vendas.
Etapa 6. (Opcional) Teste seu fluxo de trabalho de autorização
Recomendamos que você teste seu fluxo de trabalho de autorização para garantir que seu aplicativo possa trocar parâmetros com a Amazon e receber informações de autorização. Você deve testar seu fluxo de trabalho de autorização enquanto seu aplicativo estiver ativo Draft
status.
-
Certifique-se de que seu aplicativo esteja disponível
Draft
status. -
Crie um ou mais URIs de autorização do OAuth para fins de teste. Inclua o
version=beta
parâmetro no (s) URI (s) do OAuth para indicar que o fluxo de trabalho é para autorizar um aplicativo noDraft
status. Para obter mais informações, consulte Construindo um URI de autorização OAuth.Em vez de começar na Etapa 1. O parceiro de vendas inicia a autorização da Appstore do parceiro de vendas., você pode iniciar o fluxo de trabalho de teste navegando até um URI de autorização do OAuth existente.
Dica
Se você estiver testando seu fluxo de trabalho com um parceiro de vendas confiável, verifique se ele tem o URI de autorização do OAuth que corresponde à sua região operacional.
Se seu fluxo de trabalho de autorização de teste for bem-sucedido, você poderá convertê-lo em um fluxo de trabalho de produção.
Etapa 7. (Opcional) Converta seu fluxo de trabalho de autorização de teste em um fluxo de trabalho de produção
-
Liste seu aplicativo na Selling Partner Appstore. Essa ação altera automaticamente seu aplicativo de
Draft
paraPublished
. -
Atualize seu fluxo de trabalho para remover a
version=beta
parâmetro para o URI de retorno de chamada da Amazon. A remoção desse parâmetro garante que qualquer parceiro de vendas possa autorizar seu aplicativo publicado a partir de Etapa 1.
Diagrama de fluxo
O diagrama a seguir fornece uma visão geral dos fluxos de trabalho do Selling Partner Appstore e do site OAuth.
Updated 27 days ago