- Resource: Key
- Restrictions
- BrowserKeyRestrictions
- ServerKeyRestrictions
- AndroidKeyRestrictions
- AndroidApplication
- IosKeyRestrictions
- ApiTarget
- Methods
Resource: Key
The representation of a key managed by the API Keys API.
| JSON representation | 
|---|
| {
  "name": string,
  "uid": string,
  "displayName": string,
  "keyString": string,
  "createTime": string,
  "updateTime": string,
  "deleteTime": string,
  "annotations": {
    string: string,
    ...
  },
  "restrictions": {
    object ( | 
| Fields | |
|---|---|
| name | 
 Output only. The resource name of the key. The  NOTE: Key is a global resource; hence the only supported value for location is  | 
| uid | 
 Output only. Unique id in UUID4 format. | 
| displayName | 
 Human-readable display name of this key that you can modify. The maximum length is 63 characters. | 
| keyString | 
 Output only. An encrypted and signed value held by this key. This field can be accessed only through the  | 
| createTime | 
 Output only. A timestamp identifying the time this key was originally created. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples:  | 
| updateTime | 
 Output only. A timestamp identifying the time this key was last updated. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples:  | 
| deleteTime | 
 Output only. A timestamp when this key was deleted. If the resource is not deleted, this must be empty. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples:  | 
| annotations | 
 Annotations is an unstructured key-value map stored with a policy that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. An object containing a list of  | 
| restrictions | 
 Key restrictions. | 
| etag | 
 Output only. A checksum computed by the server based on the current value of the Key resource. This may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. See https://google.aip.dev/154. | 
| serviceAccountEmail | 
 Optional. The email address of the service account the key is bound to. | 
Restrictions
Describes the restrictions on the key.
| JSON representation | 
|---|
| { "apiTargets": [ { object ( | 
| Fields | |
|---|---|
| apiTargets[] | 
 A restriction for a specific service and optionally one or more specific methods. Requests are allowed if they match any of these restrictions. If no restrictions are specified, all targets are allowed. | 
| Union field client_restrictions. The websites, IP addresses, Android apps, or iOS apps (the clients) that are allowed to use the key. You can specify only one type of client restrictions per key.client_restrictionscan be only one of the following: | |
| browserKeyRestrictions | 
 The HTTP referrers (websites) that are allowed to use the key. | 
| serverKeyRestrictions | 
 The IP addresses of callers that are allowed to use the key. | 
| androidKeyRestrictions | 
 The Android apps that are allowed to use the key. | 
| iosKeyRestrictions | 
 The iOS apps that are allowed to use the key. | 
BrowserKeyRestrictions
The HTTP referrers (websites) that are allowed to use the key.
| JSON representation | 
|---|
| { "allowedReferrers": [ string ] } | 
| Fields | |
|---|---|
| allowedReferrers[] | 
 A list of regular expressions for the referrer URLs that are allowed to make API calls with this key. | 
ServerKeyRestrictions
The IP addresses of callers that are allowed to use the key.
| JSON representation | 
|---|
| { "allowedIps": [ string ] } | 
| Fields | |
|---|---|
| allowedIps[] | 
 A list of the caller IP addresses that are allowed to make API calls with this key. | 
AndroidKeyRestrictions
The Android apps that are allowed to use the key.
| JSON representation | 
|---|
| {
  "allowedApplications": [
    {
      object ( | 
| Fields | |
|---|---|
| allowedApplications[] | 
 A list of Android applications that are allowed to make API calls with this key. | 
AndroidApplication
Identifier of an Android application for key use.
| JSON representation | 
|---|
| { "sha1Fingerprint": string, "packageName": string } | 
| Fields | |
|---|---|
| sha1Fingerprint | 
 The SHA1 fingerprint of the application. For example, both sha1 formats are acceptable : DA:39:A3:EE:5E:6B:4B:0D:32:55:BF:EF:95:60:18:90:AF:D8:07:09 or DA39A3EE5E6B4B0D3255BFEF95601890AFD80709. Output format is the latter. | 
| packageName | 
 The package name of the application. | 
IosKeyRestrictions
The iOS apps that are allowed to use the key.
| JSON representation | 
|---|
| { "allowedBundleIds": [ string ] } | 
| Fields | |
|---|---|
| allowedBundleIds[] | 
 A list of bundle IDs that are allowed when making API calls with this key. | 
ApiTarget
A restriction for a specific service and optionally one or multiple specific methods. Both fields are case insensitive.
| JSON representation | 
|---|
| { "service": string, "methods": [ string ] } | 
| Fields | |
|---|---|
| service | 
 The service for this restriction. It should be the canonical service name, for example:  | 
| methods[] | 
 Optional. List of one or more methods that can be called. If empty, all methods for the service are allowed. A wildcard (*) can be used as the last symbol. Valid examples:   | 
| Methods | |
|---|---|
| 
 | Creates a new API key. | 
| 
 | Deletes an API key. | 
| 
 | Gets the metadata for an API key. | 
| 
 | Get the key string for an API key. | 
| 
 | Lists the API keys owned by a project. | 
| 
 | Patches the modifiable fields of an API key. | 
| 
 | Undeletes an API key which was deleted within 30 days. |