Pular para o conteúdo

Limites de uso

120 requisições por minuto, por chave. O contador é por chave, não por IP — duas chaves da mesma conta têm baldes separados, e estar atrás de um proxy não muda nada.

Passou do limite: 429, com Retry-After em segundos no header e no corpo.

json
{
  "error": {
    "message": "Too many requests.",
    "statusCode": 429,
    "retryAfter": 37
  }
}

Cache dos agregados

/v1/sales/metrics e /v1/creatives/ranking são servidas de um cache de 30 segundos. Chamar em laço não traz número mais novo, só consome o seu limite.

A leitura do ranking também é o que agenda a atualização das métricas que vêm do TikTok e do Meta, e essa tem janela própria — o campo platformMetrics.nextAttemptInSeconds diz quanto falta. Ler em laço não antecipa nada.

/v1/sales não é cacheada: é por ela que você descobre venda nova.

Para acompanhar venda quase em tempo real, chame /v1/sales com limit pequeno e um cursor guardado, em vez de re-varrer a janela inteira a cada minuto.

Cota × rate limit

São limites diferentes e a diferença é o que fazer. O rate limit é por minuto e se resolve esperando: 429, respeite o Retry-After. A cota é do período e não se resolve esperando: 403 API_QUOTA_EXCEEDED, fale com o suporte.

Hoje não há cota configurada: nenhuma conta recebe esse erro. Ele está documentado porque, no dia em que um teto for definido, ele passa a valer sem mudança no contrato — e a sua integração já sabe tratá-lo.

Teto de janela

Nenhuma chamada aceita janela maior que 90 dias. Para períodos mais longos, faça chamadas encadeadas. Sem from/to, o padrão são os últimos 30 dias.