Referencia de la API

Consultar pedido

El pedido completo de tu comercio por su número de seguimiento, con la evidencia de entrega.

get
/integrations/public-api/packages/{following_number}https://api.beartrackapp.com/api/v1

Devuelve el identificador del pedido y el contenido de su QR, tu order_id, el estado con su historial, el destinatario, la dirección y, una vez entregado, la evidencia: fecha, quién recibió, fotos y ubicación.

Autenticación

Envía estas cabeceras en cada petición.

Authorizationstringrequerido

Token de acceso: Bearer seguido del access_token que devuelve POST /integrations/oauth/token.

El token se obtiene canjeando tu client_id y tu client_secret en POST /integrations/oauth/token, y dura una hora. Este endpoint exige el scope packages:read. Cómo crear las credenciales y pedir el token: Autenticación.

Parámetros de ruta

following_numberintegerrequerido

Número de seguimiento del pedido: el following_number que devuelve Crear pedido.

Ejemplo

curl -X GET 'https://api.beartrackapp.com/api/v1/integrations/public-api/packages/268012' \
  -H 'Authorization: Bearer bta_tu-token'

Respuestas

200OK

Pedido encontrado.

Ejemplo
{
  "package_id": "66ed7ae7adb0a4095c126feb",
  "following_number": 268012,
  "order_id": "123456",
  "qr_payload": "{\"id\":\"66ed7ae7adb0a4095c126feb\"}",
  "status": {
    "code": 4,
    "name": "delivered"
  },
  "status_history": [
    {
      "code": 0,
      "name": "created",
      "at": "2026-10-20T12:05:37.056Z"
    },
    {
      "code": 100,
      "name": "label_downloaded",
      "at": "2026-10-20T12:31:02.118Z"
    },
    {
      "code": 1,
      "name": "collected",
      "at": "2026-10-20T14:10:45.902Z"
    },
    {
      "code": 2,
      "name": "at_warehouse",
      "at": "2026-10-20T15:02:19.377Z"
    },
    {
      "code": 3,
      "name": "in_transit",
      "at": "2026-10-20T16:20:08.640Z"
    },
    {
      "code": 4,
      "name": "delivered",
      "at": "2026-10-20T18:42:11.056Z"
    }
  ],
  "created_at": "2026-10-20T12:05:37.059Z",
  "updated_at": "2026-10-20T18:42:11.434Z",
  "last_status_change": "2026-10-20T18:42:11.056Z",
  "receiver": {
    "name": "MARÍA",
    "last_name": "MUÑOZ",
    "phone": "+56942405123"
  },
  "shipping_address": {
    "address_line": "Avenida Siempre Viva 742",
    "street_name": "Avenida Siempre Viva",
    "street_number": "742",
    "comment": "Departamento 602, dejar en conserjería",
    "municipality": "Ñuñoa",
    "city": "Región Metropolitana",
    "country": "Chile"
  },
  "delivery": {
    "delivered_at": "2026-10-20T18:42:11.056Z",
    "received_by": {
      "name": "María",
      "last_name": "Muñoz"
    },
    "photos": [
      "https://f005.backblazeb2.com/file/ots-prd/…/entrega.jpg"
    ],
    "location": {
      "latitude": -33.4569,
      "longitude": -70.5978
    }
  }
}
400Bad Request
  • Petición incompleta o inválida

    invalid_request

    Falta un dato obligatorio —la cabecera Authorization, grant_type en el token o un campo del pedido como order_id— o el cuerpo no pasó la validación. error_description dice qué falló.

401Unauthorized
  • Petición incompleta o inválida

    invalid_request

    Falta un dato obligatorio —la cabecera Authorization, grant_type en el token o un campo del pedido como order_id— o el cuerpo no pasó la validación. error_description dice qué falló.

  • Token inválido o vencido

    invalid_token

    El token no existe, venció (dura una hora) o la credencial se rotó o revocó después de emitirlo.

403Forbidden
  • Scope insuficiente

    insufficient_scope

    El token no tiene el scope que exige el endpoint: packages:write para crear y cancelar, packages:read para consultar.

404Not Found
  • Pedido no encontrado

    not_found

    No hay un pedido con ese número de seguimiento en tu comercio. Un pedido de otro comercio responde igual que uno inexistente.

429Too Many Requests
  • Demasiadas peticiones

    too_many_requests

    Superaste el límite de tu credencial, por minuto: 10 canjes de token, 120 pedidos, 300 consultas o 60 cancelaciones. Cada límite es independiente.

503Service Unavailable
  • Servicio no disponible

    temporarily_unavailable

    Beartrack no pudo procesar la petición en este momento.

Notas

  • Solo ves pedidos de tu comercio. Uno que no existe y uno de otro comercio responden igual: 404 not_found.
  • status.code es el estado (ver Estados del envío) y status.name su nombre estable. El 100 aparece como label_downloaded: la etiqueta se descargó desde el portal.
  • delivery es null hasta que el pedido se entrega. location es la ubicación que registró la app del repartidor al confirmar la entrega; si la entrega se marcó por otra vía, viene null. No capturamos firma.
  • Las fotos son URLs públicas sin vencimiento: cualquiera que tenga el enlace puede verlas. No las publiques; si las necesitas a largo plazo, guárdalas en tu sistema.
  • El límite es de 300 consultas por minuto por credencial, separado del de creación.