API de pedidos2026-11Prévia
Remessas
Um pacote a caminho do seu cliente. O rastreio volta para a loja de onde o pedido veio, então o seu cliente recebe notícias de você, não de nós.
order.shipped é disparado quando um envio é criado, com o rastreio.
O objeto Shipment
idstring- Começa com shp_.
order, fulfillment_orderstring- O que ele leva.
lanestring- saver ou fast.
carrier, tracking_number, tracking_urlstring- Rastreio, pronto para o seu cliente.
weight_ginteger- Quanto o pacote pesou quando o embalamos.
shipping_chargedmoney- Frete, taxa de manuseio e imposto do pacote pesado, em CN¥: o que o seu saldo pagou.
pushed_to_channelboolean- Se a loja de onde o pedido veio tem o rastreio. A Shopify então o envia por e-mail ao seu cliente.
statusstring- in_transit, out_for_delivery, delivered, ou exception (retido, devolvido, perdido).
shipped_at, delivered_atstring|null- Quando saiu daqui, e quando a transportadora diz que chegou.
{
"id": "shp_5r8w",
"order": "ord_3n7q",
"fulfillment_order": "fo_7k2m",
"lane": "saver",
"carrier": "YunExpress",
"tracking_number": "YT2630812345678",
"tracking_url": "https://t.17track.net/en#nums=YT2630812345678",
"weight_g": 176,
"shipping_charged": { "amount": "134.52", "currency": "CNY" },
"pushed_to_channel": true,
"status": "in_transit",
"shipped_at": "2026-11-03T06:00:00Z",
"delivered_at": null
}Listar envios
GET/v1/shipments
Mais recentes primeiro. Filtre por status para achar os que precisam de você.
Escopoorders:read
Parâmetros de consulta
statusstring- Opcional.
orderstring- Opcional. Um id de pedido.
shipped_sincestring- Opcional. Um horário.
limit, cursor- Pagination
curl "https://www.ninjabuy.com/api/v1/shipments?status=exception" \
-H "Authorization: Bearer $NINJABUY_API_KEY" \
-H "NinjaBuy-Version: 2026-11"HTTP/2 200 OK
{
"data": [
{
"id": "shp_5q1d",
"order": "ord_3m2b",
"tracking_number": "YT2630811190042",
"status": "exception"
}
],
"has_more": false,
"cursor": null
}Obter um envio
GET/v1/shipments/{id}
Um pacote, com o rastreio.
Escopoorders:read
Parâmetros de caminho
idstringobrigatório- O id do envio.
Erros
| Status | Tipo | Quando |
|---|---|---|
| 404 | not-found | Esse envio não existe nesta conta. |
curl "https://www.ninjabuy.com/api/v1/shipments/shp_5r8w" \
-H "Authorization: Bearer $NINJABUY_API_KEY" \
-H "NinjaBuy-Version: 2026-11"HTTP/2 200 OK
{
"id": "shp_5r8w",
"order": "ord_3n7q",
"fulfillment_order": "fo_7k2m",
"lane": "saver",
"carrier": "YunExpress",
"tracking_number": "YT2630812345678",
"tracking_url": "https://t.17track.net/en#nums=YT2630812345678",
"weight_g": 176,
"shipping_charged": { "amount": "134.52", "currency": "CNY" },
"pushed_to_channel": true,
"status": "in_transit",
"shipped_at": "2026-11-03T06:00:00Z",
"delivered_at": null
}Obter eventos de rastreio
GET/v1/shipments/{id}/tracking
Os escaneamentos da transportadora, dos mais antigos aos mais recentes, em inglês.
Escopoorders:read
Parâmetros de caminho
idstringobrigatório- O id do envio.
Erros
| Status | Tipo | Quando |
|---|---|---|
| 404 | not-found | Esse envio não existe nesta conta. |
curl "https://www.ninjabuy.com/api/v1/shipments/shp_5r8w/tracking" \
-H "Authorization: Bearer $NINJABUY_API_KEY" \
-H "NinjaBuy-Version: 2026-11"HTTP/2 200 OK
{
"shipment": "shp_5r8w",
"status": "in_transit",
"events": [
{
"at": "2026-11-03T06:00:00Z",
"where": "Shenzhen, CN",
"status": "in_transit",
"description": "Left the NinjaBuy warehouse"
},
{
"at": "2026-11-05T22:10:00Z",
"where": "Shenzhen, CN",
"status": "in_transit",
"description": "Departed the origin country"
},
{
"at": "2026-11-09T19:40:00Z",
"where": "Los Angeles, US",
"status": "in_transit",
"description": "Arrived in the destination country"
}
]
}