このページでは、API キーメソッドを使用して次の操作を行う方法について説明します。
始める前に
このページでは、curl と Google Cloud CLI を使用して API Keys API にリクエストを送信します。API のテストを開始するための設定について詳しくは、API キーのスタートガイドをご覧ください。
プロジェクト内の API キーの一覧表示
ListKeys メソッドを使用すると、 Google Cloud プロジェクトが所有するすべてのキーのリストを取得できます。
gcurl 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=="
}
]
}デフォルトでは、ListKeys メソッドは使用可能な API キーのリストを返します。削除対象としてマークされた鍵を含むすべての鍵のリストを表示するには、クエリ パラメータ show_deleted=true を追加します。
gcurl 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 クエリ パラメータを追加します。
gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?pageSize=25
レスポンスの末尾には nextPageToken フィールドが含まれます。結果の次のページを取得するには、pageToken クエリ パラメータを追加して、次の呼び出しにトークンを含めます。
gcurl 'https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys?pageSize=25&pageToken=TOKEN'
& は特別な Bash 文字であるため、URL を単一引用符で囲む必要があります。
API キーのメタデータを取得する
特定の API キーに関するメタデータを取得するには、Key.name を指定して GetKey メソッドを呼び出します。
gcurl https://apikeys.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/keys/KEY_ID
キー文字列の取得
セキュリティ上の理由から、ListKeys メソッドと GetKey メソッドは Key.keyString を返しません。API キーの keyString を取得するには、Key.name を指定して GetKeyString メソッドを呼び出します。
gcurl https://apikeys.googleapis.com/v2/Key.name/keyString
呼び出し元のユーザーには、GetKeyString メソッドを呼び出すための apikeys.keys.getKeyString 権限が必要です。
キー文字列でキー名とプロジェクトを検索する
keyString があり、キー name と API キーを所有するプロジェクトを検索する必要がある場合は、LookupKey メソッドを呼び出して keyString クエリ パラメータを指定します。
gcurl 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フィールドには、API キーが作成された Google Cloud プロジェクトのプロジェクト番号が含まれます。nameフィールドには、API キーの一意の識別子が含まれます。