Obtenir des informations sur les clés API

Cette page explique comment utiliser les méthodes de clé API pour:

Avant de commencer

La page utilisecurl avec la oauth2l pour envoyer des requêtes à l'API Keys API. Pour savoir comment configurer l'API, consultez la page Premiers pas avec les clés API.

Répertorier des clés API dans un projet

Vous pouvez obtenir la liste de toutes les clés appartenant à un projet Google Cloud avec la méthode ListKeys:

gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys

Si l'opération réussit, vous obtenez une réponse semblable à ce qui suit:

{
  "keys": [
    {
      "name": "projects/12345678/locations/global/keys/2885bf87-5b84-47fa-92af-08c3e9337349",
      "displayName": "API key 2",
      "createTime": "2019-05-29T22:07:22.036Z",
      "uid": "2885bf87-5b84-47fa-92af-08c3e9337349",
      "updateTime": "2019-05-29T22:07:22.058623Z",
      "restrictions": {
        "androidKeyRestrictions": {}
      },
      "etag": "zHib8eXEMCxe4ayQEbIaZg=="
    },
    {
      "name": "projects/12345678/locations/global/keys/a4db08b7-5729-4ba9-8c08-f2df493465a1",
      "displayName": "API key 1",
      "createTime": "2019-05-29T22:06:58.844Z",
      "uid": "a4db08b7-5729-4ba9-8c08-f2df493465a1",
      "updateTime": "2019-05-29T22:06:58.855103Z",
      "restrictions": {
        "androidKeyRestrictions": {}
      },
      "etag": "0L5KcPMGoNi53K5+FqPxiw=="
    }
  ]
}

Par défaut, la méthode ListKeys renvoie une liste des clés API utilisables. Pour afficher les clés de liste marquées pour suppression, ajoutez un paramètre de requête avec filter=state:DELETED :

gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?filter=state:DELETED

Si l'opération réussit, vous obtenez une réponse semblable à ce qui suit:

{
  "keys": [
    {
      "name": "projects/12345678/locations/global/keys/5d3564ad-f08e-48df-b0ca-0f50858ba3f2",
      "displayName": "Key 1",
      "createTime": "2019-06-12T04:47:30.214Z",
      "uid": "5d3564ad-f08e-48df-b0ca-0f50858ba3f2",
      "updateTime": "2021-03-05T22:35:37.387645Z",
      "deleteTime": "2021-03-05T22:35:37.290544Z",
      "etag": "V96UGAyyz+6sUHttzK42pQ=="
    },
    {
      "name": "projects/12345678/locations/global/keys/7ad567fa-c11b-4903-99dc-88f89da7d73a",
      "displayName": "Key 2",
      "createTime": "2019-06-12T00:47:27.778Z",
      "uid": "7ad567fa-c11b-4903-99dc-88f89da7d73a",
      "updateTime": "2021-03-05T22:23:57.002187Z",
      "deleteTime": "2021-03-05T22:23:56.350234Z",
      "etag": "njPE6YjwHlrh6TLyxHibBg=="
    }
  ]
}

Le champ deleteTime stocke la date d'émission de la commande de suppression. Les clés sont supprimées définitivement 30 jours après l'émission de la commande de suppression.

Si votre projet comporte un grand nombre de clés API, vous préférerez peut-être les résultats plutôt que de renvoyer toutes les clés. Pour contrôler le nombre ou les résultats par page, ajoutez le paramètre de requête pageSize au nombre de résultats que vous souhaitez afficher:

gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?pageSize=25

La fin de la réponse contient le champ nextPageToken. Pour obtenir la page de résultats suivante, incluez le jeton dans l'appel suivant en ajoutant le paramètre de requête pageToken:

gcurl 'https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?pageSize=25&pageToken=TOKEN'

Notez que vous devez entourer l'URL entre guillemets simples, car l'élément & est un caractère Bash spécial.

Obtenir des métadonnées pour une clé API

Pour obtenir des métadonnées sur une clé API spécifique, appelez la méthode GetKey avec Key.name:

gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys/KEY_ID

Obtenir la chaîne de clé

Pour des raisons de sécurité, les méthodes ListKeys et GetKey ne renvoient pas l'objet Key.keyString. Pour obtenir la valeur keyString d'une clé API, appelez la méthode GetKeyString avec Key.name:

gcurl https://apikeys.googleapis.com/v2/Key.name/keyString

L'utilisateur appelant doit disposer de l'autorisation apikeys.keys.getKeyString pour appeler la méthode GetKeyString.

Rechercher un nom de clé et un projet par chaîne de clé

Si vous disposez d'une ressource keyString et que vous devez rechercher la clé name et le projet propriétaire de la clé API, appelez la méthode LookupKey et spécifiez le paramètre de requête keyString. :

gcurl https://apikeys.googleapis.com/v2/keys:lookupKey?keyString=KEY_STRING

La réponse est semblable à ce qui suit :

{
  "parent": "projects/12345678/locations/global",
  "name": "projects/12345678/locations/global/keys/2c437be3-1c77-417b-8f6f-748189760227"
}

Dans la réponse:

  • Le champ parent contient le numéro du projet Cloud dans lequel la clé API a été créée.
  • Le champ name contient l'identifiant unique de la clé API.

Étape suivante