Halaman ini menjelaskan cara menggunakan metode kunci API untuk:
- Mencantumkan kunci API dalam project
- Mendapatkan metadata untuk kunci API
- Mendapatkan string kunci
- Mendapatkan nama kunci dan project untuk string kunci
Mencantumkan kunci API dalam project
Anda bisa mendapatkan daftar semua kunci yang dimiliki oleh Cloud de Confiance project dengan
ListKeys metode:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ '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:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ '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 perintah penghapusan dikeluarkan.
Kunci akan dihapus secara permanen 30 hari setelah perintah penghapusan dikeluarkan.
Jika Anda memiliki banyak kunci API di project, sebaiknya bagi 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:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ 'https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?pageSize=25'
Akhir respons berisi kolom nextPageToken. Untuk mendapatkan halaman hasil berikutnya, sertakan token dalam panggilan berikutnya dengan menambahkan parameter kueri pageToken:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ 'https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?pageSize=25&pageToken=TOKEN'
Mendapatkan metadata untuk kunci API
Untuk mendapatkan metadata tentang kunci API tertentu, panggil metode GetKey dengan Key.name:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ 'https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys/KEY_ID'
Mendapatkan string kunci
Demi keamanan, metode ListKeys dan GetKey tidak menampilkan Key.keyString. Untuk mendapatkan keyString untuk kunci API, panggil metode GetKeyString dengan Key.name:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ '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 name kunci dan project yang memiliki kunci API, panggil metode LookupKey dan tentukan parameter kueri keyString:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ '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
parentberisi nomor project dari Cloud de Confiance project tempat kunci API dibuat. - Kolom
nameberisi ID unik untuk kunci API.