Mendapatkan informasi tentang kunci API

Halaman ini menjelaskan cara menggunakan metode kunci API untuk:

Sebelum memulai

Halaman ini menggunakan curl dan Google Cloud CLI untuk mengirim permintaan ke API Keys API. Lihat Mulai menggunakan API Kunci API untuk mengetahui detail tentang cara menyiapkan eksperimen dengan API.

Mencantumkan kunci API dalam project

Anda bisa mendapatkan daftar semua kunci yang dimiliki oleh project Cloud de Confiance dengan metode ListKeys:

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

Jika berhasil, Anda akan mendapatkan respons yang mirip dengan berikut ini:

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

Secara default, metode ListKeys menampilkan daftar kunci API yang dapat digunakan. Untuk melihat daftar semua kunci, termasuk kunci yang ditandai untuk dihapus, tambahkan parameter kueri show_deleted=true:

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

Jika berhasil, Anda akan mendapatkan respons yang mirip dengan berikut ini:

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

Kolom deleteTime menyimpan waktu saat perintah penghapusan dikeluarkan. Kunci akan dihapus secara permanen 30 hari setelah perintah penghapusan dikeluarkan.

Jika memiliki banyak kunci API di project, Anda mungkin lebih memilih untuk membagi hasil menjadi beberapa halaman daripada menampilkan semua kunci. Untuk mengontrol jumlah atau hasil per halaman, tambahkan parameter kueri pageSize yang ditetapkan ke jumlah hasil yang ingin Anda tampilkan:

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

Bagian akhir respons berisi kolom nextPageToken. Untuk mendapatkan halaman hasil berikutnya, sertakan token dalam panggilan berikutnya dengan menambahkan parameter kueri pageToken:

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

Perhatikan bahwa Anda harus mengepung URL dalam tanda kutip tunggal karena & adalah karakter Bash khusus.

Mendapatkan metadata untuk kunci API

Untuk mendapatkan metadata tentang kunci API tertentu, panggil metode GetKey dengan Key.name:

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

Mendapatkan string kunci

Untuk keamanan, metode ListKeys dan GetKey tidak menampilkan Key.keyString. Untuk mendapatkan keyString untuk kunci API, panggil metode GetKeyString dengan Key.name:

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

Pengguna yang memanggil harus memiliki izin apikeys.keys.getKeyString untuk memanggil metode GetKeyString.

Mencari nama kunci dan project berdasarkan string kunci

Jika Anda memiliki keyString dan perlu mencari kunci name dan project yang memiliki kunci API, panggil metode LookupKey dan tentukan parameter kueri keyString:

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

Responsnya mirip dengan hal berikut ini:

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

Dalam respons:

  • Kolom parent berisi nomor project dari project Cloud de Confiance tempat kunci API dibuat.
  • Kolom name berisi ID unik untuk kunci API.

Langkah berikutnya