Limites gratuitos de APIs de geolocalização de IP: o que comparar
O plano gratuito de uma API de geolocalização de IP é uma franquia limitada de consultas, geralmente medida por dia, por mês ou por minuto, que permite testar ou manter um projeto pequeno sem pagar, e o limite é apenas um de vários que vale a pena comparar.
Os provedores descrevem suas franquias em unidades muito diferentes, o que torna enganosa uma comparação direta dos números de destaque. Os limites publicados também mudam com frequência. Por isso, este artigo evita citar números de outros provedores e, em vez disso, oferece a lista de verificação a aplicar à documentação atual de cada um, além dos termos exatos que o ipto usa, para que você compare coisas equivalentes.
Limites de taxa, cotas e rajadas são coisas diferentes
Um limite de taxa controla a velocidade: quantas requisições você pode enviar por segundo ou por minuto antes que o servidor responda com um erro como HTTP 429. Uma cota controla o volume: quantas requisições você pode fazer no total em um dia ou em um mês. Um provedor pode ter uma, a outra ou ambas, e elas falham de maneiras diferentes.
Um limite por minuto sem teto mensal serve a um site de baixo tráfego, mas pode quebrar um job em lote que envia milhares de consultas em rajada. Uma cota mensal sem limite por minuto serve ao trabalho em lote, mas não dá a um serviço de produção nenhum aviso antes que a franquia acabe no dia vinte do mês. As cotas diárias ficam entre as duas e são redefinidas em um horário que você pode planejar, desde que saiba se a redefinição ocorre à meia-noite UTC, em uma janela móvel de 24 horas ou vinculada ao momento do seu cadastro. A documentação do provedor deve dizer qual.
Ao ler a página de um plano gratuito, anote quatro números: o teto de rajada ou por minuto, a cota diária ou mensal, o comportamento no limite (erro rígido, limitação de velocidade ou cobrança automática de excedente) e se os cabeçalhos de resposta expõem a franquia restante. Trate qualquer provedor que não declare isso com clareza como um risco para uso em produção.
O que “ilimitado” e “gratuito” podem esconder
A palavra “ilimitado” em uma tabela de preços raramente significa o que um engenheiro gostaria que significasse. Ela pode descrever requisições por minuto em vez de por mês, pode vir com uma cláusula de uso justo ou pode se aplicar apenas a um conjunto reduzido de campos. A abordagem mais segura é ler os termos de serviço em vez da página de preços e procurar a linguagem de uso justo, limitação de velocidade e uso aceitável.
Os planos gratuitos costumam diferir de outras três maneiras que importam mais do que o número de requisições:
- Restrição de campos. A localização básica pode estar incluída, enquanto campos de rede, segurança ou relacionados a VPN ficam em um plano pago. Verifique de quais campos de resposta você realmente precisa antes de comparar cotas.
- Uso comercial. Alguns planos gratuitos são explicitamente para desenvolvimento, testes ou projetos não comerciais. Colocar em produção com um plano assim pode violar os termos.
- Exigências de cadastro e chave. O acesso sem chave é conveniente para um teste rápido, mas uma chave permite que o provedor atribua o tráfego a você e, às vezes, libera uma franquia maior.
Para tudo isso, a fonte autoritativa é a documentação atual do provedor. Os números citados em posts de blog, incluindo versões mais antigas deste, ficam desatualizados rapidamente.
Como dimensionar o seu tráfego em relação a uma cota
A comparação de cotas só faz sentido diante do seu uso real. Estime as consultas por dia a partir do seu tráfego: se cada visualização de página dispara uma consulta, você consumirá qualquer franquia gratuita rapidamente. Se você só consulta um endereço no cadastro, no checkout ou no login, o volume é uma pequena fração das visualizações de página.
O cache muda a aritmética. A localização e a propriedade de rede de um endereço mudam devagar, então armazenar um resultado por horas ou por um dia é razoável na maioria dos usos. Guarde a resposta indexada pelo IP e você paga por cada endereço único uma vez por janela de cache, e não uma vez por requisição. Para trabalho em lote, veja nosso texto sobre a arquitetura de consulta em lote, que trata de filas e backoff.
Planeje também o caminho de falha. Decida de antemão o que a sua aplicação faz quando a API retorna um erro ou uma resposta de limite: falhar aberto e pular o enriquecimento, falhar fechado em ações de alto risco ou servir um valor em cache. Um plano gratuito só é um bom ponto de partida se o seu código se degradar de forma graciosa quando a franquia acabar.
O que o plano gratuito do ipto inclui
O ipto é gratuito, sem cadastro, e permite 1.000 requisições gratuitas por dia. A consulta de IP retorna país, cidade, ASN, organização, código de moeda e as flags is_vpn, is_tor, is_abuser, is_datacenter, além de bogon e bogon_type. Esses campos não ficam reservados a outro plano, então a verificação acima sobre restrição de campos se responde em uma linha. Os feeds de ameaças são atualizados a cada 6 horas e os conjuntos de IP e ASN diariamente. O serviço não detecta proxies residenciais, e a localização no nível de cidade é aproximada por natureza, como explicado em por que a precisão por cidade é limitada.
Você pode experimentar os dados sem escrever código. Cole um endereço no verificador de VPN, Tor e proxy para ver as flags de segurança, consulte o proprietário da rede com a consulta de ASN, veja como um endereço é avaliado no verificador de abuso de IP ou leia a documentação da API para os formatos de requisição. Seja qual for o provedor escolhido, passe a mesma amostra de endereços do seu próprio tráfego por cada candidato antes de se comprometer, porque a cobertura e a precisão variam conforme a região e o tipo de rede.