Une API de géolocalisation par adresse IP, avec le fuseau horaire

Récupérez la position d'un utilisateur final à partir de son adresse IP. Un seul appel à /position renvoie une localisation à l'échelle de la ville et le fuseau horaire.

Utilisez une clé publique depuis le navigateur ou une clé privée côté serveur.

Créer un compte développeurDocumentation
Woosmap Geolocation Api

Ils font confiance à l'API Geolocation

Choisir l'endpoint adapté

Trois endpoints, trois usages - avec un exemple de réponse pour chacun.

/position

Estimer une position depuis une adresse IP

La réponse contient le pays, la région, la ville et le code postal, les coordonnées et un viewport, le rayon accuracy en kilomètres, et le fuseau horaire avec ses décalages.

Certains champs peuvent manquer lorsque les données IP ne sont pas assez pertinentes ou précises.

Documentation
{
  "country_code": "US",
  "country_name": "United States",
  "city": "Alexandria",
  "region_state": "Virginia",
  "postal_code": "22309",
  "latitude": 38.719,
  "longitude": -77.1067,
  "accuracy": 5,
  "timezone": "America/New_York",
  "raw_offset": -18000,
  "dst_offset": 3600
}

/stores

Trouver les points de vente proches en une seule requête

Lorsque vos points de vente sont enregistrés dans Woosmap, une seule requête estime la position de l'utilisateur final depuis son adresse IP et renvoie les points de vente proches. Ajoutez limit=1 pour demander le plus proche. Les points de vente ne sont renvoyés que si une position IP pertinente est trouvée, avec une précision de 20 km ou moins ; au-delà, la réponse est vide : prévoyez une solution de repli dans votre application. Pour le parcours complet, commencez par Store Locator.

Documentation
{
  "city": "Alexandria",
  "accuracy": 5,
  "stores": {
    "type": "FeatureCollection",
    "features": [
      {
        "properties": {
          "store_id": "STORE_ID_123456",
          "name": "My Cool Store",
          "distance": 0,
          "open": { "open_now": true }
        }
      }
    ]
  }
}

/timezone

Obtenir un fuseau horaire depuis des coordonnées

Cet endpoint attend latitude,longitude, pas une adresse IP. Il renvoie le fuseau IANA, son nom, le décalage brut et celui de l'heure d'été ; timestamp est facultatif. Lorsque /position a déjà localisé l'utilisateur, le fuseau figure dans la réponse et un second appel est inutile.

Documentation
{
  "timezone": "Europe/Paris",
  "timezone_name": "CEST",
  "raw_offset": 3600,
  "dst_offset": 3600
}

Voir ce que l'API renvoie avant de l'intégrer

L'exemple officiel ci-dessous se charge de lui-même. Examinez les champs disponibles, le rayon accuracy et la zone correspondante sur une carte, estimée depuis votre adresse IP actuelle.

Lancez votre première requête Geolocation

Ajoutez ce code au JavaScript front-end d'une page dont le domaine est autorisé pour votre clé publique. Remplacez YOUR_API_KEY, chargez la page, puis consultez la réponse dans la console du navigateur.

fetch("https://api.woosmap.com/geolocation/position/?key=YOUR_API_KEY")
  .then((response) => {
    if (!response.ok) {
      throw new Error(`Request failed: ${response.status}`);
    }
    return response.json();
  })
  .then((position) => console.log(position))
  .catch((error) => console.error(error));

L'exemple ci-dessus fonctionne avec une clé de démonstration Woosmap ; votre intégration utilise la clé publique de votre projet, restreinte aux domaines ou IP autorisés. Geolocation est disponible avec les offres Pro et Enterprise.

Une précision à l'échelle de la ville, pas un point GPS

Un rayon explicite

Chaque réponse contient accuracy : le rayon, en kilomètres autour de la position renvoyée, dans lequel l'adresse IP est vraisemblablement située.

En pratique

Pour 50 % des utilisateurs, la précision est inférieure ou égale à 20 km. L'API Geolocation peut être utilisée dans le monde entier.

Limite de débit

La limite documentée de /position est de 50 requêtes par seconde. Avec une clé publique, elle est comptée par IP appelante ; avec une clé privée, par IP d'utilisateur final passée en paramètre.

Ce qu'Etam rapporte après la refonte de son checkout avec Woosmap

Après avoir repensé un checkout géolocalisé avec Woosmap, le taux de conversion e-Commerce a progressé de plus de 50 % par rapport à 2019.

Sébastien RibeilResponsable du domaine e-Commerce, Etam Group

Ce résultat concerne l'ensemble du checkout, qui utilisait Store Locator, Geolocation et Address Finder. Il ne peut pas être attribué à la seule API Geolocation.

Grâce à l'API, la partie Woosmap a été très rapide à intégrer. L'ensemble de la mise en place des cartes du checkout a représenté environ 20 jours/homme pour les quatre marques du groupe, soit une quinzaine de sites. Nous avons particulièrement apprécié la console, claire et simple à utiliser, pour suivre la consommation de données et mener nos tests de Quality Assurance.

Guillaume BrunierLead Developer, Etam
Lire l'étude de cas Etam

Questions fréquentes sur Geolocation

L'API utilise l'adresse IP de l'utilisateur final. Elle n'utilise ni GPS, ni localisation Wi-Fi, ni identifiant d'appareil. L'accord de traitement des données et la liste des sous-traitants autorisés détaillent le traitement de ces données.

La géolocalisation par IP fonctionne à l'échelle de la ville, pas de l'adresse. Chaque réponse contient un champ accuracy : un rayon en kilomètres autour du point renvoyé, dans lequel l'adresse IP est vraisemblablement située. Tenez compte de ce rayon, pas seulement des coordonnées, pour décider comment utiliser le résultat.

Oui. Dans le navigateur, utilisez une clé publique ; le navigateur fournit automatiquement l'en-tête Referer requis. Côté serveur, utilisez une clé privée et transmettez explicitement ip_address si vous souhaitez localiser une autre adresse que celle de l'appelant.

Prévoyez une solution de repli dans votre application. /stores ne renvoie des points de vente que lorsqu'une position IP pertinente est trouvée avec une précision de 20 km ou moins ; sinon, la réponse est vide. Vous pouvez alors demander un code postal ou une ville.

Non. /position contient déjà le fuseau horaire ainsi que les décalages UTC et heure d'été. Utilisez l'endpoint /timezone séparé lorsque vous disposez déjà de coordonnées.

Passez à l'étape suivante avec Geolocation

Geolocation est disponible avec les offres Pro et Enterprise. Créez un compte développeur, consultez les tarifs ou échangez avec notre équipe au sujet d'un usage à volume élevé ou de conditions propres à votre projet. Woosmap publie un Service Level Agreement et un SLA pour le plan Pro.

Créer un compte développeurNous contacter