Cette page explique comment utiliser les méthodes de clé API pour:
- Répertorier les clés API dans un projet
- Obtenir des métadonnées pour une clé API
- Obtenir la chaîne de clé
- Obtenir le nom de clé et le projet d'une chaîne de clé
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.