En esta página, se describe cómo usar los métodos clave de API para lo siguiente:
- Enumera las claves de API de un proyecto
- Obtén metadatos para una clave de API
- Obtén la string de clave
- Obtén el nombre de la clave y el proyecto para una string de clave
Antes de comenzar
La página usa curl
con la herramienta de línea de comandos oauth2l para enviar solicitudes a la API de claves de API. Consulta Comenzar a usar las claves de API para obtener detalles sobre cómo configurar la API.
Obtén una lista de las claves de API de un proyecto
Puedes obtener una lista de todas las claves que pertenecen a un proyecto de Google Cloud con el método ListKeys
:
gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys
Si tienes éxito, obtendrás una respuesta similar a la siguiente:
{ "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==" } ] }
De forma predeterminada, el método ListKeys
muestra una lista de claves de API utilizables.
A fin de ver las claves de lista que se marcaron para su eliminación, agrega un parámetro de consulta con filter=state:DELETED
:
gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?filter=state:DELETED
Si tienes éxito, obtendrás una respuesta similar a la siguiente:
{ "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==" } ] }
El campo deleteTime
almacena cuando se emitió el comando de eliminación.
Las claves se borran de forma permanente 30 días después de que se emite el comando de eliminación.
Si tienes una gran cantidad de claves de API en tu proyecto, es posible que prefieras paginar los resultados en lugar de mostrarlas todas. Para controlar la cantidad o resultados por página, agrega el parámetro de búsqueda pageSize
establecido en la cantidad de resultados que deseas mostrar:
gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?pageSize=25
El final de la respuesta contiene el campo nextPageToken
. Para obtener la siguiente página de resultados, incluye el token en la siguiente llamada; para ello, agrega el parámetro de consulta pageToken
:
gcurl 'https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?pageSize=25&pageToken=TOKEN'
Ten en cuenta que debes encerrar la URL entre comillas simples, porque &
es un carácter especial de Bash.
Obtén metadatos para una clave de API
Para obtener metadatos sobre una clave de API específica, llama al método GetKey
con Key.name
:
gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys/KEY_ID
Obtén la string de clave
Por seguridad, los métodos ListKeys
y GetKey
no muestran Key.keyString
. Para obtener el keyString
de una clave de API, llama al método GetKeyString
con Key.name
:
gcurl https://apikeys.googleapis.com/v2/Key.name/keyString
El usuario que realiza la llamada debe tener el permiso apikeys.keys.getKeyString
para llamar al método GetKeyString
.
Busca un nombre de clave y un proyecto por string de clave
Si tienes un keyString
y necesitas buscar la clave name
y el proyecto al que pertenece la clave de API, llama al método LookupKey
y especifica el parámetro de búsqueda keyString
:
gcurl https://apikeys.googleapis.com/v2/keys:lookupKey?keyString=KEY_STRING
La respuesta es similar al ejemplo a continuación:
{ "parent": "projects/12345678/locations/global", "name": "projects/12345678/locations/global/keys/2c437be3-1c77-417b-8f6f-748189760227" }
En la respuesta:
- El campo
parent
contiene el número del proyecto de Cloud en el que se creó la clave de API. - El campo
name
contiene el identificador único de la clave de API.
¿Qué sigue?
- Cómo agregar restricciones a las claves de API
- Visualiza los registros de auditoría de Cloud
- Solución de problemas