Si quieres saber qué es una API Key de Skydropx, continúa leyendo hasta el final. Vamos a enseñarte cómo funciona una Application Programming Interface Key y cómo la puedes usar en tu tienda en línea. Pero esto no es todo, también te explicaremos dónde puedes utilizar una API Key Skydropx y los pasos que tendrás que hacer para integrarla en tu desarrollo informático. Por último, te diremos cómo solicitar la API Key de nuestra plataforma de envíos por internet sin cometer errores. No te pierdas ningún detalle de todo lo que hemos preparado para ti, comencemos.
🤔 ¿Qué es una API Key?
Una API Key, o Application Programming Interface Key, es un conjunto de protocolos que se utiliza para integrar aplicaciones con otros programas informáticos, teniendo en cuenta la identidad del usuario. Es decir, una API Key, además de integrar software, trabaja como un identificador para autorizar a un usuario a acceder a ciertos códigos del desarrollo.
📝 ¿Cómo funciona una API Key?
El funcionamiento de una API Key está destinado a que desarrolladores externos a la aplicación puedan usar el programa en sus proyectos informáticos. De esta manera, es posible ofrecer un servicio diferenciado a los visitantes de un sitio, ya que, desde un mismo lugar es posible acceder a distintas herramientas de terceros.
En el caso de Skydropx, la Application Programming Interface Key se utiliza para vincularlas con ecommerce y permitir a los compradores conocer las mejores cotizaciones, hacer rastreos y obtener etiquetas, entre muchas otras funciones.
💡 ¿Dónde puedo utilizar una API Key de Skydropx?
Lo puedes usar en todos los desarrollos informáticos en los que necesites una integración personalizada de logística. Por ejemplo, una tienda en línea con códigos a la medida, para consultar solo una API específica de Skydropx y más. Continúa leyendo y te explicamos el paso a paso que tienes que hacer para sacar el máximo provecho a tu negocio con este documento.
✍️ ¿Cómo utilizar una API Key de Skydropx? Guía Paso a Paso
Mira nuestra guía con el paso a paso que tienes que hacer sobre cómo utilizar una API Key Skydropx como un verdadero profesional. Comencemos:
Obtén tu clave API
Lo primero que tienes que hacer es solicitar el acceso a nuestra Application Programming Interface key. Para ello, tendrás que enviar un correo a la dirección [email protected] para que el equipo de soporte te envíe toda la información necesaria.
Autoriza el uso de API Key Skydropx
Recuerda que, las solicitudes de API del servidor deberán tener este encabezado:
- Authorization: Token token = YOUR_API_KEY
Cuando tengas que autorizar tendrás que usar este código:
# With shell, you can just pass the correct header with each request. \ curl “https://api.skydropx.com/v1/shipments” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json”
Realiza pruebas de desarrollador
Te recomendamos que, antes de usar nuestra API, realices una prueba del entorno de desarrollo utilizando la Demo Skydropx API Key. Para ello, tendrás que seguir este paso a paso:
- Accede con tu navegador de confianza a la Demo Skydropx.
- Dirígete al formulario Crea tu cuenta y completa toda la información necesaria.
- A continuación, escribe un correo a [email protected] y solicita la demo a nuestro equipo de developers.
- Ingresa a la URL para el entorno de demostración de la API. Para ello, tendrás que escribir este link.
Obtén una lista actualizada de transportistas
Una vez que verificaste el correcto funcionamiento de la Application Programming Interface Key Skydropx, es hora de actualizar tu cuenta de usuario. Por lo que, este y los siguientes pasos te servirán para gestionar la logística de tu negocio desde un mismo lugar.
Lo primero que tendrás que hacer es solicitar por medio de http: GET https://api.skydropx.com/v1/carriers. A continuación, escribe el siguiente código:
curl “https://api.skydropx.com/v1/carriers” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json”
La respuesta será:
{ “data”: [ { “id”: “785f39d0-11f7-4fcf-871e-5dad6795bbb7”, “type”: “carrier”, “attributes”: { “name”: “Fedex” } }, { “id”: “746c7235-7452-4a82-8ab7-5f3c36fc4680”, “type”: “carrier”, “attributes”: { “name”: “DHL” } } ] }
Obtén los parámetros de las cotizaciones
En este paso tendrás que agregar los códigos postales y las medidas de los paquetes. La solicitud HTTP utilizada es POST. Los parámetros son:
El código que vas a ingresar es:
- zip_fromString: Código postal de origen.
- zip_toString: Código postal de destino.
- parcelObject: Se utiliza para especificar las medidas y el peso total del paquete.
- weightInteger: Peso del paquete, debe estar en KG.
- heightInteger: Altura del paquete, debe estar en CM.
- widthInteger: Altura del paquete, debe estar en CM.
- lengthInteger: Altura del paquete, debe estar en CM.
- carriersArray (optional): Altura del paquete, debe estar en CM.
El código que vas a ingresar es:
curl “https://api.skydropx.com/v1/quotations” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json” \ -d ‘{ “zip_from”: “02900”, “zip_to”: “44100”, “parcel”: { “weight”: “1”, “height”: “10”, “width”: “10”, “length”: “10” }, “carriers”: [{ “name”: “DHL” }, { “name”: “Fedex” }] }’
La respuesta que recibirás es:
{ “amount_local”: 540, “currency_local”: “MXN”, “provider”: “UPS”, “service_level_name”: “UPS Express”, “service_level_code”: “EXPRESS_SAVER”, “days”: 2, “insurable”: false, “out_of_area_service”: false, “out_of_area_pricing”: 0, “total_pricing”: 540, “is_occure”: true }, { “amount_local”: 681, “currency_local”: “MXN”, “provider”: “ESTAFETA”, “service_level_name”: “Servicio Express”, “service_level_code”: “ESTAFETA_NEXT_DAY”, “days”: 2, “insurable”: true, “out_of_area_service”: true, “out_of_area_pricing”: 100, “total_pricing”: 781, “is_occure”: true } ]
En donde:
- amount_local se utiliza para indicar el costo del servicio. Es importante saber que, a este importe se le puede agregar cargos extras, según el código postal ingresado. Si aparece la leyenda “Fuera del área” significa que la zona indicada no está cubierta, por lo que va a generar cargos adicionales.
- out_of_area_servicese utiliza para indicar si el servicio está fuera del área de entrega normal y si es cierto.
- out_of_area_pricing conocer el precio de este servicio adicional.
- total_pricingtiene es la suma de las variables amount_localy y out_of_area_pricing.
- days es el tiempo estimado de entrega.
- insurable cuando veas esta variable significa que el envío puede tener cobertura y ser asegurado, pero es necesario declara un valor.
- is_ocurrese se utiliza para indicar si el envío será entregado en el domicilio del destinatario o en la sucursal de la empresa de logística.
Obtener Envíos
Para obtener todos los envíos es necesario realizar la solicitud HTTP en GET. Siendo los parámetros de consulta:
- page Integer, el valor predeterminado es 1 el número de página.
- per_page Integer, el valor predeterminado es 20 la cantidad de registros por página.
A continuación, tendrás que ingresar estos códigos:
curl “https://api.skydropx.com/v1/shipments” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json”
La respuesta que recibirás es:
{ “data”: [ { “id”: “902675”, “type”: “shipments”, “attributes”: { “status”: “WAITING”, “created_at”: “2018-12-18T15:00:21.892-06:00”, “updated_at”: “2018-12-18T15:00:21.892-06:00” }, “relationships”: { “parcel”: { “data”: { “id”: “773773”, “type”: “parcels” } }, “rates”: { “data”: [ { “id”: “7146458”, “type”: “rates” }, { “id”: “7146457”, “type”: “rates” }, { “id”: “7146456”, “type”: “rates” }, { “id”: “7146455”, “type”: “rates” }, { “id”: “7146454”, “type”: “rates” } ] }, “address_to”: { “data”: { “id”: “2901622”, “type”: “addresses” } }, “address_from”: { “data”: { “id”: “2901621”, “type”: “addresses” } }, “label”: { “data”: null } } } ], “included”: [ { “id”: “773773”, “type”: “parcels”, “attributes”: { “length”: “10.0”, “height”: “10.0”, “width”: “10.0”, “weight”: “3.0”, “mass_unit”: “KG”, “distance_unit”: “CM” } }, { “id”: “7146458”, “type”: “rates”, “attributes”: { “created_at”: “2018-12-18T15:00:22.418-06:00”, “updated_at”: “2018-12-18T15:00:22.418-06:00”, “amount_local”: “119.0”, “currency_local”: “MXN”, “provider”: “CARSSA”, “service_level_name”: “Nacional”, “service_level_code”: “NACIONAL”, “service_level_terms”: null, “days”: 5, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: false, “out_of_area_pricing”: “0.0”, “total_pricing”: “119.0”, “is_occure”: true } }, { “id”: “7146457”, “type”: “rates”, “attributes”: { “created_at”: “2018-12-18T15:00:22.389-06:00”, “updated_at”: “2018-12-18T15:00:22.389-06:00”, “amount_local”: “204.0”, “currency_local”: “MXN”, “provider”: “DHL”, “service_level_name”: “DHL Express”, “service_level_code”: “EXPRESS”, “service_level_terms”: null, “days”: 2, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: true, “out_of_area_pricing”: “145.00”, “total_pricing”: “349.0”, “is_occure”: true } }, { “id”: “7146456”, “type”: “rates”, “attributes”: { “created_at”: “2018-12-18T15:00:22.380-06:00”, “updated_at”: “2018-12-18T15:00:22.380-06:00”, “amount_local”: “180.0”, “currency_local”: “MXN”, “provider”: “DHL”, “service_level_name”: “DHL Terrestre”, “service_level_code”: “STANDARD”, “service_level_terms”: null, “days”: 5, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: true, “out_of_area_pricing”: “145.00”, “total_pricing”: “325.0”, “is_occure”: true } }, { “id”: “7146455”, “type”: “rates”, “attributes”: { “created_at”: “2018-12-18T15:00:22.150-06:00”, “updated_at”: “2018-12-18T15:00:22.150-06:00”, “amount_local”: “205.0”, “currency_local”: “MXN”, “provider”: “FEDEX”, “service_level_name”: “Standard Overnight”, “service_level_code”: “STANDARD_OVERNIGHT”, “service_level_terms”: null, “days”: 2, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: true, “out_of_area_pricing”: “145.00”, “total_pricing”: “350.0”, “is_occure”: true } }, { “id”: “7146454”, “type”: “rates”, “attributes”: { “created_at”: “2018-12-18T15:00:22.141-06:00”, “updated_at”: “2018-12-18T15:00:22.141-06:00”, “amount_local”: “149.0”, “currency_local”: “MXN”, “provider”: “FEDEX”, “service_level_name”: “Fedex Express Saver”, “service_level_code”: “FEDEX_EXPRESS_SAVER”, “service_level_terms”: null, “days”: 5, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: true, “out_of_area_pricing”: “145.00”, “total_pricing”: “294.0”, “is_occure”: true } }, { “id”: “2901622”, “type”: “addresses”, “attributes”: { “name”: “Jorge Fernández”, “company”: “-“, “address1”: “Av. Lázaro Cárdenas #234”, “address2”: “Americana”, “city”: “Guadalajara”, “province”: “Jalisco”, “zip”: “23312”, “country”: “MX”, “phone”: “5555555555”, “email”: “[email protected]”, “created_at”: “2018-12-18T15:00:21.887-06:00”, “updated_at”: “2018-12-18T15:00:21.887-06:00” } }, { “id”: “2901621”, “type”: “addresses”, “attributes”: { “name”: “Jose Fernando”, “company”: “skydropx”, “address1”: “Av. Principal #234”, “address2”: “Centro”, “city”: “Guadalajara”, “province”: “Jalisco”, “zip”: “02900”, “country”: “MX”, “phone”: “5555555555”, “email”: “[email protected]”, “created_at”: “2018-12-18T15:00:21.874-06:00”, “updated_at”: “2018-12-18T15:00:21.874-06:00” } } ], “links”: { “self”: “https://api.skydropx.com/v1/shipments?page%5Bnumber%5D=1&page%5Bsize%5D=20”, “first”: “https://api.skydropx.com/v1/shipments?page%5Bnumber%5D=1&page%5Bsize%5D=20”, “prev”: null, “next”: null, “last”: “https://api.skydropx.com/v1/shipments?page%5Bnumber%5D=1&page%5Bsize%5D=20” } }
Cuando quieras recibir información sobre un envío específico, tendrás que usar HTTP de solicitud GET https://api.skydropx.com/v1/shipments/ID y el parámetro de la URL es IDInteger para el ID del envío a recuperar y con esto ya podrás usar el «integrador API key».
El código de la API Skydropx que tienes que escribir es:
curl “GET https://api.skydropx.com/v1/shipments/<ID>” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json”
La respuesta para un envío específico es:
{ “data”: { “id”: “902675”, “type”: “shipments”, “attributes”: { “status”: “WAITING”, “created_at”: “2018-12-18T15:00:21.892-06:00”, “updated_at”: “2018-12-18T15:00:21.892-06:00” }, “relationships”: { “parcel”: { “data”: { “id”: “773773”, “type”: “parcels” } }, “rates”: { “data”: [ { “id”: “7146458”, “type”: “rates” }, { “id”: “7146457”, “type”: “rates” }, { “id”: “7146456”, “type”: “rates” }, { “id”: “7146455”, “type”: “rates” }, { “id”: “7146454”, “type”: “rates” } ] }, “address_to”: { “data”: { “id”: “2901622”, “type”: “addresses” } }, “address_from”: { “data”: { “id”: “2901621”, “type”: “addresses” } }, “label”: { “data”: null } } }, “included”: [ { “id”: “773773”, “type”: “parcels”, “attributes”: { “length”: “10.0”, “height”: “10.0”, “width”: “10.0”, “weight”: “3.0”, “mass_unit”: “KG”, “distance_unit”: “CM” } }, { “id”: “7146458”, “type”: “rates”, “attributes”: { “created_at”: “2018-12-18T15:00:22.418-06:00”, “updated_at”: “2018-12-18T15:00:22.418-06:00”, “amount_local”: “119.0”, “currency_local”: “MXN”, “provider”: “CARSSA”, “service_level_name”: “Nacional”, “service_level_code”: “NACIONAL”, “service_level_terms”: null, “days”: 5, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: false, “out_of_area_pricing”: “0.0”, “total_pricing”: “119.0”, “is_occure”: true } }, { “id”: “7146457”, “type”: “rates”, “attributes”: { “created_at”: “2018-12-18T15:00:22.389-06:00”, “updated_at”: “2018-12-18T15:00:22.389-06:00”, “amount_local”: “204.0”, “currency_local”: “MXN”, “provider”: “DHL”, “service_level_name”: “DHL Express”, “service_level_code”: “EXPRESS”, “service_level_terms”: null, “days”: 2, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: true, “out_of_area_pricing”: “145.00”, “total_pricing”: “349.0”, “is_occure”: true } }, { “id”: “7146456”, “type”: “rates”, “attributes”: { “created_at”: “2018-12-18T15:00:22.380-06:00”, “updated_at”: “2018-12-18T15:00:22.380-06:00”, “amount_local”: “180.0”, “currency_local”: “MXN”, “provider”: “DHL”, “service_level_name”: “DHL Terrestre”, “service_level_code”: “STANDARD”, “service_level_terms”: null, “days”: 5, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: true, “out_of_area_pricing”: “145.00”, “total_pricing”: “325.0”, “is_occure”: true } }, { “id”: “7146455”, “type”: “rates”, “attributes”: { “created_at”: “2018-12-18T15:00:22.150-06:00”, “updated_at”: “2018-12-18T15:00:22.150-06:00”, “amount_local”: “205.0”, “currency_local”: “MXN”, “provider”: “FEDEX”, “service_level_name”: “Standard Overnight”, “service_level_code”: “STANDARD_OVERNIGHT”, “service_level_terms”: null, “days”: 2, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: true, “out_of_area_pricing”: “145.00”, “total_pricing”: “350.0”, “is_occure”: true } }, { “id”: “7146454”, “type”: “rates”, “attributes”: { “created_at”: “2018-12-18T15:00:22.141-06:00”, “updated_at”: “2018-12-18T15:00:22.141-06:00”, “amount_local”: “149.0”, “currency_local”: “MXN”, “provider”: “FEDEX”, “service_level_name”: “Fedex Express Saver”, “service_level_code”: “FEDEX_EXPRESS_SAVER”, “service_level_terms”: null, “days”: 5, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: true, “out_of_area_pricing”: “145.00”, “total_pricing”: “294.0”, “is_occure”: true } }, { “id”: “2901622”, “type”: “addresses”, “attributes”: { “name”: “Jorge Fernández”, “company”: “-“, “address1”: “Av. Lázaro Cárdenas #234”, “address2”: “Americana”, “city”: “Guadalajara”, “province”: “Jalisco”, “zip”: “23312”, “country”: “MX”, “phone”: “5555555555”, “email”: “[email protected]”, “created_at”: “2018-12-18T15:00:21.887-06:00”, “updated_at”: “2018-12-18T15:00:21.887-06:00” } }, { “id”: “2901621”, “type”: “addresses”, “attributes”: { “name”: “Jose Fernando”, “company”: “skydropx”, “address1”: “Av. Principal #234”, “address2”: “Centro”, “city”: “Guadalajara”, “province”: “Jalisco”, “zip”: “02900”, “country”: “MX”, “phone”: “5555555555”, “email”: “[email protected]”, “created_at”: “2018-12-18T15:00:21.874-06:00”, “updated_at”: “2018-12-18T15:00:21.874-06:00” } } ] }
Para crear un envío o Shipment, tendrás que utilizar la solicitud HTTP POST. Siendo los campos contents debajo address_to del objeto los que se utilizan para indicar la descripción del paquete a enviar. Los códigos a ingresar son:
curl “https://api.skydropx.com/v1/shipments” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json” \ -d ‘{ “address_from”: {“province”: “Ciudad de México”, “city”: “Azcapotzalco”, “name”: “Jose Fernando”, “zip”: “02900”, “country”: “MX”, “address1”: “Av. Principal #234”, “company”: “skydropx”, “address2”: “Centro”, “phone”: “5555555555”, “email”: “[email protected]”}, “parcels”: [{ “weight”: 3, “distance_unit”: “CM”, “mass_unit”: “KG”, “height”: 10, “width”: 10, “length”: 10 }], “address_to”: { “province”: “Jalisco”, “city”: “Guadalajara”, “name”: “Jorge Fernández”, “zip”: “44100”, “country”: “MX”, “address1″: ” Av. Lázaro Cárdenas #234″, “company”: “-“, “address2”: “Americana”, “phone”: “5555555555”, “email”: “[email protected]”, “reference”: “Frente a tienda de abarro”, “contents”: “” }, “consignment_note_class_code”: “53131600”, “consignment_note_packaging_code”: “1H1”, “carriers”: [{ “name”: “DHL” }, { “name”: “Fedex” }] }’
Y la respuesta a recibir es:
{ “data”: { “id”: “902675”, “type”: “shipments”, “attributes”: { “status”: “WAITING”, “created_at”: “2018-12-18T15:00:21.892-06:00”, “updated_at”: “2018-12-18T15:00:21.892-06:00” }, “relationships”: { “parcel”: { “data”: { “id”: “773773”, “type”: “parcels” } }, “rates”: { “data”: [ { “id”: “7146454”, “type”: “rates” }, { “id”: “7146455”, “type”: “rates” }, { “id”: “7146456”, “type”: “rates” }, { “id”: “7146457”, “type”: “rates” }, { “id”: “7146458”, “type”: “rates” } ] }, “address_to”: { “data”: { “id”: “2901622”, “type”: “addresses” } }, “address_from”: { “data”: { “id”: “2901621”, “type”: “addresses” } }, “label”: { “data”: null }, “consignment_note_class”: { “data”: { “id”: 641, “name”: “Papel de imprenta y papel de escribir”, “code”: “14111500”, “subcategory_id”: 50, “created_at”: “2021-12-02T07:10:55.072-06:00”, “updated_at”: “2021-12-02T07:10:55.072-06:00” } }, “consignment_note_packaging”: { “data”: { “id”: 27, “code”: “Z01”, “name”: “No aplica”, “created_at”: “2023-02-03T12:28:03.388-06:00”, “updated_at”: “2023-02-03T12:28:03.388-06:00” } } } }, “included”: [ { “id”: “773773”, “type”: “parcels”, “attributes”: { “length”: “10.0”, “height”: “10.0”, “width”: “10.0”, “weight”: “3.0”, “mass_unit”: “KG”, “distance_unit”: “CM” } }, { “id”: “7146454”, “type”: “rates”, “attributes”: { “created_at”: “2018-12-18T15:00:22.141-06:00”, “updated_at”: “2018-12-18T15:00:22.141-06:00”, “amount_local”: “149.0”, “currency_local”: “MXN”, “provider”: “FEDEX”, “service_level_name”: “Fedex Express Saver”, “service_level_code”: “FEDEX_EXPRESS_SAVER”, “service_level_terms”: null, “days”: 5, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: true, “out_of_area_pricing”: “145.00”, “total_pricing”: “294.0”, “is_occure”: true } }, { “id”: “7146455”, “type”: “rates”, “attributes”: { “created_at”: “2018-12-18T15:00:22.150-06:00”, “updated_at”: “2018-12-18T15:00:22.150-06:00”, “amount_local”: “205.0”, “currency_local”: “MXN”, “provider”: “FEDEX”, “service_level_name”: “Standard Overnight”, “service_level_code”: “STANDARD_OVERNIGHT”, “service_level_terms”: null, “days”: 2, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: true, “out_of_area_pricing”: “145.00”, “total_pricing”: “350.0”, “is_occure”: true } }, { “id”: “7146456”, “type”: “rates”, “attributes”: { “created_at”: “2018-12-18T15:00:22.380-06:00”, “updated_at”: “2018-12-18T15:00:22.380-06:00”, “amount_local”: “180.0”, “currency_local”: “MXN”, “provider”: “DHL”, “service_level_name”: “DHL Terrestre”, “service_level_code”: “STANDARD”, “service_level_terms”: null, “days”: 5, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: true, “out_of_area_pricing”: “145.00”, “total_pricing”: “325.0”, “is_occure”: true } }, { “id”: “7146457”, “type”: “rates”, “attributes”: { “created_at”: “2018-12-18T15:00:22.389-06:00”, “updated_at”: “2018-12-18T15:00:22.389-06:00”, “amount_local”: “204.0”, “currency_local”: “MXN”, “provider”: “DHL”, “service_level_name”: “DHL Express”, “service_level_code”: “EXPRESS”, “service_level_terms”: null, “days”: 2, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: true, “out_of_area_pricing”: “145.00”, “total_pricing”: “349.0”, “is_occure”: true } }, { “id”: “7146458”, “type”: “rates”, “attributes”: { “created_at”: “2018-12-18T15:00:22.418-06:00”, “updated_at”: “2018-12-18T15:00:22.418-06:00”, “amount_local”: “119.0”, “currency_local”: “MXN”, “provider”: “CARSSA”, “service_level_name”: “Nacional”, “service_level_code”: “NACIONAL”, “service_level_terms”: null, “days”: 5, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: false, “out_of_area_pricing”: “0.0”, “total_pricing”: “119.0”, “is_occure”: true } }, { “id”: “2901622”, “type”: “addresses”, “attributes”: { “name”: “Jorge Fernández”, “company”: “-“, “address1”: “Av. Lázaro Cárdenas #234”, “address2”: “Americana”, “city”: “Guadalajara”, “province”: “Jalisco”, “zip”: “23312”, “country”: “MX”, “phone”: “5555555555”, “email”: “[email protected]”, “created_at”: “2018-12-18T15:00:21.887-06:00”, “updated_at”: “2018-12-18T15:00:21.887-06:00” } }, { “id”: “2901621”, “type”: “addresses”, “attributes”: { “name”: “Jose Fernando”, “company”: “skydropx”, “address1”: “Av. Principal #234”, “address2”: “Centro”, “city”: “Guadalajara”, “province”: “Jalisco”, “zip”: “02900”, “country”: “MX”, “phone”: “5555555555”, “email”: “[email protected]”, “created_at”: “2018-12-18T15:00:21.874-06:00”, “updated_at”: “2018-12-18T15:00:21.874-06:00” } } ] }
En caso de que quieras crear un envío internacional, tendrás que usar la solicitud HTTP POST. En donde, también es necesario usar los campos contents debajo address_to del objet para describir las dimensiones y peso del paquete. La respuesta para este punto es:
{ “data”: { “id”: “260”, “type”: “shipments”, “attributes”: { “status”: “WAITING”, “created_at”: “2020-11-19T13:51:10.633-06:00”, “updated_at”: “2020-11-19T13:51:14.633-06:00” }, “relationships”: { “parcels”: { “data”: [ { “id”: “242”, “type”: “parcels” } ] }, “rates”: { “data”: [ { “id”: “929”, “type”: “rates” }, { “id”: “930”, “type”: “rates” } ] }, “address_to”: { “data”: { “id”: “894”, “type”: “addresses” } }, “address_from”: { “data”: { “id”: “893”, “type”: “addresses” } }, “labels”: { “data”: [] } } }, “included”: [ { “id”: “242”, “type”: “parcels”, “attributes”: { “length”: “10.0”, “height”: “10.0”, “width”: “10.0”, “weight”: “3.0”, “mass_unit”: “KG”, “distance_unit”: “CM” } }, { “id”: “929”, “type”: “rates”, “attributes”: { “created_at”: “2020-11-19T13:51:14.676-06:00”, “updated_at”: “2020-11-19T13:51:14.702-06:00”, “amount_local”: “723.4”, “currency_local”: “MXN”, “provider”: “FEDEX”, “service_level_name”: “International Economy”, “service_level_code”: “INTERNATIONAL_ECONOMY”, “service_level_terms”: null, “days”: 6, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: false, “out_of_area_pricing”: “0.0”, “total_pricing”: “723.4” } }, { “id”: “930”, “type”: “rates”, “attributes”: { “created_at”: “2020-11-19T13:51:14.687-06:00”, “updated_at”: “2020-11-19T13:51:14.710-06:00”, “amount_local”: “798.0”, “currency_local”: “MXN”, “provider”: “FEDEX”, “service_level_name”: “International Priority”, “service_level_code”: “INTERNATIONAL_PRIORITY”, “service_level_terms”: null, “days”: 4, “duration_terms”: null, “zone”: null, “arrives_by”: null, “out_of_area”: false, “out_of_area_pricing”: “0.0”, “total_pricing”: “798.0” } }, { “id”: “894”, “type”: “addresses”, “attributes”: { “name”: “Jorge Fernández”, “company”: “-“, “address1”: “Av. Lázaro Cárdenas #234”, “address2”: “Americana”, “city”: “San Antonio”, “province”: “TX”, “zip”: “78006”, “country”: “US”, “phone”: “2124499113”, “email”: “[email protected]”, “created_at”: “2020-11-19T13:51:10.621-06:00”, “updated_at”: “2020-11-19T13:51:10.621-06:00”, “reference”: null, “province_code”: null, “contents”: “ropa” } }, { “id”: “893”, “type”: “addresses”, “attributes”: { “name”: “Jose Fernando”, “company”: “skydropx”, “address1”: “Av. Principal #234”, “address2”: “Centro”, “city”: “Azcapotzalco”, “province”: “Ciudad de México”, “zip”: “02900”, “country”: “MX”, “phone”: “5555555555”, “email”: “[email protected]”, “created_at”: “2020-11-19T13:51:10.600-06:00”, “updated_at”: “2020-11-19T13:51:10.600-06:00”, “reference”: null, “province_code”: “DF”, “contents”: null } } ] }
Obtener Etiquetas
Para conseguir las etiquetas de los paquetes es necesario usar la solicitud HTTP GET. Siendo los parámetros de referencia:
- page número entero, el valor predeterminado es 1 por número de página.
- per_page también es entero, el valor predeterminado es 20 por la cantidad de registros por página.
Los códigos que se deben escribir son:
curl “https://api.skydropx.com/v1/labels” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json”
La respuesta será:
{ “data”: [ { “id”: “39”, “type”: “labels”, “attributes”: { “created_at”: “2018-07-26T00:18:56.665-05:00”, “updated_at”: “2018-07-26T00:18:56.665-05:00”, “status”: null, “tracking_number”: “XXXXXXXXXX”, “tracking_status”: null, “label_url”: “label-url.pdf”, “tracking_url_provider”: “http://www.estafeta.com/Rastreo/XXXXXXXXXX”, “rate_id”: 3087 } }, { “id”: “40”, “type”: “labels”, “attributes”: { “created_at”: “2018-07-26T00:18:57.326-05:00”, “updated_at”: “2018-07-26T00:18:57.326-05:00”, “status”: null, “tracking_number”: “XXXXXXXXXX”, “tracking_status”: null, “label_url”: “label-url.pdf”, “tracking_url_provider”: “http://www.estafeta.com/Rastreo/XXXXXXXXXX”, “rate_id”: 3089 } } ], “links”: { “self”: “https://api.skydropx.com/v1/labels?page%5Bnumber%5D=1&page%5Bsize%5D=20”, “first”: “https://api.skydropx.com/v1/labels?page%5Bnumber%5D=1&page%5Bsize%5D=20”, “prev”: null, “next”: “https://api.skydropx.com/v1/labels?page%5Bnumber%5D=2&page%5Bsize%5D=20”, “last”: “https://api.skydropx.com/v1/labels?page%5Bnumber%5D=13&page%5Bsize%5D=20” } }
- La respuesta será:
curl “https://api.skydropx.com/v1/labels” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json”
Cuando quieras obtener una etiqueta específica, tendrás que usar la solicitud HTTP GET https://api.skydropx.com/v1/labels/ID con el identificador de la etiqueta a recibir ID.
El código que se debe utilizar es:
curl “GET https://api.skydropx.com/v1/labels/<ID>” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json”
La respuesta que se recibirá de la Application Programming Interface key de Skydropx es:
{ “data”: { “id”: “2”, “type”: “labels”, “attributes”: { “created_at”: “2018-07-18T16:05:05.370-05:00”, “updated_at”: “2018-07-18T16:05:05.370-05:00”, “status”: null, “tracking_number”: “XXXXXXXXXX”, “tracking_status”: null, “label_url”: “label-url.pdf”, “tracking_url_provider”: “https://www.fedex.com/apps/fedextrack/?action=track&trackingnumber=XXXXXXXXXX”, “rate_id”: 3 } } }
Cuando tengas que crear una etiqueta, es necesario usar la HTTP Solicitud POST https://api.skydropx.com/v1/labels. El código es:
curl “https://api.skydropx.com/v1/labels” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json” \ -d ‘{ “rate_id”: 10834, “label_format”: “pdf” }’
La respuesta que recibirás es:
{ “data”: { “id”: “414”, “type”: “labels”, “attributes”: { “created_at”: “2018-09-04T16:32:49.190-05:00”, “updated_at”: “2018-09-04T16:32:49.190-05:00”, “status”: null, “tracking_number”: “XXXXXXXXXX”, “tracking_status”: null, “label_url”: “label-url.pdf”, “tracking_url_provider”: “https://www.grupocarssa.com/new/XXXXXXXXXX”, “rate_id”: 11931 } } }
Cancelar solicitud de la Etiqueta
Es posible cancelar la etiqueta por medio de un punto final. Para ello, es necesario usar la solicitud HTTP POST https://api.skydropx.com/v1/cancel_label_requests. Mira un ejemplo de una creación para cancelar la solicitud de una etiqueta por medio de la API de Skydropx:
La respuesta que vas a recibir cuando hayas ingresados los códigos anteriores es:
Cuando quieras obtener todo de la opción Cancelar solicitud de etiqueta, tendrás que trabajar con la solicitud HTTP GET https://api.skydropx.com/v1/cancel_label_requests, cuyos parámetros de consulta son:
Los códigos a ingresar son los siguientes:
curl “https://api.skydropx.com/v1/cancel_label_requests” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json” \ -d ‘{ “tracking_number”: XXXXXXXXXX, “reason”: “Datos de dirección erróneos.” }’
La respuesta de la API de Skydropx es:
{ “data”: { “id”: “18”, “type”: “cancel_requests”, “attributes”: { “status”: “reviewing”, “reason”: “Datos de dirección erróneos.”, “created_at”: “2018-09-05T09:24:35.453-05:00”, “updated_at”: “2018-09-05T09:24:35.453-05:00” } } }
Cuando quieras obtener todo de la opción Cancelar solicitud de etiqueta, tendrás que trabajar con la solicitud HTTP GET https://api.skydropx.com/v1/cancel_label_requests, cuyos parámetros de consulta son:
- status String, donde Status status=»reviewing|rejected|approved».
- date String, Date date=»2020-11-13″.
Los códigos a ingresar son los siguientes:
curl “https://api.skydropx.com/v1/cancel_request?status=reviewing|rejected” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json”
La respuesta de la API de Skydropx es:
{ “data”: { “cancel_requests_pending”: 2, “cancel_requests”: [ { “id”: 21, “status”: “rejected”, “reason”: “Paquetería o servicio erróneo.”, “messages”: “no valido”, “shipment_id”: 235, “created_at”: “2020-11-13T12:38:34.412-06:00”, “updated_at”: “2020-11-13T17:10:12.673-06:00”, “user_id”: 1, “headquarter_id”: 1 }, { “id”: 20, “status”: “reviewing”, “reason”: “Datos de dirección erróneos.”, “messages”: null, “shipment_id”: 236, “created_at”: “2020-11-13T12:38:28.113-06:00”, “updated_at”: “2020-11-13T12:38:28.113-06:00”, “user_id”: 1, “headquarter_id”: 1 } ] } }
Si quieres agregar etiquetas a granel, vas a tener que trabajar con la solicitud HTTP GET https://api.skydropx.com/v1/cancel_label_requests. Los parámetros de URL son los siguientes:
- emails String: son los correos electrónicos de los usuarios, los cuales tienen que estar separados por comas.
- label_ids String: son los identificadores de las etiquetas, también tienen que ser separados por comas.
El código con el que tienes que trabajar es:
curl “https://api.skydropx.com/v1/[email protected],[email protected]&label_ids=1,2,3” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json”
Agrega las categorías de Notas de Consignación y Carta de Porte
Para cumplir con el Servicio de Administración Tributaria de México es necesario agregar las distintas categorías de productos indicadas por el organismo nacional. Gracias a esta información es posible cumplir con todas las exigencias para las cartas de porte.
La solicitud HTTP para trabajar es GET https://api.skydropx.com/v1/consignment_notes/categories
Subcategorías de la Carta de Porte
El siguiente paso es agregar las subcategorías de la Carta de Porte exigidas por el SAT. La solicitud HTTP para trabajar es GET https://api.skydropx.com/v1/consignment_notes/categories/CATEGORY_ID/subcategories y los códigos son:
curl “https://api.skydropx.com/v1/consignment_notes/categories” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json”
La API devolverá la siguiente respuesta:
{ “data”: [ { “id”: “49”, “type”: “subcategory”, “attributes”: { “name”: “Materiales de papel” } }, { “id”: “50”, “type”: “subcategory”, “attributes”: { “name”: “Productos de papel” } }, { “id”: “51”, “type”: “subcategory”, “attributes”: { “name”: “Papel para uso industrial” } } ] }
Clases de notas de consignación
A continuación, tendrás que un índice con las clases de los productos establecidos por el Servicio de Administración Tributaria y necesario para trabajar con el filtro para cada subcategoría de la Carta de Porte.
El atributo necesario para trabajar con el código será el que surja de la solicitud HTTP GET. Luego, tendrás que ingresar esta estructura:
curl “https://api.skydropx.com/v1/consignment_notes/subcategories/<SUBCATEGORY_ID>/classes” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json”
La respuesta de la API:
{ “data”: [ { “id”: “641”, “type”: “class”, “attributes”: { “name”: “Papel de imprenta y papel de escribir”, “code”: “14111500” } }, { “id”: “642”, “type”: “class”, “attributes”: { “name”: “Papel fantasía”, “code”: “14111600” } }, { “id”: “643”, “type”: “class”, “attributes”: { “name”: “Productos de papel para uso personal”, “code”: “14111700” } }, { “id”: “644”, “type”: “class”, “attributes”: { “name”: “Papeles de uso comercial”, “code”: “14111800” } } ] }
Índice de embalajes de la Carta de Porte
Lo que debes hacer ahora es agregar el índice establecido por normativas del SAT para cumplir con las exigencias sobre la Carta de Porte. El atributo de solicitud HTTP es GET los códigos son:
curl “https://api.skydropx.com/v1/consignment_notes/packagings” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json”
Respuesta de la Application Programming Interface key de Skydropx es:
[ { “id”: “1”, “type”: “packagings”, “attributes”: { “name”: “Bidones (Tambores) de Plástico de tapa no desmontable”, “code”: “1H1” } }, { “id”: “2”, “type”: “packagings”, “attributes”: { “name”: “Bidones (Tambores) de Plástico de tapa desmontable”, “code”: “1H2” } }, { “id”: “3”, “type”: “packagings”, “attributes”: { “name”: “Cajas de Aluminio”, “code”: “4B” } } ]
Errores con los que trabaja la API
Conoce los errores con los que trabaja la API de Skydropx:
Nombre del Error | Referencia |
400 – Solicitud incorrecta | Su solicitud no es válida. |
401 – No autorizado | Su clave API es incorrecta. |
404 – No encontrado | No se pudo encontrar el recurso especificado. |
500 – Error interno del servidor | Tuvimos un problema con nuestro servidor. Vuelva a intentarlo más tarde. |
Autenticación de radar API
Para poder acceder a los puntos finales de la API de Skydropx es necesario que envíes un mail a [email protected].El encabezado que deberás usar en las solicitudes API del servidor tiene que ser el siguiente: Authorization: Token token=YOUR_RADAR_API_KEY.
Cuando necesites autorizar, tendrás que trabajar con este código:
# With shell, you can just pass the correct header with each request. \ curl “https://radar-api.skydropx.com/v1/shipments” \ -H “Authorization: Token token=YOUR_API_KEY” \ -H “Content-Type: application/json”
Envíos de radar API
La solicitud HTTP que se necesita es GET. Los parámetros son:
statusString (Cadena de estado):
Código:
Respuesta:
Radar API para obtener un beneficio específico
El punto final para recuperar un envío trabaja con Solicitud HTTP GET, siendo el parámetro de recuperación ID para determinar el envío que se desea recuperar.
La estructura del código es:
- pageInteger, default is 1 – Número de página.
- per_pageInteger, default is 25 – Cantidad de registros por página.
- orderString, el valor predeterminado es descendente
- ascending ordenar envíos por created_at.
statusString (Cadena de estado):
- CREATED: Se crea el envío, pero el transportista aún no lo ha recogido.
- PICKED_UP: El envío está fuera para la entrega.
- IN_TRANSIT: El envío está fuera para la entrega.
- LAST_MILE El envío está fuera para la entrega.
- DELIVERED El envío fue entregado con éxito.
- EXCEPTION El envío tiene alguna excepción, es probable que presente algunos inconvenientes como devolución o no entrega.
Código:
curl “https://radar-api.skydropx.com/v1/shipments” \ -H “Authorization: Token token=YOUR_RADAR_API_KEY” \ -H “Content-Type: application/json”
Respuesta:
{ “shipments”: [ { “id”: “GXZahxtx2Pyu3Zs111111BBr”, “type”: “Shipment”, “tracking_number”: “1234”, “processed”: true, “status”: “IN_TRANSIT”, “carrier”: “FEDEX”, “carrier_service”: “FEDEX_EXPRESS_SERVICE”, “tracking_url”: “https://www.fedex.com/apps/fedextrack/?action=track&trackingnumber=1234”, “addresses”: { “address_from”: { “name”: “SKYDROPX”, “street1”: “Padre Raymundo Jardon 925”, “street2”: “Centro”, “zipcode”: “64000”, “city”: “Monterrey”, “province”: “NL”, “country”: “MX”, “phone”: “+525555555555”, “email”: “[email protected]” }, “address_to”: { “name”: “SKYDROPX”, “street1”: “Padre Raymundo Jardon 925”, “street2”: “Centro”, “zipcode”: “64000”, “city”: “Monterrey”, “province”: “NL”, “country”: “MX”, “phone”: “+525555555555”, “email”: “[email protected]” } }, “created_at”: “2020-03-11T16:49:23-06:00” }, { “id”: “GXZahxtx2Pyu3Zs111111BBr”, “type”: “Shipment”, “tracking_number”: “4321”, “processed”: true, “status”: “IN_TRANSIT”, “carrier”: “FEDEX”, “carrier_service”: “FEDEX_EXPRESS_SERVICE”, “tracking_url”: “https://www.fedex.com/apps/fedextrack/?action=track&trackingnumber=4321”, “addresses”: { “address_from”: { “name”: “SKYDROPX”, “street1”: “Padre Raymundo Jardon 925”, “street2”: “Centro”, “zipcode”: “64000”, “city”: “Monterrey”, “province”: “NL”, “country”: “MX”, “phone”: “+525555555555”, “email”: “[email protected]” }, “address_to”: { “name”: “SKYDROPX”, “street1”: “Padre Raymundo Jardon 925”, “street2”: “Centro”, “zipcode”: “64000”, “city”: “Monterrey”, “province”: “NL”, “country”: “MX”, “phone”: “+525555555555”, “email”: “[email protected]” } }, “created_at”: “2020-03-11T16:49:23-06:00” } ], “meta”: { “current_page”: “1”, “next_page”: null, “prev_page”: null, “total_count”: “2”, “total_pages”: “1” } }
Radar API para obtener un beneficio específico
El punto final para recuperar un envío trabaja con Solicitud HTTP GET, siendo el parámetro de recuperación ID para determinar el envío que se desea recuperar.
La estructura del código es:
curl “https://radar-api.skydropx.com/v1/shipments/<ID>” \ -H “Authorization: Token token=YOUR_RADAR_API_KEY” \ -H “Content-Type: application/json”
Respuesta de la API Key de Skydropx:
{ “shipment”: { “id”: “GXZahxtx2Pyu3Zs111111BBr”, “type”: “Shipment”, “tracking_number”: “1234”, “processed”: true, “status”: “IN_TRANSIT”, “carrier”: “FEDEX”, “carrier_service”: “FEDEX_EXPRESS_SERVICE”, “tracking_url”: “https://www.fedex.com/apps/fedextrack/?action=track&trackingnumber=1234”, “addresses”: { “address_from”: { “name”: “SKYDROPX”, “street1”: “Padre Raymundo Jardon 925”, “street2”: “Centro”, “zipcode”: “64000”, “city”: “Monterrey”, “province”: “NL”, “country”: “MX”, “phone”: “+525555555555”, “email”: “[email protected]” }, “address_to”: { “name”: “SKYDROPX”, “street1”: “Padre Raymundo Jardon 925”, “street2”: “Centro”, “zipcode”: “64000”, “city”: “Monterrey”, “province”: “NL”, “country”: “MX”, “phone”: “+525555555555”, “email”: “[email protected]” }
Radar API para crear un envío
La solicitud HTTP necesaria es POST y los parámetros son:
- carrier required – Transportista de envío.
- tracking_number required – Número de seguimiento del envío.
- carrier_service – Servicio de transporte marítimo.
- address_to[nombre] required – Nombre de quien recibirá el envío.
- address_to[phone] required – Teléfono móvil de quien recibirá el envío.
- address_to[email] required – Email de quien recibirá el envío.
- address_to[street1] – Dirección de entrega.
- address_to[street2] – Dirección de entrega.
- address_to[zip_code] – Código postal de entrega.
- address_to[city] – Ciudad de entrega.
- address_to[province] – Estado de entrega.
- address_to[county] – País de entrega.
- address_from[street1] – Dirección de Envío.
- address_from[street2] – Dirección de Envío.
- address_from[zip_code] – Código postal de envío.
- address_from[city] – Ciudad de envío.
- address_from[province] – Estado de envío.
- address_from[county] – País de envío.
Los códigos usados son:
curl “https://radar-api.skydropx.com/v1/shipments/<ID>” \ -H “Authorization: Token token=YOUR_RADAR_API_KEY” \ -H “Content-Type: application/json” \ -d ‘{ “shipment”: { “carrier”: “FEDEX”, “tracking_number”: “123456789”, “carrier_service”: “FEDEX_EXPRESS_SAVER”, “address_to”: { “name”: “SKYDROPX”, “street1”: “Padre Raymundo Jardon 925”, “street2”: “Centro”, “zipcode”: “64000”, “city”: “Monterrey”, “province”: “Nuevo Leon”, “country”: “Mexico”, “phone”: “+525544383888”, “email”: “[email protected]” }, “address_from”: { “province”: “Jalisco”, “city”: “Guadalajara”, “zip”: “44100”, “country”: “MX”, “street1″: ” Av. Lázaro Cárdenas #234″, “street2”: “Americana” }}}’
API Radar de Skydropx responderá:
{ "shipment": { "id": "GXZahxtx2Pyu3Zs111111BBr", "type": "Shipment", "tracking_number": "1234", "processed": true, "status": "IN_TRANSIT", "carrier": "FEDEX", "carrier_service": "FEDEX_EXPRESS_SERVICE", "tracking_url": "https://www.fedex.com/apps/fedextrack/?action=track&trackingnumber=1234", "addresses": { "address_from": { "name": "SKYDROPX", "street1": "Padre Raymundo Jardon 925", "street2": "Centro", "zipcode": "64000", "city": "Monterrey", "province": "NL", "country": "MX", "phone": "+525555555555", "email": "[email protected]" }, "address_to": { "name": "SKYDROPX", "street1": "Padre Raymundo Jardon 925", "street2": "Centro", "zipcode": "64000", "city": "Monterrey", "province": "NL", "country": "MX", "phone": "+525555555555", "email": "[email protected]" } }, "created_at": "2020-03-11T16:49:23-06:00" } }
Seguimientos de envíos por API radar
Con este punto podrás conseguir la devolución de un seguimiento de envío. La solicitud HTTP utilizada es POST.
Los códigos de la API Radar de Skydropx son:
curl “POST https://radar-api.skydropx.com/v1/tracking” \ -H “Authorization: Token token=YOUR_RADAR_API_KEY” \ -H “Content-Type: application/json” \ -d ‘{ “tracking_numbers”: [{ “carrier”: “DHL”, “tracking_number”: “11111111” }, { “carrier”: “FEDEX”, “tracking_number”: “987654321” }]}’
La respuesta que obtendrás de la Application Programming Interface key Radar es:
{ “data”: { “type”: “tracking”, “trackings”: [ { “id”: “GXZahxtx2Puu3ZsAAAAAABBr”, “type”: “Shipment”, “tracking_number”: “11111111”, “processed”: true, “status”: “IN_TRANSIT”, “events”: [ { “status”: “PICKED_UP”, “date”: “2020-02-20T17:54:39-06:00”, “description”: “Package received after cutoff”, “location”: “Monterrey, NL” } ], “carrier”: “DHL”, “carrier_service”: “EXPRESS_SERVICE”, “created_at”: “2020-03-11T16:49:23-06:00” }, { “id”: “GXZahxtx2Pyu3Zs111111BBr”, “type”: “Shipment”, “tracking_number”: “987654321”, “processed”: true, “status”: “IN_TRANSIT”, “events”: [ { “status”: “PICKED_UP”, “date”: “2020-02-20T17:54:39-06:00”, “description”: “Package received after FedEx cutoff”, “location”: “Monterrey, NL” }, { “status”: “PICKED_UP”, “date”: “2020-03-09T17:55:00-06:00”, “description”: “EXPRESS”, “location”: “Mexico, DF” } ], “carrier”: “FEDEX”, “carrier_service”: “FEDEX_EXPRESS_SERVICE”, “created_at”: “2020-03-11T16:49:23-06:00” } ] } }
Envío de claves incorrectas de envío
En este caso, la solicitud para la API radar HTTP que tienes que usar es POST. Luego, el código para trabajar que tendrás que usar es:
curl “POST https://radar-api.skydropx.com/v1/tracking” \ -H “Authorization: Token token=YOUR_RADAR_API_KEY” \ -H “Content-Type: application/json” \ -d ‘{ “tracking_numbers”: [{ “carrier”: “DHL”, “tracking_number”: “11111111” }, { “carrier”: “FEDEX”, “tracking_number”: “987654321” }]}’
La respuesta de la API Radar de Skydropx para puntos finales es:
{ “data”: { “type”: “tracking”, “trackings”: [ { “carrier”: “DHL”, “tracking_number”: null, “error”: “Required key is missing” }, { “id”: “GXZahxtx2Pyu3Zs111111BBr”, “type”: “Shipment”, “tracking_number”: “987654321”, “processed”: true, “status”: “IN_TRANSIT”, “events”: [ { “status”: “PICKED_UP”, “date”: “2020-02-20T17:54:39-06:00”, “description”: “Package received after FedEx cutoff”, “location”: “Monterrey, NL” } ], “carrier”: “FEDEX”, “carrier_service”: “FEDEX_EXPRESS_SERVICE”, “created_at”: “2020-03-11T16:49:23-06:00” } ] } }
Errores de seguimiento
Recuerda que, puedes rastrear hasta diez pedidos al mismo tiempo por solicitud y varios transportistas. En caso de que te excedas del número de seguimiento permitido, la respuesta del servidor será:
{ “error”: “Tracking numbers limit exceeded” }
Si el Radar Tracking API detecta que la solicitad es incorrecta o el cuerpo no es el esperado, entonces la respuesta será:
{ "error": "Tracking numbers limit exceeded" }
Si el Radar Tracking API detecta que la solicitad es incorrecta o el cuerpo no es el esperado, entonces la respuesta será:
{ "error": "Request error" }
Webhook de radar
Es necesario crear un punto final HTTP POST, el cual pueda recibir un cuerpo JSON y responda un ESTADO HTTP 200 (OK) o 201 (CREADO). Para ello, la solicitud para un ejemplo con JSON es { «type»: «shipment», «action»: «SHIPMENT_UPDATED», «timestamp»: «2023-03-25T16:00:00Z», «data»: { «id»: «s5QaVWkPNheS6rW4bW9d2gfV», «carrier»: «REDPACK», «status»: «DELIVERED», «tracking_number»: «070634535» } }.
El atributo id (datos) es el mismo que se puede usar en https://docs.skydropx.com/#radar-get-a-specific-shipment endpoint. Por otro lado, los valores posibles para el atributo de estado (datos) son: CREADO RECOGIDO_EN_TRÁNSITO LAST_MILE DELIVERY_ATTEMPT ENTREGADO CANCELADO EXCEPCIÓN PENDIENTE con un formato ISO 8601.
😎 ¿Cómo solicitar la API Key de Skydropx?
Para obtener la API Key de Skydropx es necesario que te comuniques con nuestro soporte de desarrolladores. Esto lo podrás hacer enviando un mail a la dirección de correo electrónico [email protected] o bien, en caso de solicitar la API Radar para puntos finales, al correo [email protected] para obtener mensajerías o paqueterías de México.