Histórico do pedido
Lista, em ordem cronológica, as mudanças de status, os eventos de pagamento e as remessas de um pedido.
Cada pedido guarda um registro do que aconteceu com ele. Use esse registro para auditar "quem moveu este pedido para cancelado e quando", para mostrar uma linha do tempo ao atendimento, ou para reconstruir o estado de um pedido em um momento passado. A linha do tempo reúne tudo em uma lista só, em ordem de data: criação, mudanças de status, mudanças de pagamento, eventos de pagamento e remessas.
O mesmo histórico de status também vem dentro de Consultar pedido, no bloco status_history.
/api/v1/admin/orders/{id}/timelineAdminLinha do tempo do pedido
Linha do tempo completa do pedido, em ordem cronológica. Exige view_orders ou manage_orders.
Path parameters
iduuidobrigatórioId do pedido.
Exemplo de requisição
bash
curl "$BASE_URL/api/v1/admin/orders/$ORDER_ID/timeline" \
-H "Authorization: Bearer $TOKEN"Resposta
200Linha do tempo
json
{
"order_id": "2b4bd680-b717-4295-a2be-8b5c6771a4d0",
"count": 4,
"events": [
{
"timestamp": "2026-10-11T20:14:40.706632Z",
"event_type": "created",
"description": "Order PEDIDO-20261011-0001-V1 created",
"metadata": { "order_number": "PEDIDO-20261011-0001-V1", "payment_method": "pagamento-na-entrega", "total": 169654 }
},
{
"timestamp": "2026-10-11T20:16:33.383642Z",
"event_type": "status_change",
"description": "order_status_changed",
"user_id": "d4613dde-ac7a-431c-9232-50d8cd6ad5fc",
"metadata": { "old_status": "pending", "new_status": "processing", "notes": "Pagamento confirmado" }
},
{
"timestamp": "2026-10-11T20:16:39.661262Z",
"event_type": "shipment_created",
"description": "Shipment created via Correios (tracking: BR123456789BR) with 1 item(s)",
"user_id": "d4613dde-ac7a-431c-9232-50d8cd6ad5fc",
"metadata": { "carrier": "Correios", "item_count": 1, "shipment_id": "45171534-2fbd-46ca-973a-132149a564da", "tracking_code": "BR123456789BR" }
},
{
"timestamp": "2026-10-11T20:16:39.661262Z",
"event_type": "shipment_updated",
"description": "Shipment shipped via Correios",
"metadata": { "shipment_id": "45171534-2fbd-46ca-973a-132149a564da", "status": "shipped" }
}
]
}Campos da resposta
order_iduuidId do pedido.
countintegerQuantidade de eventos.
eventsarrayEventos em ordem crescente de data.
events[].timestampstringQuando, RFC 3339 em UTC.
events[].event_typestringcreatedstatus_changepayment_status_changepaymentshipment_createdshipment_updatedTipo do evento.
status_change é mudança do status do pedido; payment_status_change é mudança do status do pagamento; payment é um dado de pagamento anexado ao pedido; shipment_created e shipment_updated vêm das remessas.events[].descriptionstringPara
status_change e payment_status_change é um código estável (order_status_changed, payment_status_changed), que o seu sistema pode traduzir. Nos demais tipos é uma frase em inglês, só para leitura humana: não faça if sobre ela.events[].user_iduuidUsuário que causou o evento. Ausente quando foi o sistema.
events[].metadataobjectDetalhes do evento. Em mudanças de status:
old_status, new_status (códigos longos), notes e reason. Em remessas: shipment_id, carrier, tracking_code, item_count, status.Erros
| Status | Quando | Corpo |
|---|---|---|
| 401 | Sem credenciais ou token expirado | {"error":"invalid or expired token"} |
| 403 | Sem o privilégio view_orders/manage_orders | {"error":"insufficient privileges","privilege_required_any":["manage_orders","view_orders"]} |
| 404 | O pedido não existe | {"error":"order not found"} |