Conexão com a API do parceiro de vendas
Como se conectar à SP-API.
Before your application can connect to the Selling Partner API, you must register it and it must be authorized by a selling partner. Refer to Registering your application and Autorizar aplicativos da API do parceiro de vendas.
These instructions show you the steps for making a call to the Selling Partner API. For help with constructing a Selling Partner API URI and adding headers to it, refer to Gerar uma biblioteca de clientes Java. For a more complete solution that includes code for exchanging LWA tokens, refer to Geração de um Java SDK com troca de tokens LWA.
Etapa 1. Solicitar um token de acesso do Login com a Amazon
Um token de acesso do Login com a Amazon (LWA) autoriza o aplicativo a realizar determinadas ações em nome de um parceiro de vendas. Um token de acesso do LWA expira uma hora depois de ser emitido.
Note about restricted operations. An LWA access token must be included in calls to all operations except restricted operations, which return Personally Identifiable Information (PII). When calling restricted operations, instead of including an LWA access token, you include a Restricted Data Token (RDT). For information about getting RDTs and calling restricted operations, refer to the Tokens API Use Case Guide.
Para solicitar um token de acesso do LWA, crie um HTTP POST seguro para o servidor de autenticação do LWA (https://api.amazon.com/auth/o2/token
) com os seguintes parâmetros:
Nome | Descrição | Obrigatório |
---|---|---|
grant_type | O tipo de concessão de acesso solicitada. Valores:
| Sim |
refresh_token | The LWA refresh token. Get this value when the selling partner authorizes your application. For more information, refer to Autorizar aplicativos da API do parceiro de vendas. | Não. Inclua refresh_token em operações de chamada que exijam a autorização de um parceiro de vendas. Se você incluir refresh_token, não inclua scope. |
scope | O escopo da concessão de autorização do LWA. Valores:
| No. Include scope for calling a grantless operation. If you include scope, do not include refresh_token. |
client_id | Get this value when you register your application. Refer to Viewing your developer information. | Sim |
client_secret | Get this value when you register your application. Refer to Viewing your developer information. | Sim |
Exemplo de chamada para uma operação que exige autorização do parceiro de vendas:
POST /auth/o2/token HTTP/l.l
Host: api.amazon.com
Content-Type: application/x-www-form-urlencoded;charset=UTF-8
grant_type=refresh_token
&refresh_token=Aztr|...
&client_id=foodev
&client_secret=Y76SDl2F
Exemplo de chamada para uma operação sem concessão:
POST /auth/o2/token HTTP/l.l
Host: api.amazon.com
Content-Type: application/x-www-form-urlencoded;charset=UTF-8
grant_type=client_credentials
&scope=sellingpartnerapi::notifications
&client_id=foodev
&client_secret=Y76SDl2F
Dica: para evitar receber um erro de autoridade de certificação (CA) não confiável ao chamar o servidor de autorização do LWA, atualize a loja confiável para que o aplicativo confie no servidor de autorização do LWA.
Resposta
Uma resposta bem-sucedida inclui os seguintes valores.
Nome | Descrição |
---|---|
access_token | O token de acesso do LWA. Tamanho máximo: 2048 bytes. |
token_type | O tipo de token retornado. Deve ser um portador. |
expires_in | O número de segundos antes que o token de acesso do LWA se torne inválido. |
refresh_token | O token de atualização do LWA enviado na solicitação. Tamanho máximo: 2048 bytes. |
HTTP/l.l 200 OK
Content-Type: application/json;charset UTF-8
Cache-Control: no-store
Pragma:no-cache
{
"access_token":"Atza|IQEBLjAsAhRmHjNgHpi0U-Dme37rR6CuUpSREXAMPLE",
"token_type":"bearer",
"expires_in":3600,
"refresh_token":"Atzr|IQEBLzAtAhRPpMJxdwVz2Nn6f2y-tpJX2DeXEXAMPLE"
}
For more information, visit the Concessão de código de autorização page in the Login with Amazon documentation.
Etapa 2. Criar um URI para a API do parceiro de vendas
Estes são os componentes de um URI para a API do parceiro de vendas.
Nome | Descrição | Exemplo |
---|---|---|
Método HTTP | O método HTTP. | GET |
Endpoint | A Selling Partner API endpoint. | https://sellingpartnerapi-na.amazon.com |
Path | O número da seção/versão da API do parceiro de vendas da seção ou do recurso. | /fba/inbound/v0/shipments/{shipmentId}/preorder/confirm |
String de consulta | Os parâmetros de consulta. | ?marketplace=ATVPDKIKX0DER |
Parâmetro do caminho | Os parâmetros do caminho. | shipmentId1 |
Por exemplo:
PUT https://sellingpartnerapi-na.amazon.com/fba/inbound/v0/shipments/shipmentId1/preorder/confirm?MarketplaceId=ATVPDKIKX0DER&NeedByDate=2020-10-10
Etapa 3. Adicionar cabeçalhos ao URI
Add headers to the URI that you constructed in Etapa 2. Criar um URI para a API do parceiro de vendas. Here are the HTTP headers to include in requests to the Selling Partner API:
Cabeçalhos de solicitação
Nome | Descrição |
---|---|
host | The marketplace endpoint. Refer to Selling Partner API endpoints. |
x-amz-access-token | The LWA access token. Refer to Etapa 1. Solicitar um token de acesso do Login com a Amazon. Note about restricted operations. If you are calling a restricted operation, pass in a Restricted Data Token (RDT) here instead of an LWA access token. For information about getting RDTs and calling restricted operations, refer to the Guia de casos de uso da API de tokens in the Tokens API Use Case Guide. |
x-amz-date | A data e a hora da solicitação. |
user-agent | Your application name and version number, platform, and programming language. These help Amazon diagnose and fix problems you might encounter with the service. Refer to Incluir um cabeçalho User-Agent em todas as solicitações. |
Este é um exemplo de uma solicitação à API do parceiro de vendas com URI e cabeçalhos, mas sem informações de assinatura:
PUT /fba/inbound/v0/shipments/shipmentId1/preorder/confirm?MarketplaceId=ATVPDKIKX0DER&NeedByDate=2020-10-10 HTTP/1.1
host: sellingpartnerapi-na.amazon.com
user-agent: My Selling Tool/2.0 (Language=Java/1.8.0.221;
Platform=Windows/10)
x-amz-access-token=Atza|IQEBLjAsAhRmHjNgHpi0U-Dme37rR6CuUpSREXAMPLE
x-amz-date: 20190430T123600Z
Atualizado há 8 dias