URLs y Autenticación

Obtén tus credenciales de API

Todos los requests deben utilizar autenticación.

Existen actualmente dos métodos de autenticarse:

Método
Cuando usar
Ejemplos

En una integración exclusiva para una cuenta.

Un desarrollo custom. Una tienda propia.

Cuando la integración será usada por múltiples cuentas de Zipnova Envíos independientes.

Marketplaces.

Sistemas de ecommerce. Productos SaaS multi cliente como gestores de ordenes, productos, etc. ERPs

Autenticación básica

Utiliza la autenticación básica HTTP usando un API token y API secret, generados en la cuenta a la que se quiere acceder.

Generación de credenciales para autenticación básica

Para generar tus credenciales debes ingresar a la cuenta de Zipnova que estás integrando y acceder a la sección Configuración > Integraciones > Gestionar credenciales y webhooks

Allí, podrás crear un nuevo token de cuenta, el cual consiste en un API Token y un API Secret.

Tus requests deberán utilizar autenticación básica de HTTP.

Usuario: API Token Contraseña: API Secret

Si la librería que estás usando no acepta que se le indique un usuario y contraseña de autenticación básica deberás contruir manualmente el header Authorization como se indica en esta guía.

Autenticación con access_token

Deberás enviar un Bearer token en cada request. Tendrás un access_token por cada cuenta de Zipnova que te autorice el acceso.

Para ver cómo obtener y refrescar los tokens, revisa la ayuda sobre la autenticación con Oauth2.

Headers obligatorios

Todas las respuestas de la API que devuelvan datos utilizarán JSON para estructurarlos.

En los requests POST o PUT, donde se debe enviar información, se debe utilizar JSON, con lo cual es necesario.

Para armar el request, es obligatorio incluir el siguiente header (además del de autenticación):

Accept: application/json

Y si se envían datos a Zipnova en el body, deberás incluir el header de Content-Type:

Content-Type: application/json

Armado de la URL de los endpoints

Todas las URLs tendrán el siguiente formato:

https://api.{dominio}/{version}/{endpoint}

Donde:

  • dominio

    • 🇦🇷 Argentina: zipnova.com.ar

    • 🇨🇱 Chile: zipnova.cl

    • 🇲🇽 México: zipnova.com.mx

  • version

    • Actualmente v2 es la única opción.

  • endpoint

    • Es el que indica la documentación. Por ejemplo: shipments

Ejemplo de la URL: https://api.zipnova.com.ar/v2/shipments

Ejemplo de request CURL

curl --request POST \
  --url https://api.zipnova.com.ar/v2/shipments/quote \
  --header 'Accept: application/json' \
  --header 'Authorization: Basic YWRtaWXXXXXXXXXXFvIQ==' \
  --header 'Content-Type: application/json' \
  --data '{
	"account_id": "3355",
	"origin_id": "9323",
	"declared_value": 9015,
	"items": [
		{
			"sku": "103964928",
			"weight": 99,
			"height": 10,
			"width": 5,
			"length": 10,
			"description": "Capsulas The Coffee Store comp. Nespresso Mix",
			"classification_id": 1
		},
		{
			"sku": "103964928",
			"weight": 500,
			"height": 5,
			"width": 10,
			"length": 10,
			"description": "Capsulas The Coffee Store comp. Nespresso Mix",
			"classification_id": 1
		}
	],
	"destination": {
		"city": "cordoba",
		"state": "cordoba",
		"zipcode": "5000"
	}
}'

Última actualización