Limites de taxa#
A API da Pluggy implementa um limitador de taxa para maximizar sua estabilidade ao lidar com grandes picos de solicitações recebidas. O limitador de taxa mantém um contador da quantidade de solicitações que você fez a um determinado endpoint em um minuto a partir do mesmo IP, e se exceder a quantidade máxima permitida, retorna um erro 429.
Limites de taxa por endpoint#
Os seguintes limites de taxa se aplicam na API da Pluggy:
| Endpoint | Máx. solicitações por minuto por IP |
|---|---|
POST /auth | 360 |
GET /transactions ou GET /transactions/{id} | 360 |
GET /investments ou GET /investments/{id} | 360 |
GET /investments/{id}/transactions | 360 |
PATCH /items | 20 |
PATCH /itemsé limitado a 20 solicitações por minuto. Isso é destinado a atualizações acionadas pelo usuário. Se você precisar de atualizações de itens diariamente, deve usar nosso recurso de auto-sync.
Cada limite é aplicado independentemente dos outros, por exemplo, você pode atingir o limite em POST /auth, mas ainda conseguir usar GET /transactions. Se um limite abranger mais de um endpoint, as solicitações para qualquer um dos endpoints contam para o limite.
Tratando erros de limitação de taxa#
Quando você excede o número máximo de solicitações por minuto para um endpoint, receberá um erro 429 Too Many Requests:
{
"message": "Too many requests. Please try again later (see Retry-After header in seconds)",
"code": 429
}Qualquer solicitação subsequente falhará com o mesmo erro até que o contador do limitador de taxa seja redefinido, após um minuto.
Informações mais precisas são fornecidas nos cabeçalhos de resposta:
{
"RateLimit-Limit": "360",
"RateLimit-Reset": "45",
"Retry-After": "60"
}- RateLimit-Limit: O número máximo de solicitações por minuto para este endpoint.
- RateLimit-Reset: Quantos segundos restam até que o limite seja redefinido e você possa solicitar o endpoint novamente.
- Retry-After: Campo padrão para o comportamento de repetição do cliente HTTP. Sempre retorna 60.
Ao ler esses cabeçalhos, você pode lidar com esse cenário aguardando RateLimit-Reset segundos e tentando novamente a solicitação.
Alguns clientes HTTP como got vêm com um comportamento de repetição padrão que lê o cabeçalho Retry-After quando recebem uma resposta 429 e aguarda esse número de segundos para tentar novamente, o que também funciona.
Eu continuo atingindo o limite!#
Se você estiver atingindo repetidamente o limite de taxa para um endpoint, certifique-se de verificar o seguinte:
- Se você estiver fazendo algum tipo de processo em lote, certifique-se de que não tenha muitas invocações paralelas do mesmo endpoint e tente adicionar esperas entre cada chamada para evitar sobrecarregar a API muito rapidamente.
- Se você atingir o limite durante a operação normal de seu aplicativo, certifique-se de que não está duplicando solicitações por engano e que está reutilizando corretamente as chaves da API entre as chamadas (para evitar atingir o limite de
/auth). - Se você ainda precisar de uma taxa de invocação mais alta do que a que permitimos para o funcionamento de seu aplicativo, entre em contato com nossa equipe de suporte para resolver seu caso específico.
