Pular para o conteúdo principal
Para receber pedidos novos, chame o endpoint de polling a cada 30 segundos.
Precisa de eventos em tempo real? Use o webhook: a plataforma envia cada evento para a sua URL no momento em que ele acontece, sem fila para drenar, sem limite de 100 e sem intervalo de consulta. Uma integração robusta usa o webhook como canal principal e o polling como reconciliação.

Requisição

Resposta (200)

A fila de eventos

Eventos sem acknowledgment continuam voltando nas próximas chamadas até serem confirmados ou completarem 24 horas. O consumo é sempre o mesmo ciclo:
1

Polling

Chame o polling e processe os eventos recebidos.
2

Acknowledgment

Envie o acknowledgment de todos os eventos recebidos.
3

Próximo lote

Chame o polling de novo: os eventos confirmados saem da fila e vem o próximo lote.
Lote cheio = fila acumulada. Se a resposta vier com 100 eventos, há mais esperando. Envie o acknowledgment e chame o polling de novo sem esperar os 30 segundos, até receber menos de 100 eventos ou 204.
Sem acknowledgment, a sua integração recebe sempre os mesmos eventos, os mais antigos primeiro, e nunca chega aos novos.
O polling retorna eventos criados nas últimas 24 horas. Um evento sem acknowledgment que passe desse prazo deixa de ser retornado, então não deixe a fila acumular.
Uma chamada a cada 30 segundos por token. Acima disso a API responde 429 e pode bloquear o cliente temporariamente. A única exceção é drenar uma fila acumulada (lote com 100 eventos).

Filtros

Os filtros fazem o lote de 100 trazer só o que a sua integração usa. Eles podem ser combinados, e um valor inválido em qualquer filtro retorna 403 Forbidden.
string[]
Tipos de evento a receber. Repita o parâmetro para cada valor, sem colchetes (style: form, explode: true).CREATED, CONFIRMED, PREPARING, DISPATCHED, READY_FOR_PICKUP, PICKUP_AREA_ASSIGNED, PICKED_UP, DELIVERED, CONCLUDED, CANCELLATION_REQUESTED, CANCELLATION_REQUEST_DENIED, CANCELLED, ORDER_CANCELLATION_REQUEST, CALL_WAITER, CLOSE_ACCOUNT
string[]
Tipos de pedido a receber: DELIVERY, TAKEOUT ou INDOOR. Também repetido uma vez por valor.
string[]
Lojas das quais receber eventos. Sem ele, o polling traz os eventos de todas as lojas que o token alcança. Envie um header por loja.
Se o mesmo token tem acesso a mais de uma loja e o seu sistema trata cada loja separadamente, use x-polling-merchants. Sem ele, os eventos de todas as lojas chegam misturados no mesmo lote.
Com o header, a API confere se o token tem permissão em todas as lojas informadas. Se faltar permissão em alguma, a resposta é 403 e o corpo lista as lojas sem acesso.Para continuar recebendo: remova essas lojas do header e chame o polling de novo. As demais seguem funcionando.Para achar a causa:
  • A loja pode ter revogado o acesso do seu app. Fale com o responsável e peça para autorizar de novo.
  • Confira se a instalação foi concluída na Delivery Store. O acesso do token é calculado a cada chamada: uma loja que acabou de instalar o app já vale para o token atual, sem gerar outro.