Saltar al contenido principal
La API Cliente de la Plataforma UniUni te permite crear envíos, comprar etiquetas, gestionar lotes, rastrear entregas y recibir notificaciones por webhook de forma programática.

Entornos

Proporcionamos entornos sandbox y producción. Prueba tu integración en sandbox primero antes de pasar a producción.
EntornoURL base
Sandboxhttps://api-sandbox.ship.uniuni.com/client/
Producciónhttps://api.ship.uniuni.com/prod/client/
Todas las solicitudes son solo HTTPS.

Autenticación

Cada solicitud debe incluir tu token de acceso API en el encabezado Authorization:
Authorization: Bearer <TU_TOKEN_DE_ACCESO>
Consulta Crear token de acceso para instrucciones detalladas sobre cómo generar y gestionar tus tokens.

Formato de solicitud y respuesta

  • Todas las solicitudes y respuestas usan JSON.
  • Usa Content-Type: application/json; charset=utf-8 para cuerpos de solicitudes POST.
  • Todas las claves de objetos están en camelCase.
  • El código HTTP de respuesta siempre es 200 con un payload válido. Los payloads inválidos devuelven HTTP 422.
Cada respuesta sigue esta estructura:
{
  "message": "Shipment created successfully",
  "code": 0,
  "data": { ... }
}
CampoTipoDescripción
messagestringInformación adicional sobre el estado de la solicitud
codeintegerCódigo de estado (0 indica éxito)
dataobject | nullPayload de respuesta. Devuelve null si code no es 0

Paginación

Los endpoints de colección soportan paginación mediante parámetros de consulta:
ParámetroPredeterminadoMáximoDescripción
page1Número de página
pageSize10500Resultados por página

Pruebas en sandbox

Puedes probar tu integración libremente usando la URL base de sandbox. No se incurrirá en cargos. Los datos del sandbox están aislados y se pueden restablecer sin afectar la producción. Para agregar créditos de prueba en sandbox, usa el número de tarjeta de crédito de prueba 4242 4242 4242 4242 con cualquier fecha de vencimiento y CVC.

Manejo de errores

422 Contenido no procesable

Se devuelve cuando faltan parámetros requeridos o tienen el tipo incorrecto:
{
  "message": "Invalid payload [...]",
  "errorCode": "PayloadValidationError",
  "statusCode": 422,
  "meta": {
    "issues": [
      {
        "code": "invalid_type",
        "expected": "number",
        "received": "nan",
        "path": ["page"],
        "message": "Expected number, received nan"
      }
    ],
    "name": "ZodError"
  }
}

Errores de autenticación

{
  "message": "Invalid or revoked access token",
  "code": 1009,
  "data": null
}
{
  "message": "Missing access token",
  "code": 1009,
  "data": null
}

Códigos de error

CódigoRazón
0Éxito
1002Solicitud inválida
1006Error de base de datos
1009Error general
1014Recurso no encontrado (etiquetas/lotes)
1031Búsqueda de rastreo fallida