Conectarse a la API del colaborador comercial
Cómo conectarse a la SP-API.
Para que tu aplicación pueda conectarse a la API de socios vendedores, debes registrarla y contar con la autorización de un socio vendedor. Consulta: Registrar su solicitud y Autorización de las aplicaciones de la API de los socios vendedores.
En estas instrucciones se muestran los pasos para realizar una llamada a la API de socios vendedores. Si necesitas ayuda para crear una URI de la API de un socio vendedor y añadirle encabezados, consulta Generar una biblioteca cliente de Java. Para obtener una solución más completa que incluya código para intercambiar tokens LWA, consulte Generar un SDK de Java con el intercambio de tokens LWA.
Paso 1. Solicitar un token de acceso de Iniciar sesión con Amazon
Un token de acceso de Iniciar sesión con Amazon (LWA) autoriza a tu aplicación a realizar determinadas acciones en nombre de un colaborador comercial. Un token de acceso de LWA caduca una hora después de su emisión.
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 un token de acceso de LWA, crea un HTTP POST seguro en el servidor de autenticación de LWA (https://api.amazon.com/auth/o2/token
) con los siguientes parámetros:
Nombre | Descripción | Obligatorio |
---|---|---|
grant_type | El tipo de concesión de acceso solicitada. Valores:
| Sí |
refresh_token | El token de actualización de LWA. Obtén este valor cuando el socio vendedor autorice tu solicitud. Para obtener más información, consulte Autorización de las aplicaciones de la API de los socios vendedores. | No. Incluye refresh_token para realizar operaciones que requieran la autorización de un colaborador comercial. Si incluyes refresh_token, no incluyas scope. |
scope | El alcance de la concesión de autorización de LWA. Valores:
| No. Incluye scope para llamar a una operación sin concesión. Si incluyes scope, no incluyas refresh_token. |
client_id | Obtenga este valor cuando registre su solicitud. Consulte Visualización de tu información de desarrollador. | Sí |
client_secret | Obtenga este valor cuando registre su solicitud. Consulte Visualización de tu información de desarrollador. | Sí |
Ejemplo para llamar a una operación que requiere la autorización del colaborador comercial:
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
Ejemplo para llamar a una operación sin concesión:
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
Consejo: para evitar que aparezca un error de una entidad de certificación (CA) que no sea de confianza al llamar al servidor de autorización de LWA, asegúrate de actualizar tu almacén de confianza para que la aplicación confíe en el servidor de autorización de LWA.
Respuesta
Una respuesta correcta incluye los siguientes valores.
Nombre | Descripción |
---|---|
access_token | El token de acceso de LWA. Tamaño máximo: 2048 bytes. |
token_type | El tipo de token devuelto. Debe ser bearer. |
expires_in | El número de segundos que faltan para que el token de acceso de LWA deje de ser válido. |
refresh_token | El token de actualización de LWA que enviaste en la solicitud. Tamaño 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"
}
Para obtener más información, visita la página Concesión de código de autorización de la documentación de Iniciar sesión con Amazon.
Paso 2. Crear un URI de la API del colaborador comercial
Estos son los componentes de un URI de la API del colaborador comercial.
Nombre | Descripción | Ejemplo |
---|---|---|
Método HTTP | El método HTTP. | GET |
Endpoint | Un endpoint de la API del colaborador comercial. | https://sellingpartnerapi-na.amazon.com |
Path | La sección/versión de la API del colaborador comercial. Número de la sección/recurso. | /fba/inbound/v0/shipments/{shipmentId}/preorder/confirm |
Cadena de consulta | Los parámetros de consulta. | ?marketplace=ATVPDKIKX0DER |
Parámetro de ruta | Los parámetros de la ruta. | shipmentId1 |
Por ejemplo:
PUT https://sellingpartnerapi-na.amazon.com/fba/inbound/v0/shipments/shipmentId1/preorder/confirm?MarketplaceId=ATVPDKIKX0DER&NeedByDate=2020-10-10
Paso 3. Añadir encabezados al URI
Añade encabezados al URI que creaste en el Paso 2. Crear un URI de la API del colaborador comercial. Estos son los encabezados HTTP que incluyes en las solicitudes a la API del colaborador comercial:
Encabezados de solicitudes
Nombre | Descripción |
---|---|
host | El punto final del mercado. Consulte Puntos finales de API para socios vendedores. |
x-amz-access-token | El token de acceso de LWA. Consulte Paso 1. Solicita un inicio de sesión con el token de acceso de Amazon. Nota sobre las operaciones restringidas. Si vas a llamar a una operación restringida, introduce aquí un token de datos restringidos (RDT) en lugar de un token de acceso LWA. Para obtener información sobre cómo obtener RDT y realizar llamadas a operaciones restringidas, consulta Guía de casos de uso de la API de tokens en la Guía de casos de uso de la API de Tokens. |
x-amz-date | La fecha y hora de tu solicitud. |
user-agent | El nombre y el número de versión de la aplicación, la plataforma y el lenguaje de programación. Ayudan a Amazon a diagnosticar y solucionar los problemas que puedas encontrar con el servicio. Consulte Incluya un encabezado User-Agent en todas las solicitudes. |
Este es un ejemplo de una solicitud a la API del colaborador comercial con URI y encabezados, pero sin información de firma:
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
Actualizado hace 6 días