Geolocalização do visitante para o seu website
Chame GET /v1/geo diretamente a partir do navegador de um visitante para obter o país, cidade, fuso horário e contexto regional disponíveis dessa ligação. Configure a sua origem permitida, adicione a sua chave publicável e decida como a sua aplicação deve tratar a resposta.
O pedido provém do navegador do visitante
GET /v1/geo descreve sempre o cliente que se liga a ele. Chame-o a partir do navegador do visitante para receber os dados de localização dessa ligação; um pedido enviado a partir do servidor da sua aplicação descreve a própria ligação do servidor, não a do visitante. Se já tiver o endereço IP de um utilizador final e precisar de o resolver a partir do seu back-end, utilize a API de pesquisa de IP separada. A chave de visitante é publicável — foi concebida para aparecer em código do navegador — pelo que o verdadeiro controlo é a lista de origens permitidas configurada para ela, e não o sigilo da própria chave.
Conceba isto como uma sugestão, não um redirecionamento forçado
Um viajante pode utilizar uma rede num país enquanto prefere outra língua, e uma VPN pode colocar uma ligação totalmente noutro local. Dê aos visitantes uma forma visível de alterar a língua, país ou moeda sugeridos, e preserve essa escolha em vez de a voltar a derivar da localização em cada visita.
Contexto de segurança apenas em planos elegíveis
Nos planos que o incluem, a resposta pode conter indicadores baseados em listas de VPN/Tor/ameaça. Um objeto security omitido significa que o campo não está incluído no seu plano, não que a rede foi considerada segura; um valor false significa que não houve correspondência nos dados de origem disponíveis, o que não é o mesmo que um atestado de segurança limpo. A cobertura varia consoante o indicador e a versão de IP — a deteção de Tor em IPv6, por exemplo, não está atualmente implementada.
Contexto útil na resposta
- country, region, city, latitude, longitude
- Localização aproximada do pedido em ligação. Não é uma posição de dispositivo ou GPS, nem prova do paradeiro de uma pessoa específica.
- timezone, currency, callingCode
- Contexto regional derivado da localização resolvida, útil como sugestão inicial.
- asn, asOrganization
- A rede em ligação e o seu operador, quando disponível. Um nome de organização não é a identidade de uma pessoa.
- security
- Omitido por completo salvo se o seu plano o incluir. Quando presente: isVpn, isTor, isDatacenter, isThreat, isSanctionedNetwork — indicadores baseados em listas, não uma garantia de segurança.
Adicione o primeiro pedido
JavaScript no navegador
async function loadVisitorLocation() {
const response = await fetch('https://api.watch-ip.com/v1/geo', {
headers: { 'X-Api-Key': 'YOUR_PUBLISHABLE_KEY' },
});
if (!response.ok) {
throw new Error(`Visitor geolocation failed (${response.status})`);
}
const geo = await response.json();
return { country: geo.country ?? null, city: geo.city ?? null, timezone: geo.timezone ?? null };
}Substitua o marcador de posição pela sua chave de visitante e execute a página a partir de uma origem permitida para essa chave. Mantenha a experiência predefinida do seu site disponível caso o pedido falhe ou um campo esteja em falta.
Perguntas frequentes
Isto pede permissão de localização do dispositivo?
Não. O pedido baseado em IP não utiliza a API de Geolocalização do dispositivo do navegador — estima a localização a partir da ligação em vez de pedir coordenadas fornecidas pelo dispositivo. As suas próprias obrigações de privacidade e consentimento continuam a depender de como a sua aplicação utiliza o resultado.
Posso passar um endereço IP para /v1/geo?
Não. O endpoint descreve sempre o cliente em ligação. Utilize /v1/lookup/{ip} a partir do seu back-end quando quiser fornecer um endereço.
Porque é que um pedido renderizado no servidor mostra a localização do meu fornecedor de alojamento?
O servidor é o cliente em ligação para esse pedido. Mova o pedido de visitante para código do navegador, ou utilize o endpoint de pesquisa de IP a partir do seu back-end com uma fonte fiável do IP do utilizador final.
A cidade ou as coordenadas são exatas?
Não. A geolocalização por IP é uma estimativa associada à ligação, não a posição precisa de uma pessoa.
Posso utilizar uma chave secreta no navegador?
Não. Utilize uma chave de visitante publicável para este endpoint, e mantenha as chaves secretas de pesquisa apenas no ambiente do seu back-end.
Páginas relacionadas
- Pesquisa de IPResolva um endereço IPv4 ou IPv6 fornecido, a partir do seu back-end, com uma chave secreta.
- Referência de GET /v1/geoReferência completa de campos para o endpoint de geolocalização de visitante.
- Guia de JavaScriptPeça a localização do visitante a partir de JavaScript no navegador.
- Exatidão da geolocalização de IPO que a geolocalização de IP pode e não pode dizer, e como a avaliar por si próprio.
- O que é a geolocalização de IPO que a geolocalização de IP estima, os campos que devolve, e o que não consegue dizer.
- Deteção de VPN e TorIndicadores de VPN, Tor e redes de ameaças baseados em listas, nas respostas de visitante e de consulta, para planos elegíveis.
- PreçosPlanos e limites para as APIs de visitante e de pesquisa.
- Qual é o meu IPVeja a localização aproximada e a rede que o Watch-IP resolve para a sua ligação atual.