Ottenere informazioni sulle chiavi API

Questa pagina descrive come utilizzare i metodi delle chiavi API per:

Prima di iniziare

La pagina utilizza curl con lo strumento a riga di comando oauth2l per inviare richieste all'API Chiavi API. Consulta la Guida introduttiva alle chiavi API per i dettagli su come configurare gli esperimenti con l'API.

Elenco delle chiavi API in un progetto

Per ottenere un elenco di tutte le chiavi di proprietà di un progetto Google Cloud con il metodo ListKeys:

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

In caso di successo, ricevi una risposta simile alla seguente:

{
  "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=="
    }
  ]
}

Per impostazione predefinita, il metodo ListKeys restituisce un elenco di chiavi API utilizzabili. Per visualizzare le chiavi dell'elenco contrassegnate per l'eliminazione, aggiungi un parametro di query con filter=state:DELETED :

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

In caso di successo, ricevi una risposta simile alla seguente:

{
  "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=="
    }
  ]
}

Il campo deleteTime memorizza quando è stato emesso il comando "delete". Le chiavi vengono eliminate definitivamente 30 giorni dopo l'emissione del comando di eliminazione.

Se il tuo progetto contiene molte chiavi API, potresti preferire la pagina dei risultati anziché tutte le chiavi restituite. Per controllare il numero o i risultati per pagina, aggiungi il parametro di query pageSize impostato sul numero di risultati che vuoi restituire:

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

La fine della risposta contiene il campo nextPageToken. Per ottenere la pagina successiva dei risultati, includi il token nella chiamata successiva aggiungendo il parametro di query pageToken:

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

Tieni presente che l'URL deve essere racchiuso tra virgolette singole perché & è un carattere speciale di Bash.

Recupero di metadati per una chiave API

Per recuperare i metadati relativi a una chiave API specifica, chiama il metodo GetKey con Key.name:

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

Recupero della stringa chiave

Per motivi di sicurezza, i metodi ListKeys e GetKey non restituiscono il Key.keyString. Per recuperare keyString per una chiave API, chiama il metodo GetKeyString con Key.name:

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

L'utente chiamante deve avere l'autorizzazione apikeys.keys.getKeyString per chiamare il metodo GetKeyString.

Ricerca di un nome e del progetto della chiave per stringa di chiavi

Se disponi di un keyString e devi cercare la chiave name e il progetto che possiede la chiave API, chiama il metodo LookupKey e specifica il parametro della query keyString di questo trimestre.

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

La risposta è simile alla seguente:

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

Nella risposta:

  • Il campo parent contiene il numero di progetto del progetto Cloud in cui è stata creata la chiave API.
  • Il campo name contiene l'identificatore univoco della chiave API.

Passaggi successivi