Skip to main content
Os rate limits protegem a estabilidade da plataforma e garantem uma experiência consistente para todos os integradores.

O que é rate limit?

Rate limit é um mecanismo de controle que define o número máximo de requisições que uma integração pode realizar à API dentro de um determinado intervalo de tempo. Quando esse limite é atingido, a API retorna o status HTTP 429 Too Many Requests e bloqueia novas requisições até que a janela de tempo seja reiniciada.

Como funciona

A Yampi aplica rate limits principalmente por rota e por IP de origem, monitorando o volume de requisições em janelas de tempo fixas, geralmente de 1 minuto. Cada requisição consome uma unidade da cota disponível. Ao esgotá-la, as requisições seguintes são rejeitadas com HTTP 429 até o início da próxima janela.

Headers de controle

A API retorna os seguintes headers em todas as respostas, permitindo monitorar o estado do rate limit em tempo real:
HeaderDescrição
X-RateLimit-LimitNúmero máximo de requisições permitidas na janela atual
X-RateLimit-RemainingQuantas requisições ainda estão disponíveis na janela atual

Resposta de erro

Ao ultrapassar o limite, você receberá:
HTTP/1.1 429 Too Many Requests
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 0
{
  "message": "Too Many Requests",
  "status_code": 429
}

Exemplos

Exemplo 1 — Requisição dentro do limite

curl --request GET \
  --url "https://api.dooki.com.br/v2/{alias}/catalog/products" \
  --header "User-Token: seu-token" \
  --header "User-Secret-Key: sua-secret-key"
Resposta (200 OK):
HTTP/1.1 200 OK
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 59

Exemplo 2 — Limite atingido

curl --request GET \
  --url "https://api.dooki.com.br/v2/{alias}/catalog/products" \
  --header "User-Token: seu-token" \
  --header "User-Secret-Key: sua-secret-key"
Resposta (429 Too Many Requests):
HTTP/1.1 429 Too Many Requests
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 0