Notícias

Compatibilidade drop-in com o Geocode.Farm já está no ar

O Geocode.Farm vem alimentando discretamente a geocodificação de vários aplicativos menores e ferramentas internas há muito tempo, muitas vezes integrado no início do desenvolvimento e deixado de lado desde então. Nosso host compatível foi pensado exatamente para esse tipo de integração, uma que vem funcionando bem e merece um caminho fácil para seguir em frente, em vez de uma reescrita.

O host reproduz exatamente os parâmetros de requisição e o corpo de resposta do Geocode.Farm, exceto os textos de direitos autorais, termos e privacidade, que são do próprio My Geocode. Requisições montadas hoje para os endpoints do Geocode.Farm podem ser apontadas para o nosso host como estão, com a resposta retornada na mesma estrutura que o código existente já espera.

Migrar exige trocar um nome de host e uma chave, e nada na lógica de requisição ou de interpretação da resposta ao redor. Essa chave pode se autenticar como cabeçalho X-API-Key, como cabeçalho Authorization: Bearer, via HTTP Basic auth com a chave como nome de usuário ou como parâmetro de consulta, correspondendo à forma que sua integração atual já envia.

Integrações mais antigas como esta muitas vezes foram escritas diretamente com chamadas HTTP brutas, antes que existisse um SDK para o provedor ou que valesse a pena adotá-lo. O My Geocode publica seus próprios SDKs, listados em /sdks/, para quem preferir abandonar de vez as chamadas HTTP brutas já que está mexendo nessa parte do código, embora nada no host compatível exija isso.

Os preços seguem as mesmas regras do restante da plataforma. Qualquer endereço recebe 2.500 requisições gratuitas por dia sem chave nenhuma, contadas por rede. Uma chave adiciona suas próprias 2.500 requisições gratuitas por dia além disso. Além dessas, o crédito pré-pago custa € 0,0001 por requisição, ou um pacote Unlimited cobre o uso por € 50 por mês, com o mesmo valor valendo independentemente do host que atendeu a chamada.

Toda resposta traz nosso conjunto completo de cabeçalhos de cota: X-Quota-Limit, X-Quota-Used, X-Quota-Free-Remaining, X-Quota-Network-Used, X-Credits-Remaining, X-Key-IPs-Used, X-Key-IPs-Limit e X-Quota-Reset, oferecendo uma visibilidade de uso que uma integração menor e mais antiga talvez nunca tenha tido.

Para projetos que querem mais do que a resposta compatível retorna, adicionar mg_extras=1 à requisição, ou um cabeçalho X-MG-Extras, acrescenta campos extras opcionais por cima, totalmente opcionais e desligados por padrão.

Com isso, nossos hosts compatíveis publicados chegam a dezessete no total, abrangendo geocodificação, geolocalização de IP e altitude. Chegar a esse número teve menos a ver com cobrir todos os provedores possíveis e mais com cobrir os provedores que as integrações reais de fato usam, e é por isso que a lista abrange essas três categorias em vez de se concentrar inteiramente em uma delas.

O próprio host está documentado em /compatibility/geocode-farm/, e a lista completa está em /compatibility/. Se o Geocode.Farm faz parte de uma integração mais antiga na sua stack, esta é uma forma de pouco esforço para ver como é uma estrutura de cotas moderna por trás do mesmo formato de requisição.