API de géolocalisation IP
Pays, région, ville, coordonnées et fuseau horaire pour toute adresse IPv4 ou IPv6 publique. Powered by MaxMind GeoLite2 — calcul entièrement local, aucun rate limit partagé.
Pas encore de clé API ?
Connectez-vous à votre compte pour créer et gérer vos clés API.
Guide d'intégration
Copiez un extrait, remplacez votre clé API, exécutez. Fonctionne avec n'importe quel client HTTP — exemples ci-dessous en cURL, JavaScript et Python.
/api/ip-geolocationhttps://www.apipick.comGet geolocation data for any public IP address
ipstringoptionnelPublic IPv4 or IPv6 address. Omit to look up caller's own IP. 8.8.8.8
curl -X GET "https://www.apipick.com/api/ip-geolocation" \
-H "x-api-key: YOUR_API_KEY"{
"success": true,
"code": 200,
"message": "ok",
"data": {
"ip": "8.8.8.8",
"country_code": "US",
"country_name": "United States",
"continent": "North America",
"continent_code": "NA",
"city": "Mountain View",
"latitude": 37.4056,
"longitude": -122.0775,
"timezone": "America/Los_Angeles",
"currency": "USD",
"isp": "Google LLC",
"asn": 15169
},
"credits_used": 1,
"remaining_credits": 99
}Conçu pour des cas d'usage réels
Détection de fraude
Signalez les inscriptions ou transactions provenant de régions à haut risque. Vérifiez si l'IP d'un utilisateur correspond à la localisation qu'il déclare ou à son pays de facturation.
Localisation de contenu
Sélectionnez automatiquement la langue, la devise et les tarifs régionaux selon la localisation du visiteur. N'affichez les bannières de cookies conformes au RGPD qu'aux visiteurs de l'UE.
Limitation de débit
Appliquez des limites de débit ou des contrôles d'accès par pays. Bloquez ou ralentissez le trafic de régions précises sans acheter d'outils de sécurité coûteux.
Enrichissement par agent IA
Laissez les agents IA enrichir les fiches utilisateur, classer les leads par géographie ou localiser le contenu généré à partir de données IP en temps réel.
Alternative à ipinfo.io et ipapi.co
Facturation par crédits et par compte — pas de pool de rate limit partagé, pas de paliers de plan, pas de quotas mensuels qui se réinitialisent le premier du mois.
ipinfo.io | ipapi.co | API Pick ✓ | |
|---|---|---|---|
| Offre gratuite | 50k req/month | 1,000 req/day | 100 crédits à l'inscription |
| Modèle de limitation de débit | Risque de pool d'IP partagé | Risque de pool d'IP partagé | Crédits par compte |
| Crédits / quota expirent ? | Réinitialisation mensuelle | Réinitialisation quotidienne | N'expirent jamais |
| Pays + région + ville | ✓ | ✓ | ✓ |
| Fuseau horaire | Plan payant | ✓ | ✓ |
| Prise en charge IPv6 | ✓ | ✓ | ✓ |
| Indicateur d'appartenance à l'UE | Plan payant | ✓ | ✓ |
| Pas de carte bancaire pour démarrer | ✓ | ✓ | ✓ |
| Prêt pour agent IA / LLM | Partiel | Partiel | ✓ JSON natif |
Le problème du pool de rate limit partagé
Avec les offres gratuites de ipinfo.io et ipapi.co, les rate limits sont appliquées par IP client. Autrement dit, toutes les requêtes issues d'une même région Vercel, AWS ou GCP partagent un seul pool de quota. Si un autre client sur le même nœud edge a déjà épuisé la limite de 1 000 requêtes par jour, vos appels d'API commencent à échouer — alors même que vous n'avez encore envoyé aucune requête.
Facturation par crédits : prévisible à toute échelle
API Pick facture par compte, pas par IP. Chaque appel déduit exactement 1 crédit de votre solde — uniquement en cas de réponse réussie. Les crédits n'expirent jamais. Que vous fassiez 10 recherches ou 10 000 dans une même journée, vous ne payez que ce que vous utilisez, sans aucun risque d'échec surprise dû à un quota partagé.
Champs de la réponse
| Champ | Type | Description |
|---|---|---|
| data.ip | string | L'adresse IP interrogée |
| data.country_code | string | Code pays ISO 3166-1 alpha-2 (p. ex. US, DE, JP) |
| data.country_name | string | Nom complet du pays en anglais |
| data.continent | string | Nom du continent (p. ex. North America, Europe) |
| data.continent_code | string | Code continent à deux lettres (p. ex. NA, EU) |
| data.city | string | Nom de la ville (chaîne vide si non disponible) |
| data.latitude | number | null | Latitude approximative de la localisation de l'IP |
| data.longitude | number | null | Longitude approximative de la localisation de l'IP |
| data.timezone | string | Identifiant de fuseau horaire IANA (p. ex. America/Los_Angeles) |
| data.currency | string | Code devise ISO 4217 du pays (p. ex. USD, EUR) |
| data.isp | string | Nom du FAI / de l'organisation issu de la base ASN |
| data.asn | integer | null | Numéro de système autonome (p. ex. 15169 pour Google) |
| credits_used | integer | Crédits déduits pour cette requête |
| remaining_credits | integer | Crédits restants sur votre compte |
Limites de débit
La limitation est par clé API, fenêtre glissante de 60 secondes. En cas de dépassement, vous recevez un 429 propre avec un en-tête Retry-After.
120req/min
Par clé API, par endpoint. Fenêtre glissante de 60 secondes.
3concurrent
Nombre maximal de requêtes simultanées en cours par clé API.
X-RateLimit-LimitNombre maximal de requêtes autorisées par minuteX-RateLimit-RemainingRequêtes restantes dans la fenêtre actuelleX-RateLimit-ResetSecondes avant la réinitialisation de la fenêtre actuelleRetry-AfterSecondes à attendre avant de réessayer (uniquement sur 429)HTTP/1.1 429 Too Many Requests
Retry-After: 12
X-RateLimit-Limit: 120
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 12
{
"error": "rate_limit_exceeded",
"message": "Rate limit exceeded: 120 requests/minute per API key. Retry after 12s.",
"retry_after": 12
}Questions fréquentes
Q : Que se passe-t-il si je ne transmets pas d'adresse IP ?
R : L'endpoint détecte automatiquement l'IP de l'appelant à partir des en-têtes de la requête (X-Forwarded-For). C'est utile pour les recherches côté serveur où vous souhaitez géolocaliser l'utilisateur final sans transmettre l'IP explicitement.
Q : Les IP privées sont-elles prises en charge ?
R : Non. Les IP privées (plages RFC 1918 comme 192.168.x.x, 10.x.x.x), de loopback (127.0.0.1) et autres plages réservées renvoient une erreur 400. Seules les adresses IPv4 et IPv6 publiquement routables sont prises en charge.
Q : Quelle est la précision de la géolocalisation ?
R : Powered by MaxMind GeoLite2-City. La précision au niveau du pays est généralement de 95–99 %. La précision au niveau de la ville varie selon les régions — généralement fiable en Amérique du Nord et en Europe, moins précise dans certaines parties de l'Asie et de l'Afrique. Les coordonnées représentent une zone générale, pas une localisation physique précise.
Q : Les agents IA peuvent-ils l'utiliser comme outil ?
R : Oui. L'endpoint accepte un unique paramètre de requête ip optionnel et renvoie un objet JSON plat — facile à exposer comme outil fonction pour OpenAI, Claude, LangChain ou n'importe quel framework d'agents. Utile pour les agents qui doivent raisonner sur la localisation d'un utilisateur, appliquer des règles géographiques ou enrichir des données de leads avec un contexte régional.
Utilisez la Géolocalisation IP dans Claude Code et les agents IA
Installez le skill officiel Claude Code pour géolocaliser toute adresse IP directement dans votre agent de codage IA — pays, ville, FAI, fuseau horaire et plus, en langage naturel.
Demandez naturellement à votre agent IA
Plateformes compatibles
Skill Claude Code pour l'API Géolocalisation IP d'APIpick
Renvoie le pays, le continent, la ville, la latitude/longitude, le fuseau horaire IANA, le code devise ISO, le nom du FAI et l'ASN pour toute adresse IP.