בדף הזה מוסבר איך להשתמש ב-methods של מפתח API כדי:
- הצגת רשימה של מפתחות API בפרויקט
- אחזור מטא-נתונים של מפתח API
- קבלת מחרוזת המפתח
- איתור שם המפתח והפרויקט ממחרוזת של מפתח
הצגת רשימה של מפתחות API בפרויקט
אפשר לקבל רשימה של כל המפתחות שבבעלות Google Cloud פרויקט באמצעות ה-method ListKeys:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ 'https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys'
אם הפעולה מצליחה, מקבלים תגובה שדומה לזו:
{
"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=="
}
]
}כברירת מחדל, ה-method ListKeys מחזירה רשימה של מפתחות API שאפשר להשתמש בהם.
כדי לראות את רשימת כל המפתחות, כולל מפתחות שמסומנים למחיקה, מוסיפים את פרמטר השאילתה 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'
אם הפעולה מצליחה, מקבלים תגובה שדומה לזו:
{
"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=="
}
]
}בשדה deleteTime מאוחסן המועד שבו ניתנה פקודת המחיקה.
המפתחות נמחקים באופן סופי 30 יום אחרי שהונפקה פקודת המחיקה.
אם יש לכם הרבה מפתחות API בפרויקט, יכול להיות שתעדיפו להציג את התוצאות בדפים במקום להחזיר את כל המפתחות. כדי לשלוט במספר התוצאות בדף, מוסיפים את פרמטר השאילתה pageSize ומגדירים אותו למספר התוצאות שרוצים להחזיר:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ 'https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?pageSize=25'
סוף התשובה מכיל את השדה nextPageToken. כדי לקבל את דף התוצאות הבא, צריך לכלול את האסימון בקריאה הבאה על ידי הוספת פרמטר השאילתה 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'
אחזור מטא-נתונים של מפתח API
כדי לקבל מטא-נתונים על מפתח API ספציפי, מפעילים את השיטה GetKey עם הפרמטרים 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'
איתור מחרוזת המפתח
מטעמי אבטחה, השיטות ListKeys ו-GetKey לא מחזירות את Key.keyString. כדי לקבל את keyString של מפתח API, מפעילים את method GetKeyString עם Key.name:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ 'https://apikeys.googleapis.com/v2/Key.name/keyString'
למשתמש שמבצע את הקריאה צריכה להיות ההרשאה apikeys.keys.getKeyString כדי להפעיל את ה-method GetKeyString.
חיפוש שם של מפתח ופרויקט לפי מחרוזת של מפתח
אם יש לכם keyString ואתם צריכים לחפש את המפתח name ואת הפרויקט שבבעלותו מפתח ה-API, אתם יכולים לקרוא ל-method LookupKey ולציין את פרמטר השאילתה keyString:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ 'https://apikeys.googleapis.com/v2/keys:lookupKey?keyString=KEY_STRING'
התגובה אמורה להיראות כך:
{
"parent": "projects/12345678/locations/global",
"name": "projects/12345678/locations/global/keys/2c437be3-1c77-417b-8f6f-748189760227"
}בתשובה:
- השדה
parentמכיל את מספר הפרויקט של הפרויקטparentשבו נוצר מפתח ה-API. Google Cloud - השדה
nameמכיל את המזהה הייחודי של מפתח ה-API.