API Maps JavaScript : obtenir une clé API ou un ID client

Remarque : Il n'est plus possible de s'inscrire au forfait Premium de Google Maps Platform, qui n'est plus disponible non plus pour les nouveaux clients.

Choisir une méthode d'authentification

Pour utiliser l'API Maps JavaScript :

  • Les clients bénéficiant du forfait Premium peuvent utiliser une clé API ou un ID client pour authentifier les requêtes.
  • Les clients disposant d'une licence antérieure doivent utiliser un ID client pour authentifier les requêtes.

Les outils et rapports disponibles pour chaque méthode d'authentification sont présentés ici :

  • Authentification via une clé API (forfait Premium)
    En utilisant une clé API pour authentifier votre requête, vous pouvez :
    • gérer toutes vos API sur la page des API de Google Cloud Console ;
    • accéder à des données d'utilisation en temps réel et à un historique des données d'utilisation sur les 30 derniers jours dans Cloud Console ;
    • ajouter le paramètre channel aux requêtes afin d'obtenir des rapports plus détaillés sur l'utilisation ;
    • afficher des rapports d'utilisation avec plus de 30 jours de données dans Cloud Console ;
  • Authentification via un ID client (forfait Premium ou licence antérieure)
    En utilisant un ID client pour authentifier votre requête, vous pouvez :
    • ajouter le paramètre channel aux requêtes afin d'obtenir des rapports plus détaillés sur l'utilisation ;
    • afficher des rapports d'utilisation avec plus de 30 jours de données dans Cloud Console ;
    • utiliser les outils Maps Analytics pour l'API Maps JavaScript.

En savoir plus sur les rapports disponibles pour les clients du forfait Premium

Authentification via une clé API

Créer des clés API

Une clé API est un identifiant unique qui permet d'authentifier les requêtes associées à votre projet à des fins d'utilisation et de facturation. Vous devez associer au moins une clé API à votre projet.

Pour créer une clé API, procédez comme suit :

  1. Dans la Cloud Console, sur la page du sélecteur de projet, sélectionnez ou créez un projet Google Cloud pour lequel vous souhaitez ajouter une clé API.

    Accéder à la page du sélecteur de projet

    Remarque : Pour bénéficier d'un accès complet aux fonctionnalités de leur forfait, les clients Premium doivent utiliser le projet associé à leur compte Premium. Lorsque vous avez acheté la licence, vous avez reçu le nom de l'élément Premium au format suivant : gme-[company] & proj-[number] ([type]). Pour vous assurer que vous accédez au bon projet, connectez-vous à la console en tant que propriétaire du projet à l'adresse console.cloud.google.com/project/number (remplacez number par votre numéro de projet). Vous trouverez le propriétaire du projet dans la lettre de bienvenue.

  2. Accédez à la page API et services > Identifiants.

    Accéder à la page "Identifiants"

  3. Sur la page Identifiants, cliquez sur Créer des identifiants > Clé API.
    La boîte de dialogue Clé API créée affiche la clé API que vous venez de créer.
  4. Cliquez sur Fermer.
    La nouvelle clé API est répertoriée sur la page Identifiants sous Clés API.
    (N'oubliez pas de restreindre la clé API avant de l'utiliser en production.)

Ajouter la clé API à votre application

Vous devez inclure une clé API dans chaque requête Google Maps Platform. Dans l'exemple suivant, remplacez YOUR_API_KEY par votre clé API.

<script async defer src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap"
type="text/javascript"></script>

Restreindre les clés API

Restreindre les clés API permet de renforcer la sécurité de votre application, car vous vous assurez que seules les requêtes autorisées sont effectuées avec votre clé API. Nous vous recommandons vivement de suivre les instructions pour définir des restrictions au niveau de vos clés API. Pour en savoir plus, consultez les bonnes pratiques concernant les clés API.

Pour restreindre une clé API :

  1. Accédez à la page API et services > Identifiants.

    Accéder à la page "Identifiants"

  2. Sélectionnez la clé API pour laquelle vous souhaitez définir une restriction. La page des propriétés de la clé API s'affiche.
  3. Sous Restrictions relatives aux clés, définissez les restrictions suivantes :
    • Restrictions d'application :
      1. Pour accepter les requêtes depuis la liste de sites Web que vous fournissez, sélectionnez Référents HTTP (sites Web) dans la liste Restrictions relatives aux applications.
      2. Spécifiez un ou plusieurs sites Web référents. Par exemple, *.google.com accepte tous les sites se terminant par google.com tels que https://developers.google.com.

        Remarque : Les référents "file://" ont besoin d'une représentation spéciale pour être ajoutés à la restriction de clé. Vous devez remplacer la partie "file://" par "__file_url__" avant de l'ajouter à la restriction de clé. Par exemple, "file:///path/to/" doit être au format "__file_url__//path/to/*". Une fois les référents "file://" activés, nous vous recommandons de vérifier régulièrement votre utilisation pour vous assurer qu'elle correspond à vos attentes.

    • Restrictions relatives aux API :
      1. Cliquez sur Restreindre la clé.
      2. Sélectionnez Google Maps Platform dans la liste déroulante Sélectionner des API.
        (Si Google Maps Platform ne figure pas dans la liste, vous devez l'activer.)
      3. Si votre projet utilise la bibliothèque Places, sélectionnez également API Places. De même, si votre projet utilise d'autres services dans l'API JavaScript (service Directions, service Distance Matrix, service Elevation et/ou service Geocoding), vous devez également activer et sélectionner l'API correspondante dans cette liste.
  4. Pour finaliser vos modifications, cliquez sur Enregistrer.

Authentification via un ID client

Une fois que vous avez acheté votre forfait Premium Google Maps Platform, vous recevez un e-mail de bienvenue de Google contenant votre ID client, qui permet d'accéder à différents rapports et outils du forfait Premium de Google Maps Platform.

Tous les ID client commencent par le préfixe gme-. Vous trouverez ci-dessous le format d'un ID client type.

gme-[company] & proj-[number] ([type])

Vous pouvez authentifier vos requêtes avec l'API Maps JavaScript à l'aide d'un ID client en utilisant l'enregistrement d'URL (au lieu d'une clé API).

Remarque : Cet ID client n'est pas une clé et il ne peut être utilisé que par les URL que vous autorisez. En savoir plus sur l'enregistrement des URL autorisées

Spécifier un ID client lors du chargement de l'API

Le code ci-dessous vous montre comment remplacer YOUR_CLIENT_ID par votre propre ID client lors du chargement de l'API Maps JavaScript.

  <script async defer
  src="https://maps.googleapis.com/maps/api/js?client=YOUR_CLIENT_ID&v=quarterly&callback=initMap"></script>

Vous devez spécifier la version (également appelée version feature-stable) ou une version antérieure, en ajoutant un paramètre v=quarterly. Les applications utilisant la version expérimentale ne sont pas couvertes par le contrat de niveau de service du forfait Premium de Google Maps Platform.

Remarque : Si vous basculez sur un ID client et que vous utilisiez précédemment une clé API pour l'authentification, vous devez supprimer le paramètre key avant de charger l'API. L'API ne se chargera pas si vous incluez à la fois un ID client et une clé API.

Enregistrer les URL autorisées

Afin d'empêcher les tiers d'utiliser votre ID client sur leur propre site Web, l'utilisation de votre ID client est limitée à une liste d'URL que vous autorisez spécifiquement.

Pour consulter les URL que vous avez déjà autorisées ou pour autoriser d'autres URL :

  1. Connectez-vous à Google Cloud Console.
  2. Dans le menu de gauche, cliquez sur Maps: Manage Client ID (Maps : gérer l'ID client).

Vous pouvez ajouter jusqu'à 100 URL à la fois. Un ID client peut être associé à 3 000 URL autorisées au maximum. Si vous prévoyez que votre application héberge du contenu Google Maps provenant de plus de 3 000 emplacements, utilisez plutôt des clés API.

Les points suivants concernent les URL qui sont autorisées :

Il n'est pas nécessaire que le nom de domaine ou l'adresse IP soient accessibles publiquement.
Par exemple, http://myintranet et http://192.168.1.1 sont des entrées valides.
Tous les sous-domaines d'un domaine spécifié sont également autorisés.
Par exemple, si http://example.com est autorisé, http://www.example.com l'est également. L'inverse n'est pas vrai : si http://www.example.com est autorisé, http://example.com ne l'est pas nécessairement.
Tous les sous-chemins d'un chemin d'accès autorisé sont également autorisés.
Par exemple, si http://example.com est autorisé, http://example.com/foo l'est également. De plus, comme les sous-domaines d'un domaine spécifié sont également autorisés, http://sub.example.com/bar est autorisé.
Les chemins d'accès sont sensibles à la casse.
Par exemple, http://www.example.com/ThisPath/ n'est pas identique à http://www.example.com/thispath/.
Vous pouvez limiter les URL valides à celles utilisant certains ports.
Par exemple, si http://example.com:8080/foo est spécifié, http://example.com n'est pas autorisé.
Les protocoles HTTP et HTTPS sont considérés comme indiquant des URL différentes.
Par exemple, si https://example.com est autorisé, http://example.com ne l'est pas nécessairement.

Toutes les règles ci-dessus s'appliquent à chaque autorisation, c'est pourquoi vous devez planifier minutieusement vos autorisations. Par exemple, comme tous les sous-chemins d'un chemin d'accès spécifié sont autorisés, ainsi que tous les sous-domaines, vous pourriez finalement autoriser des pages alors que vous n'en aviez pas l'intention. Exemple :

http://example.com/ autorise également http://sub.example.com/path.

Pour plus d'informations, consultez Dépanner les problèmes liés à l'autorisation d'URL du forfait Premium Google Maps Platform.