Requisição

Substitua as variáveis e use esta consulta:

query {
    order(id: PK_ORDER) {
        status
        eta
        currentDriverPosition {
            lat
            lng
            currentWaypointIndex
        }
        packages {
            pickupWaypoint {
                status
                index
                eta
            }
            waypoint {
                status
                index
                eta
            }
        }
        pricing {
            totalCm
        }
    }
}

Argumentos

📘

Identificador do pedido

O id é obtido na resposta da criação do pedido no campo orders.pk.

NomeTipoDescriçãoExemplo
idIntIdentificador do pedido.47950616

Exemplo

query {
    order(id: 47981652) {
        status
        eta
        currentDriverPosition {
            lat
            lng
            currentWaypointIndex
        }
        packages {
            pickupWaypoint {
                status
                index
                eta
            }
            waypoint {
                status
                index
                eta
            }
        }
        pricing {
            totalCm
        }
    }
}

Resposta

Campos

NomeTipoDescrição
statusEnum OrderStatusStatus do pedido.
currentDriverPositionDriverPositionPosição do entregador.
packagesPackageInformações sobre os pontos de parada.

Enum OrderStatus

StatusDescriçãoQuando acontece?Status finalizador?
going_to_pickupAguardando alocação.Pedido criado e aguardando o processo de entrar em alocação.
going_to_deliverEm alocação.Procurando entregador para a corrida.
acceptedAceita.Entregador aceitou a corrida.
startedIniciada.Entregador concluiu o ponto de coleta.
finishedTerminada.Pacotes Entregues/Cancelados.S
cancelledWithChargeCancelada com cobrança.Pedido cancelado após um entregador ser alocado (independente do tempo).S
cancelledCancelada.Rota cancelada antes da alocação do entregador.S
droppedNão alocada.Rota não foi alocada dentro do tempo limite.S
droppedThenCancelledNão alocada e cancelada.Não foi alocada e foi cancelada.S
awaiting_completionAguardando finalização.Um pacote ainda está com o entregador e será entregue posteriormente.
mergedPedido agrupado.Quando dois pedidos são agrupados em um só (via interface)

DriverPosition

NomeTipoDescrição
latFloatLatitude da posição do entregador.
lngFloatLongitude da posição do entregador.
currentWaypointIndexIntÍndice do ponto que o entregador está cumprindo na rota.

Package

NomeTipoDescrição
pickupWaypointWaypointInformações sobre o ponto de coleta.
waypointWaypointInformações sobre o ponto de entrega.

Waypoint

NomeTipoDescrição
statusEnum WaypointStatusStatus do ponto de parada.
etaLongTempo estimado de chegada ao ponto.
indexIntÍndice da entrega na requisição.

Enum WaypointStatus

StatusDescriçãoStatus finalizador?
allocatingAguardando alocação de entregador.
going_to_pickupEntregador está indo coletar pacote.
picked_upPacote coletado.S
going_to_deliverEntregador está indo para o endereço de entrega.
deliverEntregador está no endereço de entrega.
deliveredPacote entregue.S
failedEntrega cancelada.S
waiting_slo

Exemplos

Sucesso

Pedido com um único ponto de entrega

{
   "data":{
      "order":{
         "status":"accepted",
         "eta":1708013398,
         "currentDriverPosition":{
            "lat":-19.8900984,
            "lng":-43.9567469,
            "currentWaypointIndex":0
         },
         "pricing":{
            "totalCm":"12.90"
         },
         "packages":[
            {
               "pickupWaypoint":{
                  "status":"going_to_pickup",
                  "index":0,
                  "eta":1708012748
               },
               "waypoint":{
                  "status":"going_to_deliver",
                  "index":1,
                  "eta":1708013484
               }
            }
         ]
      }
   }
}

Pedido com três pontos de entrega

{
    "data": {
        "order": {
            "status": "cancelled",
            "eta": 1711113187,
            "originalEta": 2322,
            "currentDriverPosition": null,
            "packages": [
                {
                    "pickupWaypoint": {
                        "status": "failed",
                        "index": 0,
                        "eta": 1711113866
                    },
                    "waypoint": {
                        "status": "failed",
                        "index": 1,
                        "eta": 1711115444
                    }
                },
                {
                    "pickupWaypoint": {
                        "status": "failed",
                        "index": 0,
                        "eta": 1711113866
                    },
                    "waypoint": {
                        "status": "failed",
                        "index": 2,
                        "eta": 1711117574
                    }
                },
                {
                    "pickupWaypoint": {
                        "status": "failed",
                        "index": 0,
                        "eta": 1711113866
                    },
                    "waypoint": {
                        "status": "failed",
                        "index": 3,
                        "eta": 1711118354
                    }
                }
            ],
            "pricing": {
                "totalCm": "0.00"
            }
        }
    }
}

Erros

Pedido não existe

{
   "data":{
      "order":null
   }
}