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.
{
"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.
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.
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.