Productos · API pública

Integra tu operación con una API por cliente

Conecta tu ERP, tu e-commerce o la plataforma de tus clientes al TMS. Ellos crean paquetes por API y reciben cada evento de estatus con reintentos y traza por intento. Una capacidad que ofreces como tuya.

01 / api-keys

Una API key por cliente

Emites una llave por cada cliente tuyo y cada uno opera en su propio espacio, sin ver los datos de los demás. Revocas o rotas una llave cuando haga falta, sin afectar al resto.

  • Una llave por cliente, aislada
  • Prefijo visible y secreto hasheado
  • Rotación y revocación sin downtime
api · api keyspor cliente
api.trackerguy.lat
KeysRequestWebhooksQueueRetriesLogs

API keys

Llaves por cliente

en vivo
3 llaves emitidasNueva llave
  • TTienda Cumbretms_live_8f2a••••copiadaactiva
  • AAndes Markettms_live_3c77••••activa
  • PPampa Logísticatms_live_b19e••••revocada
02 / crear

Crea paquetes por API

Un POST con origen, destino y metadata crea la orden y devuelve el identificador y su guía. El mismo ciclo de vida que la consola, disparado desde el ERP o el e-commerce de tu cliente.

  • Origen, destino y metadata en un POST
  • Respuesta con id y número de guía
  • El paquete entra al mismo ciclo de vida
api · request201 created
POST/v1/packages
KeysRequestWebhooksQueueRetriesLogs

Crear paquete

201 created

en vivo

Request

{
  "customerId": "cus_8f2a",
  "origin": { "city": "CDMX" },
  "destination": { "city": "Guadalajara" },
  "metadata": { "orderId": "SO-10432" }
}

Response

201
{
  "id": "pkg_9c1d",
  "trackingNumber": "TMS-4471-2290",
  "status": "created"
}
03 / webhooks

Webhooks por estatus

Tu cliente se suscribe a los estatus que le importan y recibe el evento en su endpoint con el payload firmado. Envía solo lo que necesita, sin polling ni consultas constantes.

  • Suscripción por estatus
  • Payload firmado y versionado
  • Endpoint propio por cliente
api · webhookssuscripción por evento
api.trackerguy.lat
KeysRequestWebhooksQueueRetriesLogs

Suscripción

Eventos por estatus

en vivo
https://tiendacumbre.mx/webhooks/tms
  • package:status-created
  • package:status-assigned
  • package:status-in_transit
  • package:status-out_for_delivery
  • package:status-delivered
04 / workers

Workers en segundo plano

Colas BullMQ que procesan eventos y tareas asíncronas sin bloquear la operación ni las respuestas de la API. La entrega de webhooks ocurre fuera del request que la originó.

  • Procesamiento asíncrono en colas
  • La API responde sin esperar al webhook
  • Escalable por worker
api · queueen vivo
api.trackerguy.lat
KeysRequestWebhooksQueueRetriesLogs

Cola de despacho

BullMQ · webhook-dispatch

en vivo

12

waiting

4

active

1,284

completed

3

failed

Jobs por minutoprocesados
05 / reintentos

Reintentos con backoff

Si el endpoint del cliente falla, el worker reintenta a los 15s, 1m, 5m, 15m y 1h hasta el máximo configurado. Un pico de carga no se convierte en eventos perdidos.

  • Reintentos 15s · 1m · 5m · 15m · 1h
  • Máximo de intentos configurable
  • Cada intento re-agendado con backoff
api · retriesbackoff
api.trackerguy.lat
KeysRequestWebhooksQueueRetriesLogs

Intentos de entrega

webhook-dispatch · TMS-4471-2290

en vivo
  • Intento #1backoff 15s09:12:04falló
  • Intento #2backoff 1m09:13:04falló
  • Intento #3backoff 5m09:18:04falló
  • Intento #4backoff 15m09:33:04entregado
  • Intento #5backoff 1h10:33:04programado
06 / trazabilidad

Trazabilidad por intento

Cada intento guarda payload, respuesta, headers, duración y error, para diagnosticar cualquier entrega. Sabes qué se envió, qué contestó el endpoint y cuánto tardó.

  • Payload de envío y respuesta guardados
  • Headers, duración y error por intento
  • Diagnóstico de cualquier entrega
api · delivery logpor intento
api.trackerguy.lat
KeysRequestWebhooksQueueRetriesLogs

Detalle del intento

customer_webhook_delivery_attempt

en vivo

Intento

#4

Respuesta

200 ok

Duración

142 ms

Reintentos

3

Respuesta del endpoint

application/json
{
  "received": true,
  "trackingNumber": "TMS-4471-2290"
}

Para construir encima

Dale a tus clientes una API para crecer con ellos

Cada cliente tuyo obtiene su propia API key y webhooks, de modo que sus clientes crean paquetes por API y reciben cada cambio de estatus. Una capacidad que ofreces como tuya para cerrar cuentas más grandes.

API keys por clienteWebhooks firmadosColas BullMQReintentos con backoff

Eventos que tu cliente puede suscribir

  • package:status-createdPaquete registrado en la plataforma
  • package:status-assignedMensajero asignado a la orden
  • package:status-in_transitEl paquete salió a ruta
  • package:status-out_for_deliveryEntra a última milla
  • package:status-deliveredEntrega confirmada con evidencia
POST /v1/packages201 created
# API key que emites a tu cliente
curl -X POST https://api.trackerguy.lat/v1/packages \
  -H "Authorization: ApiKey $CLIENT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "customerId": "cus_8f2a",
    "origin": { "address": "Av. Reforma 222", "city": "CDMX" },
    "destination": { "address": "Av. Chapultepec 15", "city": "Guadalajara" },
    "metadata": { "orderId": "SO-10432" }
  }'
POST https://tu-dominio/webhooks/tms200 ok
// Evento entrante firmado
{
  "event": "package:status-delivered",
  "statusCode": "delivered",
  "changedAt": "2026-03-14T18:22:07.000Z",
  "package": { "id": "pkg_9c1d", "trackingNumber": "TMS-4471-2290" }
}