Limitations de vitesse

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Le Roads API renvoie la limitation de vitesse indiquée pour un segment de route donné. Dans le cas de segments de route avec des limitations de vitesse variables, la limitation de vitesse par défaut du segment est renvoyée.

L'exactitude des données de limite de vitesse renvoyées par Roads API ne peut pas être garantie. Les données sur les limitations de vitesse fournies ne sont pas fournies en temps réel. Elles peuvent être estimées, inexactes, incomplètes et/ou obsolètes. Consultez la section Détails de la couverture pour connaître les régions où les données de limite de vitesse sont disponibles.

Requests

Les demandes de limites de vitesse doivent être envoyées via HTTPS et prennent la forme suivante :

https://roads.googleapis.com/v1/speedLimits?parameters&key=YOUR_API_KEY

Utilisation des paramètres

Réglages obligatoires

  • Paramètre path ou placeId.
    • path : liste comportant jusqu'à 100 paires de latitude/longitude représentant un chemin. Les valeurs de latitude et de longitude doivent être séparées par une virgule. Les paires de latitude/longitude doivent être séparées par une barre verticale : "|". Lorsque vous fournissez le paramètre path, l'API affiche d'abord le chemin d'accès à la route la plus probable qu'un véhicule emprunte (comme pour la requête snapToRoads), puis il détermine la limitation de vitesse pour le segment de route concerné. Si vous ne souhaitez pas que l'API ancre le chemin d'accès, vous devez transmettre un paramètre placeId comme expliqué ci-dessous. L'exemple suivant montre le paramètre path avec trois paires latitude/longitude : path=60.170880,24.942795|60.170879,24.942796|60.170877,24.942796.
    • placeId : identifiants de lieu représentant un ou plusieurs segments de route. Assurez-vous que chaque ID de lieu fait référence à une section de route et non à un type de lieu différent. Vous pouvez transmettre jusqu'à 100 ID de lieu avec chaque requête. L'API n'effectue pas de détection de route sur les identifiants de lieu fournis. La réponse inclut une limite de vitesse pour chaque identifiant de lieu dans la requête. Vous pouvez envoyer une requête snapToRoads ou nearestRoads pour rechercher les ID de lieu pertinents, puis les fournir en tant qu'entrées à la requête speedLimits. L'exemple suivant montre le paramètre placeId avec deux ID de lieu : placeId=ChIJX12duJAwGQ0Ra0d4Oi4jOGE&placeId=ChIJLQcticc0GQ0RoiNZJVa5GxU
  • key : clé API de votre application Votre application doit s'identifier chaque fois qu'elle envoie une requête à Roads API en incluant une clé API dans chaque requête. Découvrez comment obtenir une clé.

Paramètres facultatifs

  • units : indique si les limitations de vitesse sont exprimées en kilomètres ou en miles par heure. Ce champ peut être défini sur KPH ou MPH. La valeur par défaut est KPH.

Réponses

Les éléments suivants peuvent être présents dans une réponse speedLimits:

  • speedLimits : tableau des métadonnées de route Chaque élément comprend les champs suivants :
    • placeId : identifiant unique d'un lieu. Tous les ID de lieux renvoyés par Roads API correspondent à des segments de route.
    • speedLimit : la limitation de vitesse de ce segment de route
    • units : renvoie KPH ou MPH.
  • snappedPoints : tableau de points ancrés. Ce tableau n'est présent que si la requête contient un paramètre path. Chaque point comprend les champs suivants :
    • location : contient les valeurs latitude et longitude.
    • originalIndex : entier indiquant la valeur correspondante dans la requête d'origine. Chaque valeur de la requête doit correspondre à une valeur insérée dans la réponse. Ces valeurs sont indexées à partir de 0. Ainsi, un point avec originalIndex de 4 sera la valeur ancrée de la cinquième latitude/longitude transmise au paramètre path.
    • placeId : identifiant unique d'un lieu. Tous les ID de lieux renvoyés par Roads API correspondent à des segments de route. Le placeId peut être transmis dans une requête de limite de vitesse pour déterminer la limitation de vitesse sur ce segment de route.
  • warning_message : chaîne contenant un avertissement visible par l'utilisateur.

Exemple de requête utilisant un chemin d'accès

Cette requête détermine la vitesse maximale de chaque segment de route le plus proche des paires latitude/longitude spécifiées dans un chemin traversant le pont Vasco da Gama de Lisbonne, au Portugal.

Requête

https://roads.googleapis.com/v1/speedLimits?path=38.75807927603043,-9.03741754643809|38.6896537,-9.1770515|41.1399289,-8.6094075&key=YOUR_API_KEY

Response (Réponse)

{
  speedLimits:
  [
    {
      placeId: "ChIJX12duJAwGQ0Ra0d4Oi4jOGE",
      speedLimit: 105,
      units: "KPH"
    },
    {
      placeId: "ChIJLQcticc0GQ0RoiNZJVa5GxU",
      speedLimit: 70,
      units: "KPH"
    },
    {
      placeId: "ChIJJ4vQRudkJA0RpednU70A-5M",
      speedLimit: 55,
      units: "KPH"
    }
  ],
  snappedPoints:
  [
    {
      location:
      {
        latitude: 38.75807927603043,
        longitude: -9.037417546438084
      },
      originalIndex: 0,
      placeId: "ChIJX12duJAwGQ0Ra0d4Oi4jOGE"
    },
    {
      location:
      {
        latitude: 38.689653701836896,
        longitude: -9.177051486847693
      },
      originalIndex: 1,
      placeId: "ChIJLQcticc0GQ0RoiNZJVa5GxU"
    },
    {
      location:
      {
        latitude: 41.13993011767777,
        longitude: -8.609400794783655
      },
      originalIndex: 2,
      placeId: "ChIJJ4vQRudkJA0RpednU70A-5M"
    }
  ],
  warningMessage: "Input path is too sparse. You should provide a path where consecutive points are closer to each other. Refer to the 'path' parameter in Google Roads API documentation."
}

Le message d'avertissement ci-dessus indique la parcimonie des points. Si vous demandez des limitations de vitesse pour les segments de route les plus proches à des points arbitraires, vous devez appeler speedLimits avec les ID de lieu extraits du point de terminaison nearestRoads.

Exemple de requête avec identifiants de lieu

Au lieu d'utiliser des paires latitude/longitude, vous pouvez transmettre les ID de lieu des segments de route. Nous vous recommandons d'obtenir les ID de lieu des segments de route à l'aide de requêtes snapToRoads ou nearestRoads. Lorsque vous transmettez des ID de lieu, l'API renvoie la limite de vitesse pour la section de route représentée par chaque ID de lieu. L'API n'applique aucun extrait de route aux ID de lieu fournis.

L'exemple suivant demande les limitations de vitesse de certains segments de route qui traversent le pont Vasco da Gama à Lisbonne, au Portugal.

Requête

https://roads.googleapis.com/v1/speedLimits?placeId=ChIJX12duJAwGQ0Ra0d4Oi4jOGE&placeId=ChIJLQcticc0GQ0RoiNZJVa5GxU&placeId=ChIJJ4vQRudkJA0RpednU70A-5M&key=YOUR_API_KEY

Response (Réponse)

{
  "speedLimits": [
    {
      placeId: "ChIJX12duJAwGQ0Ra0d4Oi4jOGE",
      speedLimit: 105,
      units: "KPH"
    },
    {
      placeId: "ChIJLQcticc0GQ0RoiNZJVa5GxU",
      speedLimit: 70,
      units: "KPH"
    },
    {
      placeId: "ChIJJ4vQRudkJA0RpednU70A-5M",
      speedLimit: 55,
      units: "KPH"
    }
  ]
}

Recommandations d'utilisation

Pour réduire le volume d'appels au service Speed Limit, nous vous recommandons d'échantillonner les emplacements de vos éléments à des intervalles de 5 à 15 minutes (la valeur exacte dépend de la vitesse de déplacement d'un élément). Si un élément est immobile, un seul échantillon d'emplacement suffit. Il n'est pas nécessaire d'effectuer plusieurs appels.

Pour minimiser la latence globale, nous vous recommandons d'appeler le service Speed Limit une fois que vous avez collecté des données au lieu d'appeler l'API chaque fois que vous recevez l'emplacement d'une ressource en mouvement.

Pourquoi manque-t-il une partie ou la totalité des limitations de vitesse ?

La cause la plus fréquente d'absence de speedLimits est la limite de vitesse appliquée pour un lieu qui n'est pas une section de route.

L'exemple ci-dessus utilise le pont Vasco da Gama pour illustrer des concepts. Il est compatible avec la route E90 qui traverse le Rio Tejo. Le pont lui-même porte l'ID de lieu ChIJUzt97ZEwGQ0RM1JzQfqoDtU. Le premier segment de route de la réponse ci-dessus fait partie de la route E90 et possède l'identifiant de lieu ChIJX12duJAwGQ0Ra0d4Oi4jOGE. Dans l'exemple de requête, si vous remplacez l'ID de lieu de la route par l'ID de lieu du pont, il n'y aura que deux limitations de vitesse dans le tableau speedLimits, car l'ID de lieu du pont ne fait pas référence à un segment de route individuel. De plus, si aucun ID de lieu ne correspond aux segments de route, la réponse ne contiendra aucune limite de vitesse.

Lorsque vous envoyez des requêtes de limitation de vitesse à l'aide d'identifiants de lieu, assurez-vous que chaque identifiant de lieu fait référence à un segment de route et non à un type de lieu différent. Il est préférable de récupérer les ID de lieu de chaque segment de route à l'aide de requêtes snapToRoads ou nearestRoads, qui peuvent toutes renvoyer un ID de lieu à partir d'un seul appel.