diff --git a/docs/dyn/accesscontextmanager_v1.accessPolicies.accessLevels.html b/docs/dyn/accesscontextmanager_v1.accessPolicies.accessLevels.html index e266474012..676d4d71a8 100644 --- a/docs/dyn/accesscontextmanager_v1.accessPolicies.accessLevels.html +++ b/docs/dyn/accesscontextmanager_v1.accessPolicies.accessLevels.html @@ -97,7 +97,7 @@
Updates an access level. The long-running operation from this RPC has a successful status after the changes to the access level propagate to long-lasting storage. If access levels contain errors, an error response is returned for the first error encountered.
replaceAll(parent, body=None, x__xgafv=None)
Replaces all existing access levels in an access policy with the access levels provided. This is done atomically. The long-running operation from this RPC has a successful status after all replacements propagate to long-lasting storage. If the replacement contains errors, an error response is returned for the first error encountered. Upon error, the replacement is cancelled, and existing access levels are not affected. The Operation.response field contains ReplaceAccessLevelsResponse. Removing access levels contained in existing service perimeters result in an error.
+Replaces all existing access levels in an access policy with the access levels provided. This is done atomically. The long-running operation from this RPC has a successful status after all replacements propagate to long-lasting storage. If the replacement contains errors, an error response is returned for the first error encountered. Upon error, the replacement is cancelled, and existing access levels are not affected. The `Operation.response` field contains `ReplaceAccessLevelsResponse`. Removing access levels contained in existing service perimeters results in an error.
testIamPermissions(resource, body=None, x__xgafv=None)
Returns the IAM permissions that the caller has on the specified Access Context Manager resource. The resource can be an AccessPolicy, AccessLevel, or ServicePerimeter. This method does not support other resources. **IAM Permissions**: No specific IAM permission is required to call this method. It returns the subset of the requested permissions that the caller possesses.
@@ -118,45 +118,45 @@replaceAll(parent, body=None, x__xgafv=None)
- Replaces all existing access levels in an access policy with the access levels provided. This is done atomically. The long-running operation from this RPC has a successful status after all replacements propagate to long-lasting storage. If the replacement contains errors, an error response is returned for the first error encountered. Upon error, the replacement is cancelled, and existing access levels are not affected. The Operation.response field contains ReplaceAccessLevelsResponse. Removing access levels contained in existing service perimeters result in an error.
+ Replaces all existing access levels in an access policy with the access levels provided. This is done atomically. The long-running operation from this RPC has a successful status after all replacements propagate to long-lasting storage. If the replacement contains errors, an error response is returned for the first error encountered. Upon error, the replacement is cancelled, and existing access levels are not affected. The `Operation.response` field contains `ReplaceAccessLevelsResponse`. Removing access levels contained in existing service perimeters results in an error.
Args:
parent: string, Required. Resource name for the access policy which owns these Access Levels. Format: `accessPolicies/{policy_id}` (required)
@@ -541,45 +541,45 @@ Method Details
"accessLevels": [ # Required. The desired Access Levels that should replace all existing Access Levels in the Access Policy.
{ # An `AccessLevel` is a label that can be applied to requests to Google Cloud services, along with a list of requirements necessary for the label to be applied.
"basic": { # `BasicLevel` is an `AccessLevel` using a set of recommended features. # A `BasicLevel` composed of `Conditions`.
- "combiningFunction": "A String", # How the `conditions` list should be combined to determine if a request is granted this `AccessLevel`. If AND is used, each `Condition` in `conditions` must be satisfied for the `AccessLevel` to be applied. If OR is used, at least one `Condition` in `conditions` must be satisfied for the `AccessLevel` to be applied. Default behavior is AND.
+ "combiningFunction": "A String", # How the `conditions` list should be combined to determine if a request is granted this `AccessLevel`. If `AND` is used, each `Condition` in `conditions` must be satisfied for the `AccessLevel` to be applied. If `OR` is used, at least one `Condition` in `conditions` must be satisfied for the `AccessLevel` to be applied. Default behavior is `AND`.
"conditions": [ # Required. A list of requirements for the `AccessLevel` to be granted.
- { # A condition necessary for an `AccessLevel` to be granted. The Condition is an AND over its fields. So a Condition is true if: 1) the request IP is from one of the listed subnetworks AND 2) the originating device complies with the listed device policy AND 3) all listed access levels are granted AND 4) the request was sent at a time allowed by the DateTimeRestriction.
- "devicePolicy": { # `DevicePolicy` specifies device specific restrictions necessary to acquire a given access level. A `DevicePolicy` specifies requirements for requests from devices to be granted access levels, it does not do any enforcement on the device. `DevicePolicy` acts as an AND over all specified fields, and each repeated field is an OR over its elements. Any unset fields are ignored. For example, if the proto is { os_type : DESKTOP_WINDOWS, os_type : DESKTOP_LINUX, encryption_status: ENCRYPTED}, then the DevicePolicy will be true for requests originating from encrypted Linux desktops and encrypted Windows desktops. # Device specific restrictions, all restrictions must hold for the Condition to be true. If not specified, all devices are allowed.
- "allowedDeviceManagementLevels": [ # Allowed device management levels, an empty list allows all management levels.
+ { # A condition necessary for an `AccessLevel` to be granted. The `Condition` is an AND over its fields. A `Condition` is true if: 1) the request IP is from one of the listed subnetworks, AND 2) the originating device complies with the listed device policy, AND 3) all listed access levels are granted, AND 4) the request was sent at a time allowed by the `DateTimeRestriction`.
+ "devicePolicy": { # `DevicePolicy` specifies device-specific restrictions necessary to acquire a given access level. A `DevicePolicy` specifies requirements for requests from devices to be granted access levels; it does not do any enforcement on the device. `DevicePolicy` acts as an AND over all specified fields, and each repeated field is an OR over its elements. Any unset fields are ignored. For example, if the proto is `{ os_type : DESKTOP_WINDOWS, os_type : DESKTOP_LINUX, encryption_status: ENCRYPTED}`, then the `DevicePolicy` will be true for requests originating from encrypted Linux desktops and encrypted Windows desktops. # Device-specific restrictions. All restrictions must hold for the `Condition` to be true. If not specified, all devices are allowed.
+ "allowedDeviceManagementLevels": [ # Allowed device management levels. An empty list allows all management levels.
"A String",
],
- "allowedEncryptionStatuses": [ # Allowed encryptions statuses, an empty list allows all statuses.
+ "allowedEncryptionStatuses": [ # Allowed encryption statuses. An empty list allows all statuses.
"A String",
],
- "osConstraints": [ # Allowed OS versions, an empty list allows all types and all versions.
+ "osConstraints": [ # Allowed OS versions. An empty list allows all types and all versions.
{ # A restriction on the OS type and version of devices making requests.
"minimumVersion": "A String", # The minimum allowed OS version. If not set, any version of this OS satisfies the constraint. Format: `"major.minor.patch"`. Examples: `"10.5.301"`, `"9.2.1"`.
"osType": "A String", # Required. The allowed OS type.
- "requireVerifiedChromeOs": True or False, # Only allows requests from devices with a verified Chrome OS. Verifications includes requirements that the device is enterprise-managed, conformant to domain policies, and the caller has permission to call the API targeted by the request.
+ "requireVerifiedChromeOs": True or False, # Only allows requests from devices with a verified Chrome OS. Verification includes requirements that the device is enterprise-managed, conforms to domain policies, and the caller has permission to call the API targeted by the request.
},
],
"requireAdminApproval": True or False, # Whether the device needs to be approved by the customer admin.
- "requireCorpOwned": True or False, # Whether the device needs to be corp owned.
- "requireScreenlock": True or False, # Whether or not screenlock is required for the DevicePolicy to be true. Defaults to `false`.
+ "requireCorpOwned": True or False, # Whether the device needs to be corp-owned.
+ "requireScreenlock": True or False, # Whether or not screenlock is required for the `DevicePolicy` to be true. Defaults to `false`.
},
- "ipSubnetworks": [ # CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for a CIDR IP address block, the specified IP address portion must be properly truncated (i.e. all the host bits must be zero) or the input is considered malformed. For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is not. Similarly, for IPv6, "2001:db8::/32" is accepted whereas "2001:db8::1/32" is not. The originating IP of a request must be in one of the listed subnets in order for this Condition to be true. If empty, all IP addresses are allowed.
+ "ipSubnetworks": [ # CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for a CIDR IP address block, the specified IP address portion must be properly truncated (that is, all the host bits must be zero) or the input is considered malformed. For example, `"192.0.2.0/24"` is accepted, but `"192.0.2.1/24"` is not. Similarly, for IPv6, `"2001:db8::/32"` is accepted, whereas `"2001:db8::1/32"` is not. The originating IP of a request must be in one of the listed subnets in order for this `Condition` to be true. If empty, all IP addresses are allowed.
"A String",
],
"members": [ # The request must be made by one of the provided user or service accounts. Groups are not supported. Syntax: `user:{emailid}` `serviceAccount:{emailid}` If not specified, a request may come from any user.
"A String",
],
- "negate": True or False, # Whether to negate the Condition. If true, the Condition becomes a NAND over its non-empty fields. Any non-empty field criteria evaluating to false will result in the Condition to be satisfied. Defaults to false.
+ "negate": True or False, # Whether to negate the `Condition`. If `true`, the `Condition` becomes a NAND over its non-empty fields. Any non-empty field criteria evaluating to `false` will result in the `Condition` being satisfied. Defaults to `false`.
"regions": [ # The request must originate from one of the provided countries/regions. Must be valid ISO 3166-1 alpha-2 codes.
"A String",
],
- "requiredAccessLevels": [ # A list of other access levels defined in the same `Policy`, referenced by resource name. Referencing an `AccessLevel` which does not exist is an error. All access levels listed must be granted for the Condition to be true. Example: "`accessPolicies/MY_POLICY/accessLevels/LEVEL_NAME"`
+ "requiredAccessLevels": [ # A list of other access levels defined in the same `Policy`, referenced by resource name. Referencing an `AccessLevel` that does not exist is an error. All access levels listed must be granted for the `Condition` to be true. Example: `"accessPolicies/MY_POLICY/accessLevels/LEVEL_NAME"`
"A String",
],
"vpcNetworkSources": [ # The request must originate from one of the provided VPC networks in Google Cloud. Cannot specify this field together with `ip_subnetworks`.
{ # The originating network source in Google Cloud.
- "vpcSubnetwork": { # Sub-segment ranges inside of a VPC Network. # Sub-segment ranges of a VPC network.
+ "vpcSubnetwork": { # Sub-segment ranges inside of a VPC network. # Sub-segment ranges of a VPC network.
"network": "A String", # Required. Network name. If the network is not part of the organization, the `compute.network.get` permission must be granted to the caller. Format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NETWORK_NAME}` Example: `//compute.googleapis.com/projects/my-project/global/networks/network-1`
- "vpcIpSubnetworks": [ # CIDR block IP subnetwork specification. The IP address must be an IPv4 address and can be a public or private IP address. Note that for a CIDR IP address block, the specified IP address portion must be properly truncated (i.e. all the host bits must be zero) or the input is considered malformed. For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is not. If empty, all IP addresses are allowed.
+ "vpcIpSubnetworks": [ # CIDR block IP subnetwork specification. The IP address must be an IPv4 address and can be a public or private IP address. Note that for a CIDR IP address block, the specified IP address portion must be properly truncated (that is, all the host bits must be zero) or the input is considered malformed. For example, `"192.0.2.0/24"` is accepted, but `"192.0.2.1/24"` is not. If empty, all IP addresses are allowed.
"A String",
],
},
@@ -598,7 +598,7 @@ Method Details
},
"description": "A String", # Description of the `AccessLevel` and its use. Does not affect behavior.
"name": "A String", # Identifier. Resource name for the `AccessLevel`. Format: `accessPolicies/{access_policy}/accessLevels/{access_level}`. The `access_level` component must begin with a letter, followed by alphanumeric characters or `_`. Its maximum length is 50 characters. After you create an `AccessLevel`, you cannot change its `name`.
- "title": "A String", # Human readable title. Must be unique within the Policy.
+ "title": "A String", # Human-readable title. Must be unique within the policy.
},
],
"etag": "A String", # Optional. The etag for the version of the Access Policy that this replace operation is to be performed on. If, at the time of replace, the etag for the Access Policy stored in Access Context Manager is different from the specified etag, then the replace operation will not be performed and the call will fail. This field is not required. If etag is not provided, the operation will be performed as if a valid etag is provided.
diff --git a/docs/dyn/accesscontextmanager_v1.accessPolicies.authorizedOrgsDescs.html b/docs/dyn/accesscontextmanager_v1.accessPolicies.authorizedOrgsDescs.html
index e866535e86..29a87087a7 100644
--- a/docs/dyn/accesscontextmanager_v1.accessPolicies.authorizedOrgsDescs.html
+++ b/docs/dyn/accesscontextmanager_v1.accessPolicies.authorizedOrgsDescs.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
create(parent, body=None, x__xgafv=None)
-Creates an authorized orgs desc. The long-running operation from this RPC has a successful status after the authorized orgs desc propagates to long-lasting storage. If a authorized orgs desc contains errors, an error response is returned for the first error encountered. The name of this `AuthorizedOrgsDesc` will be assigned during creation.
+Creates an authorized orgs desc. The long-running operation from this RPC has a successful status after the authorized orgs desc propagates to long-lasting storage. If an authorized orgs desc contains errors, an error response is returned for the first error encountered. The name of this `AuthorizedOrgsDesc` will be assigned during creation.
Deletes an authorized orgs desc based on the resource name. The long-running operation from this RPC has a successful status after the authorized orgs desc is removed from long-lasting storage.
@@ -94,7 +94,7 @@ Instance Methods
Retrieves the next page of results.
patch(name, body=None, updateMask=None, x__xgafv=None)
-Updates an authorized orgs desc. The long-running operation from this RPC has a successful status after the authorized orgs desc propagates to long-lasting storage. If a authorized orgs desc contains errors, an error response is returned for the first error encountered. Only the organization list in `AuthorizedOrgsDesc` can be updated. The name, authorization_type, asset_type and authorization_direction cannot be updated.
+Updates an authorized orgs desc. The long-running operation from this RPC has a successful status after the authorized orgs desc propagates to long-lasting storage. If an authorized orgs desc contains errors, an error response is returned for the first error encountered. Only the organization list in `AuthorizedOrgsDesc` can be updated. The `name`, `authorization_type`, `asset_type`, and `authorization_direction` cannot be updated.
Method Details
close()
@@ -103,7 +103,7 @@ Method Details
create(parent, body=None, x__xgafv=None)
- Creates an authorized orgs desc. The long-running operation from this RPC has a successful status after the authorized orgs desc propagates to long-lasting storage. If a authorized orgs desc contains errors, an error response is returned for the first error encountered. The name of this `AuthorizedOrgsDesc` will be assigned during creation.
+ Creates an authorized orgs desc. The long-running operation from this RPC has a successful status after the authorized orgs desc propagates to long-lasting storage. If an authorized orgs desc contains errors, an error response is returned for the first error encountered. The name of this `AuthorizedOrgsDesc` will be assigned during creation.
Args:
parent: string, Required. Resource name for the access policy which owns this Authorized Orgs Desc. Format: `accessPolicies/{policy_id}` (required)
@@ -111,11 +111,11 @@ Method Details
The object takes the form of:
{ # `AuthorizedOrgsDesc` contains data for an organization's authorization policy.
- "assetType": "A String", # The asset type of this authorized orgs desc. Valid values are `ASSET_TYPE_DEVICE`, and `ASSET_TYPE_CREDENTIAL_STRENGTH`.
- "authorizationDirection": "A String", # The direction of the authorization relationship between this organization and the organizations listed in the `orgs` field. The valid values for this field include the following: `AUTHORIZATION_DIRECTION_FROM`: Allows this organization to evaluate traffic in the organizations listed in the `orgs` field. `AUTHORIZATION_DIRECTION_TO`: Allows the organizations listed in the `orgs` field to evaluate the traffic in this organization. For the authorization relationship to take effect, all of the organizations must authorize and specify the appropriate relationship direction. For example, if organization A authorized organization B and C to evaluate its traffic, by specifying `AUTHORIZATION_DIRECTION_TO` as the authorization direction, organizations B and C must specify `AUTHORIZATION_DIRECTION_FROM` as the authorization direction in their `AuthorizedOrgsDesc` resource.
+ "assetType": "A String", # The asset type of this authorized orgs desc. Valid values are `ASSET_TYPE_DEVICE` and `ASSET_TYPE_CREDENTIAL_STRENGTH`.
+ "authorizationDirection": "A String", # The direction of the authorization relationship between this organization and the organizations listed in the `orgs` field. The valid values for this field include the following: `AUTHORIZATION_DIRECTION_FROM`: Allows this organization to evaluate traffic in the organizations listed in the `orgs` field. `AUTHORIZATION_DIRECTION_TO`: Allows the organizations listed in the `orgs` field to evaluate the traffic in this organization. For the authorization relationship to take effect, all of the organizations must authorize and specify the appropriate relationship direction. For example, if organization A authorizes organizations B and C to evaluate its traffic by specifying `AUTHORIZATION_DIRECTION_TO` as the authorization direction, organizations B and C must specify `AUTHORIZATION_DIRECTION_FROM` as the authorization direction in their `AuthorizedOrgsDesc` resource.
"authorizationType": "A String", # A granular control type for authorization levels. Valid value is `AUTHORIZATION_TYPE_TRUST`.
"name": "A String", # Identifier. Resource name for the `AuthorizedOrgsDesc`. Format: `accessPolicies/{access_policy}/authorizedOrgsDescs/{authorized_orgs_desc}`. The `authorized_orgs_desc` component must begin with a letter, followed by alphanumeric characters or `_`. After you create an `AuthorizedOrgsDesc`, you cannot change its `name`.
- "orgs": [ # The list of organization ids in this AuthorizedOrgsDesc. Format: `organizations/` Example: `organizations/123456`
+ "orgs": [ # The list of organization IDs in this `AuthorizedOrgsDesc`. Format: `organizations/{org_number}` Example: `organizations/123456`
"A String",
],
}
@@ -154,7 +154,7 @@ Method Details
Deletes an authorized orgs desc based on the resource name. The long-running operation from this RPC has a successful status after the authorized orgs desc is removed from long-lasting storage.
Args:
- name: string, Required. Resource name for the Authorized Orgs Desc. Format: `accessPolicies/{policy_id}/authorizedOrgsDesc/{authorized_orgs_desc_id}` (required)
+ name: string, Required. Resource name for the Authorized Orgs Desc. Format: `accessPolicies/{policy_id}/authorizedOrgsDescs/{authorized_orgs_desc_id}` (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -189,7 +189,7 @@ Method Details
Gets an authorized orgs desc based on the resource name.
Args:
- name: string, Required. Resource name for the Authorized Orgs Desc. Format: `accessPolicies/{policy_id}/authorizedOrgsDescs/{authorized_orgs_descs_id}` (required)
+ name: string, Required. Resource name for the Authorized Orgs Desc. Format: `accessPolicies/{policy_id}/authorizedOrgsDescs/{authorized_orgs_desc_id}` (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -199,11 +199,11 @@ Method Details
An object of the form:
{ # `AuthorizedOrgsDesc` contains data for an organization's authorization policy.
- "assetType": "A String", # The asset type of this authorized orgs desc. Valid values are `ASSET_TYPE_DEVICE`, and `ASSET_TYPE_CREDENTIAL_STRENGTH`.
- "authorizationDirection": "A String", # The direction of the authorization relationship between this organization and the organizations listed in the `orgs` field. The valid values for this field include the following: `AUTHORIZATION_DIRECTION_FROM`: Allows this organization to evaluate traffic in the organizations listed in the `orgs` field. `AUTHORIZATION_DIRECTION_TO`: Allows the organizations listed in the `orgs` field to evaluate the traffic in this organization. For the authorization relationship to take effect, all of the organizations must authorize and specify the appropriate relationship direction. For example, if organization A authorized organization B and C to evaluate its traffic, by specifying `AUTHORIZATION_DIRECTION_TO` as the authorization direction, organizations B and C must specify `AUTHORIZATION_DIRECTION_FROM` as the authorization direction in their `AuthorizedOrgsDesc` resource.
+ "assetType": "A String", # The asset type of this authorized orgs desc. Valid values are `ASSET_TYPE_DEVICE` and `ASSET_TYPE_CREDENTIAL_STRENGTH`.
+ "authorizationDirection": "A String", # The direction of the authorization relationship between this organization and the organizations listed in the `orgs` field. The valid values for this field include the following: `AUTHORIZATION_DIRECTION_FROM`: Allows this organization to evaluate traffic in the organizations listed in the `orgs` field. `AUTHORIZATION_DIRECTION_TO`: Allows the organizations listed in the `orgs` field to evaluate the traffic in this organization. For the authorization relationship to take effect, all of the organizations must authorize and specify the appropriate relationship direction. For example, if organization A authorizes organizations B and C to evaluate its traffic by specifying `AUTHORIZATION_DIRECTION_TO` as the authorization direction, organizations B and C must specify `AUTHORIZATION_DIRECTION_FROM` as the authorization direction in their `AuthorizedOrgsDesc` resource.
"authorizationType": "A String", # A granular control type for authorization levels. Valid value is `AUTHORIZATION_TYPE_TRUST`.
"name": "A String", # Identifier. Resource name for the `AuthorizedOrgsDesc`. Format: `accessPolicies/{access_policy}/authorizedOrgsDescs/{authorized_orgs_desc}`. The `authorized_orgs_desc` component must begin with a letter, followed by alphanumeric characters or `_`. After you create an `AuthorizedOrgsDesc`, you cannot change its `name`.
- "orgs": [ # The list of organization ids in this AuthorizedOrgsDesc. Format: `organizations/` Example: `organizations/123456`
+ "orgs": [ # The list of organization IDs in this `AuthorizedOrgsDesc`. Format: `organizations/{org_number}` Example: `organizations/123456`
"A String",
],
}
@@ -228,11 +228,11 @@ Method Details
{ # A response to `ListAuthorizedOrgsDescsRequest`.
"authorizedOrgsDescs": [ # List of all the Authorized Orgs Desc instances.
{ # `AuthorizedOrgsDesc` contains data for an organization's authorization policy.
- "assetType": "A String", # The asset type of this authorized orgs desc. Valid values are `ASSET_TYPE_DEVICE`, and `ASSET_TYPE_CREDENTIAL_STRENGTH`.
- "authorizationDirection": "A String", # The direction of the authorization relationship between this organization and the organizations listed in the `orgs` field. The valid values for this field include the following: `AUTHORIZATION_DIRECTION_FROM`: Allows this organization to evaluate traffic in the organizations listed in the `orgs` field. `AUTHORIZATION_DIRECTION_TO`: Allows the organizations listed in the `orgs` field to evaluate the traffic in this organization. For the authorization relationship to take effect, all of the organizations must authorize and specify the appropriate relationship direction. For example, if organization A authorized organization B and C to evaluate its traffic, by specifying `AUTHORIZATION_DIRECTION_TO` as the authorization direction, organizations B and C must specify `AUTHORIZATION_DIRECTION_FROM` as the authorization direction in their `AuthorizedOrgsDesc` resource.
+ "assetType": "A String", # The asset type of this authorized orgs desc. Valid values are `ASSET_TYPE_DEVICE` and `ASSET_TYPE_CREDENTIAL_STRENGTH`.
+ "authorizationDirection": "A String", # The direction of the authorization relationship between this organization and the organizations listed in the `orgs` field. The valid values for this field include the following: `AUTHORIZATION_DIRECTION_FROM`: Allows this organization to evaluate traffic in the organizations listed in the `orgs` field. `AUTHORIZATION_DIRECTION_TO`: Allows the organizations listed in the `orgs` field to evaluate the traffic in this organization. For the authorization relationship to take effect, all of the organizations must authorize and specify the appropriate relationship direction. For example, if organization A authorizes organizations B and C to evaluate its traffic by specifying `AUTHORIZATION_DIRECTION_TO` as the authorization direction, organizations B and C must specify `AUTHORIZATION_DIRECTION_FROM` as the authorization direction in their `AuthorizedOrgsDesc` resource.
"authorizationType": "A String", # A granular control type for authorization levels. Valid value is `AUTHORIZATION_TYPE_TRUST`.
"name": "A String", # Identifier. Resource name for the `AuthorizedOrgsDesc`. Format: `accessPolicies/{access_policy}/authorizedOrgsDescs/{authorized_orgs_desc}`. The `authorized_orgs_desc` component must begin with a letter, followed by alphanumeric characters or `_`. After you create an `AuthorizedOrgsDesc`, you cannot change its `name`.
- "orgs": [ # The list of organization ids in this AuthorizedOrgsDesc. Format: `organizations/` Example: `organizations/123456`
+ "orgs": [ # The list of organization IDs in this `AuthorizedOrgsDesc`. Format: `organizations/{org_number}` Example: `organizations/123456`
"A String",
],
},
@@ -257,7 +257,7 @@ Method Details
patch(name, body=None, updateMask=None, x__xgafv=None)
- Updates an authorized orgs desc. The long-running operation from this RPC has a successful status after the authorized orgs desc propagates to long-lasting storage. If a authorized orgs desc contains errors, an error response is returned for the first error encountered. Only the organization list in `AuthorizedOrgsDesc` can be updated. The name, authorization_type, asset_type and authorization_direction cannot be updated.
+ Updates an authorized orgs desc. The long-running operation from this RPC has a successful status after the authorized orgs desc propagates to long-lasting storage. If an authorized orgs desc contains errors, an error response is returned for the first error encountered. Only the organization list in `AuthorizedOrgsDesc` can be updated. The `name`, `authorization_type`, `asset_type`, and `authorization_direction` cannot be updated.
Args:
name: string, Identifier. Resource name for the `AuthorizedOrgsDesc`. Format: `accessPolicies/{access_policy}/authorizedOrgsDescs/{authorized_orgs_desc}`. The `authorized_orgs_desc` component must begin with a letter, followed by alphanumeric characters or `_`. After you create an `AuthorizedOrgsDesc`, you cannot change its `name`. (required)
@@ -265,11 +265,11 @@ Method Details
The object takes the form of:
{ # `AuthorizedOrgsDesc` contains data for an organization's authorization policy.
- "assetType": "A String", # The asset type of this authorized orgs desc. Valid values are `ASSET_TYPE_DEVICE`, and `ASSET_TYPE_CREDENTIAL_STRENGTH`.
- "authorizationDirection": "A String", # The direction of the authorization relationship between this organization and the organizations listed in the `orgs` field. The valid values for this field include the following: `AUTHORIZATION_DIRECTION_FROM`: Allows this organization to evaluate traffic in the organizations listed in the `orgs` field. `AUTHORIZATION_DIRECTION_TO`: Allows the organizations listed in the `orgs` field to evaluate the traffic in this organization. For the authorization relationship to take effect, all of the organizations must authorize and specify the appropriate relationship direction. For example, if organization A authorized organization B and C to evaluate its traffic, by specifying `AUTHORIZATION_DIRECTION_TO` as the authorization direction, organizations B and C must specify `AUTHORIZATION_DIRECTION_FROM` as the authorization direction in their `AuthorizedOrgsDesc` resource.
+ "assetType": "A String", # The asset type of this authorized orgs desc. Valid values are `ASSET_TYPE_DEVICE` and `ASSET_TYPE_CREDENTIAL_STRENGTH`.
+ "authorizationDirection": "A String", # The direction of the authorization relationship between this organization and the organizations listed in the `orgs` field. The valid values for this field include the following: `AUTHORIZATION_DIRECTION_FROM`: Allows this organization to evaluate traffic in the organizations listed in the `orgs` field. `AUTHORIZATION_DIRECTION_TO`: Allows the organizations listed in the `orgs` field to evaluate the traffic in this organization. For the authorization relationship to take effect, all of the organizations must authorize and specify the appropriate relationship direction. For example, if organization A authorizes organizations B and C to evaluate its traffic by specifying `AUTHORIZATION_DIRECTION_TO` as the authorization direction, organizations B and C must specify `AUTHORIZATION_DIRECTION_FROM` as the authorization direction in their `AuthorizedOrgsDesc` resource.
"authorizationType": "A String", # A granular control type for authorization levels. Valid value is `AUTHORIZATION_TYPE_TRUST`.
"name": "A String", # Identifier. Resource name for the `AuthorizedOrgsDesc`. Format: `accessPolicies/{access_policy}/authorizedOrgsDescs/{authorized_orgs_desc}`. The `authorized_orgs_desc` component must begin with a letter, followed by alphanumeric characters or `_`. After you create an `AuthorizedOrgsDesc`, you cannot change its `name`.
- "orgs": [ # The list of organization ids in this AuthorizedOrgsDesc. Format: `organizations/` Example: `organizations/123456`
+ "orgs": [ # The list of organization IDs in this `AuthorizedOrgsDesc`. Format: `organizations/{org_number}` Example: `organizations/123456`
"A String",
],
}
diff --git a/docs/dyn/accesscontextmanager_v1.accessPolicies.html b/docs/dyn/accesscontextmanager_v1.accessPolicies.html
index 7083960c9e..431c4de720 100644
--- a/docs/dyn/accesscontextmanager_v1.accessPolicies.html
+++ b/docs/dyn/accesscontextmanager_v1.accessPolicies.html
@@ -134,13 +134,13 @@ Method Details
The object takes the form of:
{ # `AccessPolicy` is a container for `AccessLevels` (which define the necessary attributes to use Google Cloud services) and `ServicePerimeters` (which define regions of services able to freely pass data within a perimeter). An access policy is globally visible within an organization, and the restrictions it specifies apply to all projects within an organization.
- "etag": "A String", # Output only. An opaque identifier for the current version of the `AccessPolicy`. This will always be a strongly validated etag, meaning that two Access Policies will be identical if and only if their etags are identical. Clients should not expect this to be in any specific format.
+ "etag": "A String", # Output only. An opaque identifier for the current version of the `AccessPolicy`. This will always be a strongly validated etag, meaning that two access policies will be identical if and only if their etags are identical. Clients should not expect this to be in any specific format.
"name": "A String", # Output only. Identifier. Resource name of the `AccessPolicy`. Format: `accessPolicies/{access_policy}`
"parent": "A String", # Required. The parent of this `AccessPolicy` in the Cloud Resource Hierarchy. Currently immutable once created. Format: `organizations/{organization_id}`
- "scopes": [ # The scopes of the AccessPolicy. Scopes define which resources a policy can restrict and where its resources can be referenced. For example, policy A with `scopes=["folders/123"]` has the following behavior: - ServicePerimeter can only restrict projects within `folders/123`. - ServicePerimeter within policy A can only reference access levels defined within policy A. - Only one policy can include a given scope; thus, attempting to create a second policy which includes `folders/123` will result in an error. If no scopes are provided, then any resource within the organization can be restricted. Scopes cannot be modified after a policy is created. Policies can only have a single scope. Format: list of `folders/{folder_number}` or `projects/{project_number}`
+ "scopes": [ # The scopes of the AccessPolicy. Scopes define which resources a policy can restrict and where its resources can be referenced. For example, policy A with `scopes=["folders/123"]` has the following behavior: - ServicePerimeter can only restrict projects within `folders/123`. - ServicePerimeter within policy A can only reference access levels defined within policy A. - Only one policy can include a given scope; thus, attempting to create a second policy that includes `folders/123` will result in an error. If no scopes are provided, then any resource within the organization can be restricted. Scopes cannot be modified after a policy is created. Policies can only have a single scope. Format: list of `folders/{folder_number}` or `projects/{project_number}`
"A String",
],
- "title": "A String", # Required. Human readable title. Does not affect behavior.
+ "title": "A String", # Required. Human-readable title. Does not affect behavior.
}
x__xgafv: string, V1 error format.
@@ -177,7 +177,7 @@ Method Details
Deletes an access policy based on the resource name. The long-running operation has a successful status after the access policy is removed from long-lasting storage.
Args:
- name: string, Required. Resource name for the access policy to delete. Format `accessPolicies/{policy_id}` (required)
+ name: string, Required. Resource name for the access policy to delete. Format: `accessPolicies/{policy_id}` (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -212,7 +212,7 @@ Method Details
Returns an access policy based on the name.
Args:
- name: string, Required. Resource name for the access policy to get. Format `accessPolicies/{policy_id}` (required)
+ name: string, Required. Resource name for the access policy to get. Format: `accessPolicies/{policy_id}` (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -222,13 +222,13 @@ Method Details
An object of the form:
{ # `AccessPolicy` is a container for `AccessLevels` (which define the necessary attributes to use Google Cloud services) and `ServicePerimeters` (which define regions of services able to freely pass data within a perimeter). An access policy is globally visible within an organization, and the restrictions it specifies apply to all projects within an organization.
- "etag": "A String", # Output only. An opaque identifier for the current version of the `AccessPolicy`. This will always be a strongly validated etag, meaning that two Access Policies will be identical if and only if their etags are identical. Clients should not expect this to be in any specific format.
+ "etag": "A String", # Output only. An opaque identifier for the current version of the `AccessPolicy`. This will always be a strongly validated etag, meaning that two access policies will be identical if and only if their etags are identical. Clients should not expect this to be in any specific format.
"name": "A String", # Output only. Identifier. Resource name of the `AccessPolicy`. Format: `accessPolicies/{access_policy}`
"parent": "A String", # Required. The parent of this `AccessPolicy` in the Cloud Resource Hierarchy. Currently immutable once created. Format: `organizations/{organization_id}`
- "scopes": [ # The scopes of the AccessPolicy. Scopes define which resources a policy can restrict and where its resources can be referenced. For example, policy A with `scopes=["folders/123"]` has the following behavior: - ServicePerimeter can only restrict projects within `folders/123`. - ServicePerimeter within policy A can only reference access levels defined within policy A. - Only one policy can include a given scope; thus, attempting to create a second policy which includes `folders/123` will result in an error. If no scopes are provided, then any resource within the organization can be restricted. Scopes cannot be modified after a policy is created. Policies can only have a single scope. Format: list of `folders/{folder_number}` or `projects/{project_number}`
+ "scopes": [ # The scopes of the AccessPolicy. Scopes define which resources a policy can restrict and where its resources can be referenced. For example, policy A with `scopes=["folders/123"]` has the following behavior: - ServicePerimeter can only restrict projects within `folders/123`. - ServicePerimeter within policy A can only reference access levels defined within policy A. - Only one policy can include a given scope; thus, attempting to create a second policy that includes `folders/123` will result in an error. If no scopes are provided, then any resource within the organization can be restricted. Scopes cannot be modified after a policy is created. Policies can only have a single scope. Format: list of `folders/{folder_number}` or `projects/{project_number}`
"A String",
],
- "title": "A String", # Required. Human readable title. Does not affect behavior.
+ "title": "A String", # Required. Human-readable title. Does not affect behavior.
}
@@ -307,13 +307,13 @@ Method Details
{ # A response to `ListAccessPoliciesRequest`.
"accessPolicies": [ # List of the AccessPolicy instances.
{ # `AccessPolicy` is a container for `AccessLevels` (which define the necessary attributes to use Google Cloud services) and `ServicePerimeters` (which define regions of services able to freely pass data within a perimeter). An access policy is globally visible within an organization, and the restrictions it specifies apply to all projects within an organization.
- "etag": "A String", # Output only. An opaque identifier for the current version of the `AccessPolicy`. This will always be a strongly validated etag, meaning that two Access Policies will be identical if and only if their etags are identical. Clients should not expect this to be in any specific format.
+ "etag": "A String", # Output only. An opaque identifier for the current version of the `AccessPolicy`. This will always be a strongly validated etag, meaning that two access policies will be identical if and only if their etags are identical. Clients should not expect this to be in any specific format.
"name": "A String", # Output only. Identifier. Resource name of the `AccessPolicy`. Format: `accessPolicies/{access_policy}`
"parent": "A String", # Required. The parent of this `AccessPolicy` in the Cloud Resource Hierarchy. Currently immutable once created. Format: `organizations/{organization_id}`
- "scopes": [ # The scopes of the AccessPolicy. Scopes define which resources a policy can restrict and where its resources can be referenced. For example, policy A with `scopes=["folders/123"]` has the following behavior: - ServicePerimeter can only restrict projects within `folders/123`. - ServicePerimeter within policy A can only reference access levels defined within policy A. - Only one policy can include a given scope; thus, attempting to create a second policy which includes `folders/123` will result in an error. If no scopes are provided, then any resource within the organization can be restricted. Scopes cannot be modified after a policy is created. Policies can only have a single scope. Format: list of `folders/{folder_number}` or `projects/{project_number}`
+ "scopes": [ # The scopes of the AccessPolicy. Scopes define which resources a policy can restrict and where its resources can be referenced. For example, policy A with `scopes=["folders/123"]` has the following behavior: - ServicePerimeter can only restrict projects within `folders/123`. - ServicePerimeter within policy A can only reference access levels defined within policy A. - Only one policy can include a given scope; thus, attempting to create a second policy that includes `folders/123` will result in an error. If no scopes are provided, then any resource within the organization can be restricted. Scopes cannot be modified after a policy is created. Policies can only have a single scope. Format: list of `folders/{folder_number}` or `projects/{project_number}`
"A String",
],
- "title": "A String", # Required. Human readable title. Does not affect behavior.
+ "title": "A String", # Required. Human-readable title. Does not affect behavior.
},
],
"nextPageToken": "A String", # The pagination token to retrieve the next page of results. If the value is empty, no further results remain.
@@ -344,13 +344,13 @@ Method Details
The object takes the form of:
{ # `AccessPolicy` is a container for `AccessLevels` (which define the necessary attributes to use Google Cloud services) and `ServicePerimeters` (which define regions of services able to freely pass data within a perimeter). An access policy is globally visible within an organization, and the restrictions it specifies apply to all projects within an organization.
- "etag": "A String", # Output only. An opaque identifier for the current version of the `AccessPolicy`. This will always be a strongly validated etag, meaning that two Access Policies will be identical if and only if their etags are identical. Clients should not expect this to be in any specific format.
+ "etag": "A String", # Output only. An opaque identifier for the current version of the `AccessPolicy`. This will always be a strongly validated etag, meaning that two access policies will be identical if and only if their etags are identical. Clients should not expect this to be in any specific format.
"name": "A String", # Output only. Identifier. Resource name of the `AccessPolicy`. Format: `accessPolicies/{access_policy}`
"parent": "A String", # Required. The parent of this `AccessPolicy` in the Cloud Resource Hierarchy. Currently immutable once created. Format: `organizations/{organization_id}`
- "scopes": [ # The scopes of the AccessPolicy. Scopes define which resources a policy can restrict and where its resources can be referenced. For example, policy A with `scopes=["folders/123"]` has the following behavior: - ServicePerimeter can only restrict projects within `folders/123`. - ServicePerimeter within policy A can only reference access levels defined within policy A. - Only one policy can include a given scope; thus, attempting to create a second policy which includes `folders/123` will result in an error. If no scopes are provided, then any resource within the organization can be restricted. Scopes cannot be modified after a policy is created. Policies can only have a single scope. Format: list of `folders/{folder_number}` or `projects/{project_number}`
+ "scopes": [ # The scopes of the AccessPolicy. Scopes define which resources a policy can restrict and where its resources can be referenced. For example, policy A with `scopes=["folders/123"]` has the following behavior: - ServicePerimeter can only restrict projects within `folders/123`. - ServicePerimeter within policy A can only reference access levels defined within policy A. - Only one policy can include a given scope; thus, attempting to create a second policy that includes `folders/123` will result in an error. If no scopes are provided, then any resource within the organization can be restricted. Scopes cannot be modified after a policy is created. Policies can only have a single scope. Format: list of `folders/{folder_number}` or `projects/{project_number}`
"A String",
],
- "title": "A String", # Required. Human readable title. Does not affect behavior.
+ "title": "A String", # Required. Human-readable title. Does not affect behavior.
}
updateMask: string, Required. Mask to control which fields get updated. Must be non-empty.
diff --git a/docs/dyn/accesscontextmanager_v1.accessPolicies.servicePerimeters.html b/docs/dyn/accesscontextmanager_v1.accessPolicies.servicePerimeters.html
index 3e98a99eff..1e5d5aa987 100644
--- a/docs/dyn/accesscontextmanager_v1.accessPolicies.servicePerimeters.html
+++ b/docs/dyn/accesscontextmanager_v1.accessPolicies.servicePerimeters.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
commit(parent, body=None, x__xgafv=None)
-Commits the dry-run specification for all the service perimeters in an access policy. A commit operation on a service perimeter involves copying its `spec` field to the `status` field of the service perimeter. Only service perimeters with `use_explicit_dry_run_spec` field set to true are affected by a commit operation. The long-running operation from this RPC has a successful status after the dry-run specifications for all the service perimeters have been committed. If a commit fails, it causes the long-running operation to return an error response and the entire commit operation is cancelled. When successful, the Operation.response field contains CommitServicePerimetersResponse. The `dry_run` and the `spec` fields are cleared after a successful commit operation.
+Commits the dry-run specification for all the service perimeters in an access policy. A commit operation on a service perimeter involves copying its `spec` field to the `status` field of the service perimeter. Only service perimeters with `use_explicit_dry_run_spec` field set to true are affected by a commit operation. The long-running operation from this RPC has a successful status after the dry-run specifications for all the service perimeters have been committed. If a commit fails, it causes the long-running operation to return an error response and the entire commit operation is cancelled. When successful, the `Operation.response` field contains `CommitServicePerimetersResponse`. The `dry_run` and the `spec` fields are cleared after a successful commit operation.
create(parent, body=None, x__xgafv=None)
Creates a service perimeter. The long-running operation from this RPC has a successful status after the service perimeter propagates to long-lasting storage. If a service perimeter contains errors, an error response is returned for the first error encountered.
@@ -100,7 +100,7 @@ Instance Methods
Updates a service perimeter. The long-running operation from this RPC has a successful status after the service perimeter propagates to long-lasting storage. If a service perimeter contains errors, an error response is returned for the first error encountered.
replaceAll(parent, body=None, x__xgafv=None)
-Replace all existing service perimeters in an access policy with the service perimeters provided. This is done atomically. The long-running operation from this RPC has a successful status after all replacements propagate to long-lasting storage. Replacements containing errors result in an error response for the first error encountered. Upon an error, replacements are cancelled and existing service perimeters are not affected. The Operation.response field contains ReplaceServicePerimetersResponse.
+Replaces all existing service perimeters in an access policy with the service perimeters provided. This is done atomically. The long-running operation from this RPC has a successful status after all replacements propagate to long-lasting storage. Replacements containing errors result in an error response for the first error encountered. Upon an error, replacements are cancelled and existing service perimeters are not affected. The `Operation.response` field contains `ReplaceServicePerimetersResponse`.
testIamPermissions(resource, body=None, x__xgafv=None)
Returns the IAM permissions that the caller has on the specified Access Context Manager resource. The resource can be an AccessPolicy, AccessLevel, or ServicePerimeter. This method does not support other resources. **IAM Permissions**: No specific IAM permission is required to call this method. It returns the subset of the requested permissions that the caller possesses.
@@ -112,7 +112,7 @@ Method Details
commit(parent, body=None, x__xgafv=None)
- Commits the dry-run specification for all the service perimeters in an access policy. A commit operation on a service perimeter involves copying its `spec` field to the `status` field of the service perimeter. Only service perimeters with `use_explicit_dry_run_spec` field set to true are affected by a commit operation. The long-running operation from this RPC has a successful status after the dry-run specifications for all the service perimeters have been committed. If a commit fails, it causes the long-running operation to return an error response and the entire commit operation is cancelled. When successful, the Operation.response field contains CommitServicePerimetersResponse. The `dry_run` and the `spec` fields are cleared after a successful commit operation.
+ Commits the dry-run specification for all the service perimeters in an access policy. A commit operation on a service perimeter involves copying its `spec` field to the `status` field of the service perimeter. Only service perimeters with `use_explicit_dry_run_spec` field set to true are affected by a commit operation. The long-running operation from this RPC has a successful status after the dry-run specifications for all the service perimeters have been committed. If a commit fails, it causes the long-running operation to return an error response and the entire commit operation is cancelled. When successful, the `Operation.response` field contains `CommitServicePerimetersResponse`. The `dry_run` and the `spec` fields are cleared after a successful commit operation.
Args:
parent: string, Required. Resource name for the parent Access Policy which owns all Service Perimeters in scope for the commit operation. Format: `accessPolicies/{policy_id}` (required)
@@ -165,31 +165,31 @@ Method Details
"description": "A String", # Description of the `ServicePerimeter` and its use. Does not affect behavior.
"etag": "A String", # Optional. An opaque identifier for the current version of the `ServicePerimeter`. This identifier does not follow any specific format. If an etag is not provided, the operation will be performed as if a valid etag is provided.
"name": "A String", # Identifier. Resource name for the `ServicePerimeter`. Format: `accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}`. The `service_perimeter` component must begin with a letter, followed by alphanumeric characters or `_`. After you create a `ServicePerimeter`, you cannot change its `name`.
- "perimeterType": "A String", # Perimeter type indicator. A single project or VPC network is allowed to be a member of single regular perimeter, but multiple service perimeter bridges. A project cannot be a included in a perimeter bridge without being included in regular perimeter. For perimeter bridges, the restricted service list as well as access level lists must be empty.
- "spec": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Proposed (or dry run) ServicePerimeter configuration. This configuration allows to specify and test ServicePerimeter configuration without enforcing actual access restrictions. Only allowed to be set when the "use_explicit_dry_run_spec" flag is set.
+ "perimeterType": "A String", # Perimeter type indicator. A single project or VPC network is allowed to be a member of a single regular perimeter, but multiple service perimeter bridges. A project cannot be included in a perimeter bridge without being included in a regular perimeter. For perimeter bridges, the restricted service list as well as access level lists must be empty.
+ "spec": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Proposed (or dry run) ServicePerimeter configuration. This configuration allows you to specify and test ServicePerimeter configuration without enforcing actual access restrictions. Only allowed to be set when the `use_explicit_dry_run_spec` flag is set.
"accessLevels": [ # A list of `AccessLevel` resource names that allow resources within the `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed must be in the same policy as this `ServicePerimeter`. Referencing a nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. For Service Perimeter Bridge, must be empty.
"A String",
],
"egressPolicies": [ # List of EgressPolicies to apply to the perimeter. A perimeter may have multiple EgressPolicies, each of which is evaluated separately. Access is granted if any EgressPolicy grants it. Must be empty for a perimeter bridge.
- { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates as well as the API services and API actions being used. They do not related to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
- "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
+ { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates to, as well as the API services and API actions being used. They do not relate to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
+ "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
"identities": [ # A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.
"A String",
],
"identityType": "A String", # Specifies the type of identities that are allowed access to outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
- "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` fields is non-empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
+ "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` field is not empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
"sources": [ # Sources that this EgressPolicy authorizes access from. If this field is not empty, then `source_restriction` must be set to `SOURCE_RESTRICTION_ENABLED`.
{ # The source that EgressPolicy authorizes access from inside the ServicePerimeter to somewhere outside the ServicePerimeter boundaries.
"accessLevel": "A String", # An AccessLevel resource name that allows protected resources inside the ServicePerimeters to access outside the ServicePerimeter boundaries. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If an AccessLevel name is not specified, only resources within the perimeter can be accessed through Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all EgressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access data outside the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
- "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`. You can't use `*` in this field to allow all Google Cloud resources.
+ "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`. You can't use `*` in this field to allow all Google Cloud resources.
},
],
},
"egressTo": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the ApiOperation intended to be performed on the `resources` specified. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. The request must match `operations` AND `resources` fields in order to be allowed egress out of the perimeter. # Defines the conditions on the ApiOperation and destination resources that cause this EgressPolicy to apply.
- "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are s3://BUCKET_NAME, s3a://BUCKET_NAME, and s3n://BUCKET_NAME. For Azure Storage, the supported format is azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches if it contains an external resource in this list (Example: s3://bucket/path). Currently '*' is not allowed.
+ "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are `s3://BUCKET_NAME`, `s3a://BUCKET_NAME`, and `s3n://BUCKET_NAME`. For Azure Storage, the supported format is `azure://myaccount.blob.core.windows.net/CONTAINER_NAME`. A request matches if it contains an external resource in this list (Example: `s3://bucket/path`). Currently `'*'` is not allowed.
"A String",
],
"operations": [ # A list of ApiOperations allowed to be performed by the sources specified in the corresponding EgressFrom. A request matches if it uses an operation/service in this list.
@@ -203,14 +203,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
"A String",
],
- "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom. are allowed to perform in this ServicePerimeter.
+ "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"ingressPolicies": [ # List of IngressPolicies to apply to the perimeter. A perimeter may have multiple IngressPolicies, each of which is evaluated separately. Access is granted if any Ingress Policy grants it. Must be empty for a perimeter bridge.
@@ -222,7 +222,7 @@ Method Details
"identityType": "A String", # Specifies the type of identities that are allowed access from outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
"sources": [ # Sources that this IngressPolicy authorizes access from.
{ # The source that IngressPolicy authorizes access from.
- "accessLevel": "A String", # An AccessLevel resource name that allow resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
+ "accessLevel": "A String", # An AccessLevel resource name that allows resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
@@ -242,14 +242,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter are allowed.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter is allowed.
"A String",
],
"roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding IngressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"resources": [ # A list of Google Cloud resources that are inside of the service perimeter. Currently projects, folders, and VPCs are allowed. Project format: `projects/{project_number}` Folder format: `folders/{folder_id}` VPC network format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
@@ -269,43 +269,43 @@ Method Details
},
},
],
- "pattern": "A String", # URL pattern to allow. Only patterns of ".googleapis.com/*", "www.googleapis.com//*" and "*.appspot.com/* forms are supported, where should be an alphanumeric name.
+ "pattern": "A String", # URL pattern to allow. Only patterns of `".googleapis.com/*"`, `"www.googleapis.com//*"`, and `"*.appspot.com/*"` forms are supported, where `` should be an alphanumeric name.
"service": "A String", # Supported service to allow.
},
],
- "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.
+ "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless `enable_restriction` is `true`. You can specify a list of individual services, as well as include the `'RESTRICTED-SERVICES'` value, which automatically includes all of the services protected by the perimeter.
"A String",
],
- "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.
+ "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in `allowed_services`.
"servicePatternsEnforcementScopes": [ # Defines the enforcement scopes of service patterns.
"A String",
],
},
},
- "status": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Current ServicePerimeter configuration. Specifies sets of resources, restricted services and access levels that determine perimeter content and boundaries.
+ "status": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Current ServicePerimeter configuration. Specifies sets of resources, restricted services, and access levels that determine perimeter content and boundaries.
"accessLevels": [ # A list of `AccessLevel` resource names that allow resources within the `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed must be in the same policy as this `ServicePerimeter`. Referencing a nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. For Service Perimeter Bridge, must be empty.
"A String",
],
"egressPolicies": [ # List of EgressPolicies to apply to the perimeter. A perimeter may have multiple EgressPolicies, each of which is evaluated separately. Access is granted if any EgressPolicy grants it. Must be empty for a perimeter bridge.
- { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates as well as the API services and API actions being used. They do not related to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
- "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
+ { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates to, as well as the API services and API actions being used. They do not relate to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
+ "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
"identities": [ # A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.
"A String",
],
"identityType": "A String", # Specifies the type of identities that are allowed access to outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
- "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` fields is non-empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
+ "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` field is not empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
"sources": [ # Sources that this EgressPolicy authorizes access from. If this field is not empty, then `source_restriction` must be set to `SOURCE_RESTRICTION_ENABLED`.
{ # The source that EgressPolicy authorizes access from inside the ServicePerimeter to somewhere outside the ServicePerimeter boundaries.
"accessLevel": "A String", # An AccessLevel resource name that allows protected resources inside the ServicePerimeters to access outside the ServicePerimeter boundaries. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If an AccessLevel name is not specified, only resources within the perimeter can be accessed through Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all EgressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access data outside the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
- "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`. You can't use `*` in this field to allow all Google Cloud resources.
+ "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`. You can't use `*` in this field to allow all Google Cloud resources.
},
],
},
"egressTo": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the ApiOperation intended to be performed on the `resources` specified. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. The request must match `operations` AND `resources` fields in order to be allowed egress out of the perimeter. # Defines the conditions on the ApiOperation and destination resources that cause this EgressPolicy to apply.
- "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are s3://BUCKET_NAME, s3a://BUCKET_NAME, and s3n://BUCKET_NAME. For Azure Storage, the supported format is azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches if it contains an external resource in this list (Example: s3://bucket/path). Currently '*' is not allowed.
+ "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are `s3://BUCKET_NAME`, `s3a://BUCKET_NAME`, and `s3n://BUCKET_NAME`. For Azure Storage, the supported format is `azure://myaccount.blob.core.windows.net/CONTAINER_NAME`. A request matches if it contains an external resource in this list (Example: `s3://bucket/path`). Currently `'*'` is not allowed.
"A String",
],
"operations": [ # A list of ApiOperations allowed to be performed by the sources specified in the corresponding EgressFrom. A request matches if it uses an operation/service in this list.
@@ -319,14 +319,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
"A String",
],
- "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom. are allowed to perform in this ServicePerimeter.
+ "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"ingressPolicies": [ # List of IngressPolicies to apply to the perimeter. A perimeter may have multiple IngressPolicies, each of which is evaluated separately. Access is granted if any Ingress Policy grants it. Must be empty for a perimeter bridge.
@@ -338,7 +338,7 @@ Method Details
"identityType": "A String", # Specifies the type of identities that are allowed access from outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
"sources": [ # Sources that this IngressPolicy authorizes access from.
{ # The source that IngressPolicy authorizes access from.
- "accessLevel": "A String", # An AccessLevel resource name that allow resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
+ "accessLevel": "A String", # An AccessLevel resource name that allows resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
@@ -358,14 +358,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter are allowed.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter is allowed.
"A String",
],
"roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding IngressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"resources": [ # A list of Google Cloud resources that are inside of the service perimeter. Currently projects, folders, and VPCs are allowed. Project format: `projects/{project_number}` Folder format: `folders/{folder_id}` VPC network format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
@@ -385,21 +385,21 @@ Method Details
},
},
],
- "pattern": "A String", # URL pattern to allow. Only patterns of ".googleapis.com/*", "www.googleapis.com//*" and "*.appspot.com/* forms are supported, where should be an alphanumeric name.
+ "pattern": "A String", # URL pattern to allow. Only patterns of `".googleapis.com/*"`, `"www.googleapis.com//*"`, and `"*.appspot.com/*"` forms are supported, where `` should be an alphanumeric name.
"service": "A String", # Supported service to allow.
},
],
- "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.
+ "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless `enable_restriction` is `true`. You can specify a list of individual services, as well as include the `'RESTRICTED-SERVICES'` value, which automatically includes all of the services protected by the perimeter.
"A String",
],
- "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.
+ "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in `allowed_services`.
"servicePatternsEnforcementScopes": [ # Defines the enforcement scopes of service patterns.
"A String",
],
},
},
"title": "A String", # Human readable title. Must be unique within the Policy.
- "useExplicitDryRunSpec": True or False, # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists for all Service Perimeters, and that spec is identical to the status for those Service Perimeters. When this flag is set, it inhibits the generation of the implicit spec, thereby allowing the user to explicitly provide a configuration ("spec") to use in a dry-run version of the Service Perimeter. This allows the user to test changes to the enforced config ("status") without actually enforcing them. This testing is done through analyzing the differences between currently enforced and suggested restrictions. use_explicit_dry_run_spec must bet set to True if any of the fields in the spec are set to non-default values.
+ "useExplicitDryRunSpec": True or False, # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists for all Service Perimeters, and that spec is identical to the status for those Service Perimeters. When this flag is set, it inhibits the generation of the implicit spec, thereby allowing the user to explicitly provide a configuration ("spec") to use in a dry-run version of the Service Perimeter. This allows the user to test changes to the enforced config ("status") without actually enforcing them. This testing is done through analyzing the differences between currently enforced and suggested restrictions. `use_explicit_dry_run_spec` must be set to `true` if any of the fields in the spec are set to non-default values.
}
x__xgafv: string, V1 error format.
@@ -471,7 +471,7 @@ Method Details
Gets a service perimeter based on the resource name.
Args:
- name: string, Required. Resource name for the Service Perimeter. Format: `accessPolicies/{policy_id}/servicePerimeters/{service_perimeters_id}` (required)
+ name: string, Required. Resource name for the Service Perimeter. Format: `accessPolicies/{policy_id}/servicePerimeters/{service_perimeter_id}` (required)
deletedPrincipalSyntax: string, Optional. If true, the response will contain the deleted principal syntax for identities that support it.
Allowed values
DELETED_PRINCIPAL_SYNTAX_SUPPORT_UNSPECIFIED - Deleted principal syntax support was not specified.
@@ -489,31 +489,31 @@ Method Details
"description": "A String", # Description of the `ServicePerimeter` and its use. Does not affect behavior.
"etag": "A String", # Optional. An opaque identifier for the current version of the `ServicePerimeter`. This identifier does not follow any specific format. If an etag is not provided, the operation will be performed as if a valid etag is provided.
"name": "A String", # Identifier. Resource name for the `ServicePerimeter`. Format: `accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}`. The `service_perimeter` component must begin with a letter, followed by alphanumeric characters or `_`. After you create a `ServicePerimeter`, you cannot change its `name`.
- "perimeterType": "A String", # Perimeter type indicator. A single project or VPC network is allowed to be a member of single regular perimeter, but multiple service perimeter bridges. A project cannot be a included in a perimeter bridge without being included in regular perimeter. For perimeter bridges, the restricted service list as well as access level lists must be empty.
- "spec": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Proposed (or dry run) ServicePerimeter configuration. This configuration allows to specify and test ServicePerimeter configuration without enforcing actual access restrictions. Only allowed to be set when the "use_explicit_dry_run_spec" flag is set.
+ "perimeterType": "A String", # Perimeter type indicator. A single project or VPC network is allowed to be a member of a single regular perimeter, but multiple service perimeter bridges. A project cannot be included in a perimeter bridge without being included in a regular perimeter. For perimeter bridges, the restricted service list as well as access level lists must be empty.
+ "spec": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Proposed (or dry run) ServicePerimeter configuration. This configuration allows you to specify and test ServicePerimeter configuration without enforcing actual access restrictions. Only allowed to be set when the `use_explicit_dry_run_spec` flag is set.
"accessLevels": [ # A list of `AccessLevel` resource names that allow resources within the `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed must be in the same policy as this `ServicePerimeter`. Referencing a nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. For Service Perimeter Bridge, must be empty.
"A String",
],
"egressPolicies": [ # List of EgressPolicies to apply to the perimeter. A perimeter may have multiple EgressPolicies, each of which is evaluated separately. Access is granted if any EgressPolicy grants it. Must be empty for a perimeter bridge.
- { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates as well as the API services and API actions being used. They do not related to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
- "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
+ { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates to, as well as the API services and API actions being used. They do not relate to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
+ "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
"identities": [ # A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.
"A String",
],
"identityType": "A String", # Specifies the type of identities that are allowed access to outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
- "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` fields is non-empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
+ "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` field is not empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
"sources": [ # Sources that this EgressPolicy authorizes access from. If this field is not empty, then `source_restriction` must be set to `SOURCE_RESTRICTION_ENABLED`.
{ # The source that EgressPolicy authorizes access from inside the ServicePerimeter to somewhere outside the ServicePerimeter boundaries.
"accessLevel": "A String", # An AccessLevel resource name that allows protected resources inside the ServicePerimeters to access outside the ServicePerimeter boundaries. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If an AccessLevel name is not specified, only resources within the perimeter can be accessed through Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all EgressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access data outside the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
- "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`. You can't use `*` in this field to allow all Google Cloud resources.
+ "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`. You can't use `*` in this field to allow all Google Cloud resources.
},
],
},
"egressTo": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the ApiOperation intended to be performed on the `resources` specified. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. The request must match `operations` AND `resources` fields in order to be allowed egress out of the perimeter. # Defines the conditions on the ApiOperation and destination resources that cause this EgressPolicy to apply.
- "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are s3://BUCKET_NAME, s3a://BUCKET_NAME, and s3n://BUCKET_NAME. For Azure Storage, the supported format is azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches if it contains an external resource in this list (Example: s3://bucket/path). Currently '*' is not allowed.
+ "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are `s3://BUCKET_NAME`, `s3a://BUCKET_NAME`, and `s3n://BUCKET_NAME`. For Azure Storage, the supported format is `azure://myaccount.blob.core.windows.net/CONTAINER_NAME`. A request matches if it contains an external resource in this list (Example: `s3://bucket/path`). Currently `'*'` is not allowed.
"A String",
],
"operations": [ # A list of ApiOperations allowed to be performed by the sources specified in the corresponding EgressFrom. A request matches if it uses an operation/service in this list.
@@ -527,14 +527,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
"A String",
],
- "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom. are allowed to perform in this ServicePerimeter.
+ "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"ingressPolicies": [ # List of IngressPolicies to apply to the perimeter. A perimeter may have multiple IngressPolicies, each of which is evaluated separately. Access is granted if any Ingress Policy grants it. Must be empty for a perimeter bridge.
@@ -546,7 +546,7 @@ Method Details
"identityType": "A String", # Specifies the type of identities that are allowed access from outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
"sources": [ # Sources that this IngressPolicy authorizes access from.
{ # The source that IngressPolicy authorizes access from.
- "accessLevel": "A String", # An AccessLevel resource name that allow resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
+ "accessLevel": "A String", # An AccessLevel resource name that allows resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
@@ -566,14 +566,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter are allowed.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter is allowed.
"A String",
],
"roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding IngressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"resources": [ # A list of Google Cloud resources that are inside of the service perimeter. Currently projects, folders, and VPCs are allowed. Project format: `projects/{project_number}` Folder format: `folders/{folder_id}` VPC network format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
@@ -593,43 +593,43 @@ Method Details
},
},
],
- "pattern": "A String", # URL pattern to allow. Only patterns of ".googleapis.com/*", "www.googleapis.com//*" and "*.appspot.com/* forms are supported, where should be an alphanumeric name.
+ "pattern": "A String", # URL pattern to allow. Only patterns of `".googleapis.com/*"`, `"www.googleapis.com//*"`, and `"*.appspot.com/*"` forms are supported, where `` should be an alphanumeric name.
"service": "A String", # Supported service to allow.
},
],
- "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.
+ "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless `enable_restriction` is `true`. You can specify a list of individual services, as well as include the `'RESTRICTED-SERVICES'` value, which automatically includes all of the services protected by the perimeter.
"A String",
],
- "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.
+ "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in `allowed_services`.
"servicePatternsEnforcementScopes": [ # Defines the enforcement scopes of service patterns.
"A String",
],
},
},
- "status": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Current ServicePerimeter configuration. Specifies sets of resources, restricted services and access levels that determine perimeter content and boundaries.
+ "status": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Current ServicePerimeter configuration. Specifies sets of resources, restricted services, and access levels that determine perimeter content and boundaries.
"accessLevels": [ # A list of `AccessLevel` resource names that allow resources within the `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed must be in the same policy as this `ServicePerimeter`. Referencing a nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. For Service Perimeter Bridge, must be empty.
"A String",
],
"egressPolicies": [ # List of EgressPolicies to apply to the perimeter. A perimeter may have multiple EgressPolicies, each of which is evaluated separately. Access is granted if any EgressPolicy grants it. Must be empty for a perimeter bridge.
- { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates as well as the API services and API actions being used. They do not related to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
- "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
+ { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates to, as well as the API services and API actions being used. They do not relate to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
+ "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
"identities": [ # A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.
"A String",
],
"identityType": "A String", # Specifies the type of identities that are allowed access to outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
- "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` fields is non-empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
+ "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` field is not empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
"sources": [ # Sources that this EgressPolicy authorizes access from. If this field is not empty, then `source_restriction` must be set to `SOURCE_RESTRICTION_ENABLED`.
{ # The source that EgressPolicy authorizes access from inside the ServicePerimeter to somewhere outside the ServicePerimeter boundaries.
"accessLevel": "A String", # An AccessLevel resource name that allows protected resources inside the ServicePerimeters to access outside the ServicePerimeter boundaries. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If an AccessLevel name is not specified, only resources within the perimeter can be accessed through Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all EgressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access data outside the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
- "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`. You can't use `*` in this field to allow all Google Cloud resources.
+ "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`. You can't use `*` in this field to allow all Google Cloud resources.
},
],
},
"egressTo": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the ApiOperation intended to be performed on the `resources` specified. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. The request must match `operations` AND `resources` fields in order to be allowed egress out of the perimeter. # Defines the conditions on the ApiOperation and destination resources that cause this EgressPolicy to apply.
- "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are s3://BUCKET_NAME, s3a://BUCKET_NAME, and s3n://BUCKET_NAME. For Azure Storage, the supported format is azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches if it contains an external resource in this list (Example: s3://bucket/path). Currently '*' is not allowed.
+ "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are `s3://BUCKET_NAME`, `s3a://BUCKET_NAME`, and `s3n://BUCKET_NAME`. For Azure Storage, the supported format is `azure://myaccount.blob.core.windows.net/CONTAINER_NAME`. A request matches if it contains an external resource in this list (Example: `s3://bucket/path`). Currently `'*'` is not allowed.
"A String",
],
"operations": [ # A list of ApiOperations allowed to be performed by the sources specified in the corresponding EgressFrom. A request matches if it uses an operation/service in this list.
@@ -643,14 +643,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
"A String",
],
- "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom. are allowed to perform in this ServicePerimeter.
+ "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"ingressPolicies": [ # List of IngressPolicies to apply to the perimeter. A perimeter may have multiple IngressPolicies, each of which is evaluated separately. Access is granted if any Ingress Policy grants it. Must be empty for a perimeter bridge.
@@ -662,7 +662,7 @@ Method Details
"identityType": "A String", # Specifies the type of identities that are allowed access from outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
"sources": [ # Sources that this IngressPolicy authorizes access from.
{ # The source that IngressPolicy authorizes access from.
- "accessLevel": "A String", # An AccessLevel resource name that allow resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
+ "accessLevel": "A String", # An AccessLevel resource name that allows resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
@@ -682,14 +682,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter are allowed.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter is allowed.
"A String",
],
"roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding IngressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"resources": [ # A list of Google Cloud resources that are inside of the service perimeter. Currently projects, folders, and VPCs are allowed. Project format: `projects/{project_number}` Folder format: `folders/{folder_id}` VPC network format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
@@ -709,21 +709,21 @@ Method Details
},
},
],
- "pattern": "A String", # URL pattern to allow. Only patterns of ".googleapis.com/*", "www.googleapis.com//*" and "*.appspot.com/* forms are supported, where should be an alphanumeric name.
+ "pattern": "A String", # URL pattern to allow. Only patterns of `".googleapis.com/*"`, `"www.googleapis.com//*"`, and `"*.appspot.com/*"` forms are supported, where `` should be an alphanumeric name.
"service": "A String", # Supported service to allow.
},
],
- "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.
+ "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless `enable_restriction` is `true`. You can specify a list of individual services, as well as include the `'RESTRICTED-SERVICES'` value, which automatically includes all of the services protected by the perimeter.
"A String",
],
- "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.
+ "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in `allowed_services`.
"servicePatternsEnforcementScopes": [ # Defines the enforcement scopes of service patterns.
"A String",
],
},
},
"title": "A String", # Human readable title. Must be unique within the Policy.
- "useExplicitDryRunSpec": True or False, # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists for all Service Perimeters, and that spec is identical to the status for those Service Perimeters. When this flag is set, it inhibits the generation of the implicit spec, thereby allowing the user to explicitly provide a configuration ("spec") to use in a dry-run version of the Service Perimeter. This allows the user to test changes to the enforced config ("status") without actually enforcing them. This testing is done through analyzing the differences between currently enforced and suggested restrictions. use_explicit_dry_run_spec must bet set to True if any of the fields in the spec are set to non-default values.
+ "useExplicitDryRunSpec": True or False, # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists for all Service Perimeters, and that spec is identical to the status for those Service Perimeters. When this flag is set, it inhibits the generation of the implicit spec, thereby allowing the user to explicitly provide a configuration ("spec") to use in a dry-run version of the Service Perimeter. This allows the user to test changes to the enforced config ("status") without actually enforcing them. This testing is done through analyzing the differences between currently enforced and suggested restrictions. `use_explicit_dry_run_spec` must be set to `true` if any of the fields in the spec are set to non-default values.
}
@@ -755,31 +755,31 @@ Method Details
"description": "A String", # Description of the `ServicePerimeter` and its use. Does not affect behavior.
"etag": "A String", # Optional. An opaque identifier for the current version of the `ServicePerimeter`. This identifier does not follow any specific format. If an etag is not provided, the operation will be performed as if a valid etag is provided.
"name": "A String", # Identifier. Resource name for the `ServicePerimeter`. Format: `accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}`. The `service_perimeter` component must begin with a letter, followed by alphanumeric characters or `_`. After you create a `ServicePerimeter`, you cannot change its `name`.
- "perimeterType": "A String", # Perimeter type indicator. A single project or VPC network is allowed to be a member of single regular perimeter, but multiple service perimeter bridges. A project cannot be a included in a perimeter bridge without being included in regular perimeter. For perimeter bridges, the restricted service list as well as access level lists must be empty.
- "spec": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Proposed (or dry run) ServicePerimeter configuration. This configuration allows to specify and test ServicePerimeter configuration without enforcing actual access restrictions. Only allowed to be set when the "use_explicit_dry_run_spec" flag is set.
+ "perimeterType": "A String", # Perimeter type indicator. A single project or VPC network is allowed to be a member of a single regular perimeter, but multiple service perimeter bridges. A project cannot be included in a perimeter bridge without being included in a regular perimeter. For perimeter bridges, the restricted service list as well as access level lists must be empty.
+ "spec": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Proposed (or dry run) ServicePerimeter configuration. This configuration allows you to specify and test ServicePerimeter configuration without enforcing actual access restrictions. Only allowed to be set when the `use_explicit_dry_run_spec` flag is set.
"accessLevels": [ # A list of `AccessLevel` resource names that allow resources within the `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed must be in the same policy as this `ServicePerimeter`. Referencing a nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. For Service Perimeter Bridge, must be empty.
"A String",
],
"egressPolicies": [ # List of EgressPolicies to apply to the perimeter. A perimeter may have multiple EgressPolicies, each of which is evaluated separately. Access is granted if any EgressPolicy grants it. Must be empty for a perimeter bridge.
- { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates as well as the API services and API actions being used. They do not related to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
- "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
+ { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates to, as well as the API services and API actions being used. They do not relate to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
+ "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
"identities": [ # A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.
"A String",
],
"identityType": "A String", # Specifies the type of identities that are allowed access to outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
- "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` fields is non-empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
+ "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` field is not empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
"sources": [ # Sources that this EgressPolicy authorizes access from. If this field is not empty, then `source_restriction` must be set to `SOURCE_RESTRICTION_ENABLED`.
{ # The source that EgressPolicy authorizes access from inside the ServicePerimeter to somewhere outside the ServicePerimeter boundaries.
"accessLevel": "A String", # An AccessLevel resource name that allows protected resources inside the ServicePerimeters to access outside the ServicePerimeter boundaries. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If an AccessLevel name is not specified, only resources within the perimeter can be accessed through Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all EgressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access data outside the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
- "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`. You can't use `*` in this field to allow all Google Cloud resources.
+ "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`. You can't use `*` in this field to allow all Google Cloud resources.
},
],
},
"egressTo": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the ApiOperation intended to be performed on the `resources` specified. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. The request must match `operations` AND `resources` fields in order to be allowed egress out of the perimeter. # Defines the conditions on the ApiOperation and destination resources that cause this EgressPolicy to apply.
- "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are s3://BUCKET_NAME, s3a://BUCKET_NAME, and s3n://BUCKET_NAME. For Azure Storage, the supported format is azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches if it contains an external resource in this list (Example: s3://bucket/path). Currently '*' is not allowed.
+ "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are `s3://BUCKET_NAME`, `s3a://BUCKET_NAME`, and `s3n://BUCKET_NAME`. For Azure Storage, the supported format is `azure://myaccount.blob.core.windows.net/CONTAINER_NAME`. A request matches if it contains an external resource in this list (Example: `s3://bucket/path`). Currently `'*'` is not allowed.
"A String",
],
"operations": [ # A list of ApiOperations allowed to be performed by the sources specified in the corresponding EgressFrom. A request matches if it uses an operation/service in this list.
@@ -793,14 +793,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
"A String",
],
- "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom. are allowed to perform in this ServicePerimeter.
+ "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"ingressPolicies": [ # List of IngressPolicies to apply to the perimeter. A perimeter may have multiple IngressPolicies, each of which is evaluated separately. Access is granted if any Ingress Policy grants it. Must be empty for a perimeter bridge.
@@ -812,7 +812,7 @@ Method Details
"identityType": "A String", # Specifies the type of identities that are allowed access from outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
"sources": [ # Sources that this IngressPolicy authorizes access from.
{ # The source that IngressPolicy authorizes access from.
- "accessLevel": "A String", # An AccessLevel resource name that allow resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
+ "accessLevel": "A String", # An AccessLevel resource name that allows resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
@@ -832,14 +832,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter are allowed.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter is allowed.
"A String",
],
"roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding IngressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"resources": [ # A list of Google Cloud resources that are inside of the service perimeter. Currently projects, folders, and VPCs are allowed. Project format: `projects/{project_number}` Folder format: `folders/{folder_id}` VPC network format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
@@ -859,43 +859,43 @@ Method Details
},
},
],
- "pattern": "A String", # URL pattern to allow. Only patterns of ".googleapis.com/*", "www.googleapis.com//*" and "*.appspot.com/* forms are supported, where should be an alphanumeric name.
+ "pattern": "A String", # URL pattern to allow. Only patterns of `".googleapis.com/*"`, `"www.googleapis.com//*"`, and `"*.appspot.com/*"` forms are supported, where `` should be an alphanumeric name.
"service": "A String", # Supported service to allow.
},
],
- "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.
+ "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless `enable_restriction` is `true`. You can specify a list of individual services, as well as include the `'RESTRICTED-SERVICES'` value, which automatically includes all of the services protected by the perimeter.
"A String",
],
- "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.
+ "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in `allowed_services`.
"servicePatternsEnforcementScopes": [ # Defines the enforcement scopes of service patterns.
"A String",
],
},
},
- "status": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Current ServicePerimeter configuration. Specifies sets of resources, restricted services and access levels that determine perimeter content and boundaries.
+ "status": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Current ServicePerimeter configuration. Specifies sets of resources, restricted services, and access levels that determine perimeter content and boundaries.
"accessLevels": [ # A list of `AccessLevel` resource names that allow resources within the `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed must be in the same policy as this `ServicePerimeter`. Referencing a nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. For Service Perimeter Bridge, must be empty.
"A String",
],
"egressPolicies": [ # List of EgressPolicies to apply to the perimeter. A perimeter may have multiple EgressPolicies, each of which is evaluated separately. Access is granted if any EgressPolicy grants it. Must be empty for a perimeter bridge.
- { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates as well as the API services and API actions being used. They do not related to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
- "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
+ { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates to, as well as the API services and API actions being used. They do not relate to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
+ "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
"identities": [ # A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.
"A String",
],
"identityType": "A String", # Specifies the type of identities that are allowed access to outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
- "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` fields is non-empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
+ "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` field is not empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
"sources": [ # Sources that this EgressPolicy authorizes access from. If this field is not empty, then `source_restriction` must be set to `SOURCE_RESTRICTION_ENABLED`.
{ # The source that EgressPolicy authorizes access from inside the ServicePerimeter to somewhere outside the ServicePerimeter boundaries.
"accessLevel": "A String", # An AccessLevel resource name that allows protected resources inside the ServicePerimeters to access outside the ServicePerimeter boundaries. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If an AccessLevel name is not specified, only resources within the perimeter can be accessed through Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all EgressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access data outside the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
- "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`. You can't use `*` in this field to allow all Google Cloud resources.
+ "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`. You can't use `*` in this field to allow all Google Cloud resources.
},
],
},
"egressTo": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the ApiOperation intended to be performed on the `resources` specified. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. The request must match `operations` AND `resources` fields in order to be allowed egress out of the perimeter. # Defines the conditions on the ApiOperation and destination resources that cause this EgressPolicy to apply.
- "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are s3://BUCKET_NAME, s3a://BUCKET_NAME, and s3n://BUCKET_NAME. For Azure Storage, the supported format is azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches if it contains an external resource in this list (Example: s3://bucket/path). Currently '*' is not allowed.
+ "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are `s3://BUCKET_NAME`, `s3a://BUCKET_NAME`, and `s3n://BUCKET_NAME`. For Azure Storage, the supported format is `azure://myaccount.blob.core.windows.net/CONTAINER_NAME`. A request matches if it contains an external resource in this list (Example: `s3://bucket/path`). Currently `'*'` is not allowed.
"A String",
],
"operations": [ # A list of ApiOperations allowed to be performed by the sources specified in the corresponding EgressFrom. A request matches if it uses an operation/service in this list.
@@ -909,14 +909,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
"A String",
],
- "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom. are allowed to perform in this ServicePerimeter.
+ "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"ingressPolicies": [ # List of IngressPolicies to apply to the perimeter. A perimeter may have multiple IngressPolicies, each of which is evaluated separately. Access is granted if any Ingress Policy grants it. Must be empty for a perimeter bridge.
@@ -928,7 +928,7 @@ Method Details
"identityType": "A String", # Specifies the type of identities that are allowed access from outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
"sources": [ # Sources that this IngressPolicy authorizes access from.
{ # The source that IngressPolicy authorizes access from.
- "accessLevel": "A String", # An AccessLevel resource name that allow resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
+ "accessLevel": "A String", # An AccessLevel resource name that allows resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
@@ -948,14 +948,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter are allowed.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter is allowed.
"A String",
],
"roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding IngressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"resources": [ # A list of Google Cloud resources that are inside of the service perimeter. Currently projects, folders, and VPCs are allowed. Project format: `projects/{project_number}` Folder format: `folders/{folder_id}` VPC network format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
@@ -975,21 +975,21 @@ Method Details
},
},
],
- "pattern": "A String", # URL pattern to allow. Only patterns of ".googleapis.com/*", "www.googleapis.com//*" and "*.appspot.com/* forms are supported, where should be an alphanumeric name.
+ "pattern": "A String", # URL pattern to allow. Only patterns of `".googleapis.com/*"`, `"www.googleapis.com//*"`, and `"*.appspot.com/*"` forms are supported, where `` should be an alphanumeric name.
"service": "A String", # Supported service to allow.
},
],
- "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.
+ "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless `enable_restriction` is `true`. You can specify a list of individual services, as well as include the `'RESTRICTED-SERVICES'` value, which automatically includes all of the services protected by the perimeter.
"A String",
],
- "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.
+ "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in `allowed_services`.
"servicePatternsEnforcementScopes": [ # Defines the enforcement scopes of service patterns.
"A String",
],
},
},
"title": "A String", # Human readable title. Must be unique within the Policy.
- "useExplicitDryRunSpec": True or False, # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists for all Service Perimeters, and that spec is identical to the status for those Service Perimeters. When this flag is set, it inhibits the generation of the implicit spec, thereby allowing the user to explicitly provide a configuration ("spec") to use in a dry-run version of the Service Perimeter. This allows the user to test changes to the enforced config ("status") without actually enforcing them. This testing is done through analyzing the differences between currently enforced and suggested restrictions. use_explicit_dry_run_spec must bet set to True if any of the fields in the spec are set to non-default values.
+ "useExplicitDryRunSpec": True or False, # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists for all Service Perimeters, and that spec is identical to the status for those Service Perimeters. When this flag is set, it inhibits the generation of the implicit spec, thereby allowing the user to explicitly provide a configuration ("spec") to use in a dry-run version of the Service Perimeter. This allows the user to test changes to the enforced config ("status") without actually enforcing them. This testing is done through analyzing the differences between currently enforced and suggested restrictions. `use_explicit_dry_run_spec` must be set to `true` if any of the fields in the spec are set to non-default values.
},
],
}
@@ -1022,31 +1022,31 @@ Method Details
"description": "A String", # Description of the `ServicePerimeter` and its use. Does not affect behavior.
"etag": "A String", # Optional. An opaque identifier for the current version of the `ServicePerimeter`. This identifier does not follow any specific format. If an etag is not provided, the operation will be performed as if a valid etag is provided.
"name": "A String", # Identifier. Resource name for the `ServicePerimeter`. Format: `accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}`. The `service_perimeter` component must begin with a letter, followed by alphanumeric characters or `_`. After you create a `ServicePerimeter`, you cannot change its `name`.
- "perimeterType": "A String", # Perimeter type indicator. A single project or VPC network is allowed to be a member of single regular perimeter, but multiple service perimeter bridges. A project cannot be a included in a perimeter bridge without being included in regular perimeter. For perimeter bridges, the restricted service list as well as access level lists must be empty.
- "spec": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Proposed (or dry run) ServicePerimeter configuration. This configuration allows to specify and test ServicePerimeter configuration without enforcing actual access restrictions. Only allowed to be set when the "use_explicit_dry_run_spec" flag is set.
+ "perimeterType": "A String", # Perimeter type indicator. A single project or VPC network is allowed to be a member of a single regular perimeter, but multiple service perimeter bridges. A project cannot be included in a perimeter bridge without being included in a regular perimeter. For perimeter bridges, the restricted service list as well as access level lists must be empty.
+ "spec": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Proposed (or dry run) ServicePerimeter configuration. This configuration allows you to specify and test ServicePerimeter configuration without enforcing actual access restrictions. Only allowed to be set when the `use_explicit_dry_run_spec` flag is set.
"accessLevels": [ # A list of `AccessLevel` resource names that allow resources within the `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed must be in the same policy as this `ServicePerimeter`. Referencing a nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. For Service Perimeter Bridge, must be empty.
"A String",
],
"egressPolicies": [ # List of EgressPolicies to apply to the perimeter. A perimeter may have multiple EgressPolicies, each of which is evaluated separately. Access is granted if any EgressPolicy grants it. Must be empty for a perimeter bridge.
- { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates as well as the API services and API actions being used. They do not related to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
- "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
+ { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates to, as well as the API services and API actions being used. They do not relate to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
+ "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
"identities": [ # A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.
"A String",
],
"identityType": "A String", # Specifies the type of identities that are allowed access to outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
- "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` fields is non-empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
+ "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` field is not empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
"sources": [ # Sources that this EgressPolicy authorizes access from. If this field is not empty, then `source_restriction` must be set to `SOURCE_RESTRICTION_ENABLED`.
{ # The source that EgressPolicy authorizes access from inside the ServicePerimeter to somewhere outside the ServicePerimeter boundaries.
"accessLevel": "A String", # An AccessLevel resource name that allows protected resources inside the ServicePerimeters to access outside the ServicePerimeter boundaries. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If an AccessLevel name is not specified, only resources within the perimeter can be accessed through Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all EgressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access data outside the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
- "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`. You can't use `*` in this field to allow all Google Cloud resources.
+ "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`. You can't use `*` in this field to allow all Google Cloud resources.
},
],
},
"egressTo": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the ApiOperation intended to be performed on the `resources` specified. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. The request must match `operations` AND `resources` fields in order to be allowed egress out of the perimeter. # Defines the conditions on the ApiOperation and destination resources that cause this EgressPolicy to apply.
- "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are s3://BUCKET_NAME, s3a://BUCKET_NAME, and s3n://BUCKET_NAME. For Azure Storage, the supported format is azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches if it contains an external resource in this list (Example: s3://bucket/path). Currently '*' is not allowed.
+ "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are `s3://BUCKET_NAME`, `s3a://BUCKET_NAME`, and `s3n://BUCKET_NAME`. For Azure Storage, the supported format is `azure://myaccount.blob.core.windows.net/CONTAINER_NAME`. A request matches if it contains an external resource in this list (Example: `s3://bucket/path`). Currently `'*'` is not allowed.
"A String",
],
"operations": [ # A list of ApiOperations allowed to be performed by the sources specified in the corresponding EgressFrom. A request matches if it uses an operation/service in this list.
@@ -1060,14 +1060,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
"A String",
],
- "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom. are allowed to perform in this ServicePerimeter.
+ "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"ingressPolicies": [ # List of IngressPolicies to apply to the perimeter. A perimeter may have multiple IngressPolicies, each of which is evaluated separately. Access is granted if any Ingress Policy grants it. Must be empty for a perimeter bridge.
@@ -1079,7 +1079,7 @@ Method Details
"identityType": "A String", # Specifies the type of identities that are allowed access from outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
"sources": [ # Sources that this IngressPolicy authorizes access from.
{ # The source that IngressPolicy authorizes access from.
- "accessLevel": "A String", # An AccessLevel resource name that allow resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
+ "accessLevel": "A String", # An AccessLevel resource name that allows resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
@@ -1099,14 +1099,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter are allowed.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter is allowed.
"A String",
],
"roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding IngressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"resources": [ # A list of Google Cloud resources that are inside of the service perimeter. Currently projects, folders, and VPCs are allowed. Project format: `projects/{project_number}` Folder format: `folders/{folder_id}` VPC network format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
@@ -1126,43 +1126,43 @@ Method Details
},
},
],
- "pattern": "A String", # URL pattern to allow. Only patterns of ".googleapis.com/*", "www.googleapis.com//*" and "*.appspot.com/* forms are supported, where should be an alphanumeric name.
+ "pattern": "A String", # URL pattern to allow. Only patterns of `".googleapis.com/*"`, `"www.googleapis.com//*"`, and `"*.appspot.com/*"` forms are supported, where `` should be an alphanumeric name.
"service": "A String", # Supported service to allow.
},
],
- "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.
+ "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless `enable_restriction` is `true`. You can specify a list of individual services, as well as include the `'RESTRICTED-SERVICES'` value, which automatically includes all of the services protected by the perimeter.
"A String",
],
- "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.
+ "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in `allowed_services`.
"servicePatternsEnforcementScopes": [ # Defines the enforcement scopes of service patterns.
"A String",
],
},
},
- "status": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Current ServicePerimeter configuration. Specifies sets of resources, restricted services and access levels that determine perimeter content and boundaries.
+ "status": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Current ServicePerimeter configuration. Specifies sets of resources, restricted services, and access levels that determine perimeter content and boundaries.
"accessLevels": [ # A list of `AccessLevel` resource names that allow resources within the `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed must be in the same policy as this `ServicePerimeter`. Referencing a nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. For Service Perimeter Bridge, must be empty.
"A String",
],
"egressPolicies": [ # List of EgressPolicies to apply to the perimeter. A perimeter may have multiple EgressPolicies, each of which is evaluated separately. Access is granted if any EgressPolicy grants it. Must be empty for a perimeter bridge.
- { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates as well as the API services and API actions being used. They do not related to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
- "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
+ { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates to, as well as the API services and API actions being used. They do not relate to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
+ "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
"identities": [ # A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.
"A String",
],
"identityType": "A String", # Specifies the type of identities that are allowed access to outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
- "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` fields is non-empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
+ "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` field is not empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
"sources": [ # Sources that this EgressPolicy authorizes access from. If this field is not empty, then `source_restriction` must be set to `SOURCE_RESTRICTION_ENABLED`.
{ # The source that EgressPolicy authorizes access from inside the ServicePerimeter to somewhere outside the ServicePerimeter boundaries.
"accessLevel": "A String", # An AccessLevel resource name that allows protected resources inside the ServicePerimeters to access outside the ServicePerimeter boundaries. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If an AccessLevel name is not specified, only resources within the perimeter can be accessed through Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all EgressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access data outside the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
- "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`. You can't use `*` in this field to allow all Google Cloud resources.
+ "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`. You can't use `*` in this field to allow all Google Cloud resources.
},
],
},
"egressTo": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the ApiOperation intended to be performed on the `resources` specified. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. The request must match `operations` AND `resources` fields in order to be allowed egress out of the perimeter. # Defines the conditions on the ApiOperation and destination resources that cause this EgressPolicy to apply.
- "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are s3://BUCKET_NAME, s3a://BUCKET_NAME, and s3n://BUCKET_NAME. For Azure Storage, the supported format is azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches if it contains an external resource in this list (Example: s3://bucket/path). Currently '*' is not allowed.
+ "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are `s3://BUCKET_NAME`, `s3a://BUCKET_NAME`, and `s3n://BUCKET_NAME`. For Azure Storage, the supported format is `azure://myaccount.blob.core.windows.net/CONTAINER_NAME`. A request matches if it contains an external resource in this list (Example: `s3://bucket/path`). Currently `'*'` is not allowed.
"A String",
],
"operations": [ # A list of ApiOperations allowed to be performed by the sources specified in the corresponding EgressFrom. A request matches if it uses an operation/service in this list.
@@ -1176,14 +1176,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
"A String",
],
- "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom. are allowed to perform in this ServicePerimeter.
+ "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"ingressPolicies": [ # List of IngressPolicies to apply to the perimeter. A perimeter may have multiple IngressPolicies, each of which is evaluated separately. Access is granted if any Ingress Policy grants it. Must be empty for a perimeter bridge.
@@ -1195,7 +1195,7 @@ Method Details
"identityType": "A String", # Specifies the type of identities that are allowed access from outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
"sources": [ # Sources that this IngressPolicy authorizes access from.
{ # The source that IngressPolicy authorizes access from.
- "accessLevel": "A String", # An AccessLevel resource name that allow resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
+ "accessLevel": "A String", # An AccessLevel resource name that allows resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
@@ -1215,14 +1215,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter are allowed.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter is allowed.
"A String",
],
"roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding IngressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"resources": [ # A list of Google Cloud resources that are inside of the service perimeter. Currently projects, folders, and VPCs are allowed. Project format: `projects/{project_number}` Folder format: `folders/{folder_id}` VPC network format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
@@ -1242,21 +1242,21 @@ Method Details
},
},
],
- "pattern": "A String", # URL pattern to allow. Only patterns of ".googleapis.com/*", "www.googleapis.com//*" and "*.appspot.com/* forms are supported, where should be an alphanumeric name.
+ "pattern": "A String", # URL pattern to allow. Only patterns of `".googleapis.com/*"`, `"www.googleapis.com//*"`, and `"*.appspot.com/*"` forms are supported, where `` should be an alphanumeric name.
"service": "A String", # Supported service to allow.
},
],
- "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.
+ "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless `enable_restriction` is `true`. You can specify a list of individual services, as well as include the `'RESTRICTED-SERVICES'` value, which automatically includes all of the services protected by the perimeter.
"A String",
],
- "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.
+ "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in `allowed_services`.
"servicePatternsEnforcementScopes": [ # Defines the enforcement scopes of service patterns.
"A String",
],
},
},
"title": "A String", # Human readable title. Must be unique within the Policy.
- "useExplicitDryRunSpec": True or False, # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists for all Service Perimeters, and that spec is identical to the status for those Service Perimeters. When this flag is set, it inhibits the generation of the implicit spec, thereby allowing the user to explicitly provide a configuration ("spec") to use in a dry-run version of the Service Perimeter. This allows the user to test changes to the enforced config ("status") without actually enforcing them. This testing is done through analyzing the differences between currently enforced and suggested restrictions. use_explicit_dry_run_spec must bet set to True if any of the fields in the spec are set to non-default values.
+ "useExplicitDryRunSpec": True or False, # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists for all Service Perimeters, and that spec is identical to the status for those Service Perimeters. When this flag is set, it inhibits the generation of the implicit spec, thereby allowing the user to explicitly provide a configuration ("spec") to use in a dry-run version of the Service Perimeter. This allows the user to test changes to the enforced config ("status") without actually enforcing them. This testing is done through analyzing the differences between currently enforced and suggested restrictions. `use_explicit_dry_run_spec` must be set to `true` if any of the fields in the spec are set to non-default values.
}
deletedPrincipalSyntax: string, Optional. If true, the response will contain the deleted principal syntax for identities that support it and the request can contain identities with deleted principal syntax.
@@ -1296,7 +1296,7 @@ Method Details
replaceAll(parent, body=None, x__xgafv=None)
- Replace all existing service perimeters in an access policy with the service perimeters provided. This is done atomically. The long-running operation from this RPC has a successful status after all replacements propagate to long-lasting storage. Replacements containing errors result in an error response for the first error encountered. Upon an error, replacements are cancelled and existing service perimeters are not affected. The Operation.response field contains ReplaceServicePerimetersResponse.
+ Replaces all existing service perimeters in an access policy with the service perimeters provided. This is done atomically. The long-running operation from this RPC has a successful status after all replacements propagate to long-lasting storage. Replacements containing errors result in an error response for the first error encountered. Upon an error, replacements are cancelled and existing service perimeters are not affected. The `Operation.response` field contains `ReplaceServicePerimetersResponse`.
Args:
parent: string, Required. Resource name for the access policy which owns these Service Perimeters. Format: `accessPolicies/{policy_id}` (required)
@@ -1310,31 +1310,31 @@ Method Details
"description": "A String", # Description of the `ServicePerimeter` and its use. Does not affect behavior.
"etag": "A String", # Optional. An opaque identifier for the current version of the `ServicePerimeter`. This identifier does not follow any specific format. If an etag is not provided, the operation will be performed as if a valid etag is provided.
"name": "A String", # Identifier. Resource name for the `ServicePerimeter`. Format: `accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}`. The `service_perimeter` component must begin with a letter, followed by alphanumeric characters or `_`. After you create a `ServicePerimeter`, you cannot change its `name`.
- "perimeterType": "A String", # Perimeter type indicator. A single project or VPC network is allowed to be a member of single regular perimeter, but multiple service perimeter bridges. A project cannot be a included in a perimeter bridge without being included in regular perimeter. For perimeter bridges, the restricted service list as well as access level lists must be empty.
- "spec": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Proposed (or dry run) ServicePerimeter configuration. This configuration allows to specify and test ServicePerimeter configuration without enforcing actual access restrictions. Only allowed to be set when the "use_explicit_dry_run_spec" flag is set.
+ "perimeterType": "A String", # Perimeter type indicator. A single project or VPC network is allowed to be a member of a single regular perimeter, but multiple service perimeter bridges. A project cannot be included in a perimeter bridge without being included in a regular perimeter. For perimeter bridges, the restricted service list as well as access level lists must be empty.
+ "spec": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Proposed (or dry run) ServicePerimeter configuration. This configuration allows you to specify and test ServicePerimeter configuration without enforcing actual access restrictions. Only allowed to be set when the `use_explicit_dry_run_spec` flag is set.
"accessLevels": [ # A list of `AccessLevel` resource names that allow resources within the `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed must be in the same policy as this `ServicePerimeter`. Referencing a nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. For Service Perimeter Bridge, must be empty.
"A String",
],
"egressPolicies": [ # List of EgressPolicies to apply to the perimeter. A perimeter may have multiple EgressPolicies, each of which is evaluated separately. Access is granted if any EgressPolicy grants it. Must be empty for a perimeter bridge.
- { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates as well as the API services and API actions being used. They do not related to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
- "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
+ { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates to, as well as the API services and API actions being used. They do not relate to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
+ "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
"identities": [ # A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.
"A String",
],
"identityType": "A String", # Specifies the type of identities that are allowed access to outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
- "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` fields is non-empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
+ "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` field is not empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
"sources": [ # Sources that this EgressPolicy authorizes access from. If this field is not empty, then `source_restriction` must be set to `SOURCE_RESTRICTION_ENABLED`.
{ # The source that EgressPolicy authorizes access from inside the ServicePerimeter to somewhere outside the ServicePerimeter boundaries.
"accessLevel": "A String", # An AccessLevel resource name that allows protected resources inside the ServicePerimeters to access outside the ServicePerimeter boundaries. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If an AccessLevel name is not specified, only resources within the perimeter can be accessed through Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all EgressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access data outside the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
- "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`. You can't use `*` in this field to allow all Google Cloud resources.
+ "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`. You can't use `*` in this field to allow all Google Cloud resources.
},
],
},
"egressTo": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the ApiOperation intended to be performed on the `resources` specified. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. The request must match `operations` AND `resources` fields in order to be allowed egress out of the perimeter. # Defines the conditions on the ApiOperation and destination resources that cause this EgressPolicy to apply.
- "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are s3://BUCKET_NAME, s3a://BUCKET_NAME, and s3n://BUCKET_NAME. For Azure Storage, the supported format is azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches if it contains an external resource in this list (Example: s3://bucket/path). Currently '*' is not allowed.
+ "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are `s3://BUCKET_NAME`, `s3a://BUCKET_NAME`, and `s3n://BUCKET_NAME`. For Azure Storage, the supported format is `azure://myaccount.blob.core.windows.net/CONTAINER_NAME`. A request matches if it contains an external resource in this list (Example: `s3://bucket/path`). Currently `'*'` is not allowed.
"A String",
],
"operations": [ # A list of ApiOperations allowed to be performed by the sources specified in the corresponding EgressFrom. A request matches if it uses an operation/service in this list.
@@ -1348,14 +1348,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
"A String",
],
- "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom. are allowed to perform in this ServicePerimeter.
+ "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"ingressPolicies": [ # List of IngressPolicies to apply to the perimeter. A perimeter may have multiple IngressPolicies, each of which is evaluated separately. Access is granted if any Ingress Policy grants it. Must be empty for a perimeter bridge.
@@ -1367,7 +1367,7 @@ Method Details
"identityType": "A String", # Specifies the type of identities that are allowed access from outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
"sources": [ # Sources that this IngressPolicy authorizes access from.
{ # The source that IngressPolicy authorizes access from.
- "accessLevel": "A String", # An AccessLevel resource name that allow resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
+ "accessLevel": "A String", # An AccessLevel resource name that allows resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
@@ -1387,14 +1387,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter are allowed.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter is allowed.
"A String",
],
"roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding IngressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"resources": [ # A list of Google Cloud resources that are inside of the service perimeter. Currently projects, folders, and VPCs are allowed. Project format: `projects/{project_number}` Folder format: `folders/{folder_id}` VPC network format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
@@ -1414,43 +1414,43 @@ Method Details
},
},
],
- "pattern": "A String", # URL pattern to allow. Only patterns of ".googleapis.com/*", "www.googleapis.com//*" and "*.appspot.com/* forms are supported, where should be an alphanumeric name.
+ "pattern": "A String", # URL pattern to allow. Only patterns of `".googleapis.com/*"`, `"www.googleapis.com//*"`, and `"*.appspot.com/*"` forms are supported, where `` should be an alphanumeric name.
"service": "A String", # Supported service to allow.
},
],
- "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.
+ "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless `enable_restriction` is `true`. You can specify a list of individual services, as well as include the `'RESTRICTED-SERVICES'` value, which automatically includes all of the services protected by the perimeter.
"A String",
],
- "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.
+ "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in `allowed_services`.
"servicePatternsEnforcementScopes": [ # Defines the enforcement scopes of service patterns.
"A String",
],
},
},
- "status": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Current ServicePerimeter configuration. Specifies sets of resources, restricted services and access levels that determine perimeter content and boundaries.
+ "status": { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. # Current ServicePerimeter configuration. Specifies sets of resources, restricted services, and access levels that determine perimeter content and boundaries.
"accessLevels": [ # A list of `AccessLevel` resource names that allow resources within the `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed must be in the same policy as this `ServicePerimeter`. Referencing a nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. For Service Perimeter Bridge, must be empty.
"A String",
],
"egressPolicies": [ # List of EgressPolicies to apply to the perimeter. A perimeter may have multiple EgressPolicies, each of which is evaluated separately. Access is granted if any EgressPolicy grants it. Must be empty for a perimeter bridge.
- { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates as well as the API services and API actions being used. They do not related to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
- "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
+ { # Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates to, as well as the API services and API actions being used. They do not relate to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.
+ "egressFrom": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. # Defines conditions on the source of a request causing this EgressPolicy to apply.
"identities": [ # A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.
"A String",
],
"identityType": "A String", # Specifies the type of identities that are allowed access to outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
- "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` fields is non-empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
+ "sourceRestriction": "A String", # Whether to enforce traffic restrictions based on `sources` field. If the `sources` field is not empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.
"sources": [ # Sources that this EgressPolicy authorizes access from. If this field is not empty, then `source_restriction` must be set to `SOURCE_RESTRICTION_ENABLED`.
{ # The source that EgressPolicy authorizes access from inside the ServicePerimeter to somewhere outside the ServicePerimeter boundaries.
"accessLevel": "A String", # An AccessLevel resource name that allows protected resources inside the ServicePerimeters to access outside the ServicePerimeter boundaries. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If an AccessLevel name is not specified, only resources within the perimeter can be accessed through Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all EgressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access data outside the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
- "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`. You can't use `*` in this field to allow all Google Cloud resources.
+ "resource": "A String", # A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`. You can't use `*` in this field to allow all Google Cloud resources.
},
],
},
"egressTo": { # Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the ApiOperation intended to be performed on the `resources` specified. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. The request must match `operations` AND `resources` fields in order to be allowed egress out of the perimeter. # Defines the conditions on the ApiOperation and destination resources that cause this EgressPolicy to apply.
- "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are s3://BUCKET_NAME, s3a://BUCKET_NAME, and s3n://BUCKET_NAME. For Azure Storage, the supported format is azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches if it contains an external resource in this list (Example: s3://bucket/path). Currently '*' is not allowed.
+ "externalResources": [ # A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are `s3://BUCKET_NAME`, `s3a://BUCKET_NAME`, and `s3n://BUCKET_NAME`. For Azure Storage, the supported format is `azure://myaccount.blob.core.windows.net/CONTAINER_NAME`. A request matches if it contains an external resource in this list (Example: `s3://bucket/path`). Currently `'*'` is not allowed.
"A String",
],
"operations": [ # A list of ApiOperations allowed to be performed by the sources specified in the corresponding EgressFrom. A request matches if it uses an operation/service in this list.
@@ -1464,14 +1464,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.
"A String",
],
- "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom. are allowed to perform in this ServicePerimeter.
+ "roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"ingressPolicies": [ # List of IngressPolicies to apply to the perimeter. A perimeter may have multiple IngressPolicies, each of which is evaluated separately. Access is granted if any Ingress Policy grants it. Must be empty for a perimeter bridge.
@@ -1483,7 +1483,7 @@ Method Details
"identityType": "A String", # Specifies the type of identities that are allowed access from outside the perimeter. If left unspecified, then members of `identities` field will be allowed access.
"sources": [ # Sources that this IngressPolicy authorizes access from.
{ # The source that IngressPolicy authorizes access from.
- "accessLevel": "A String", # An AccessLevel resource name that allow resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
+ "accessLevel": "A String", # An AccessLevel resource name that allows resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.
"pscEndpoint": { # Specifies the Private Service Connect endpoint that an API call refers to. # A PrivateServiceConnectEndpoint that is allowed to access the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in.
"forwardingRule": "A String", # The full resource name of the global forwarding rule that identifies a Private Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/forwardingRules/{FORWARDING_RULE_ID}`.
},
@@ -1503,14 +1503,14 @@ Method Details
"serviceName": "A String", # The name of the API whose methods or permissions the IngressPolicy or EgressPolicy want to allow. A single ApiOperation with `service_name` field set to `*` will allow all methods AND permissions for all services.
},
],
- "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter are allowed.
+ "resources": [ # A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter is allowed.
"A String",
],
"roles": [ # IAM roles that represent the set of operations that the sources specified in the corresponding IngressFrom are allowed to perform in this ServicePerimeter.
"A String",
],
},
- "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
+ "title": "A String", # Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.
},
],
"resources": [ # A list of Google Cloud resources that are inside of the service perimeter. Currently projects, folders, and VPCs are allowed. Project format: `projects/{project_number}` Folder format: `folders/{folder_id}` VPC network format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
@@ -1530,21 +1530,21 @@ Method Details
},
},
],
- "pattern": "A String", # URL pattern to allow. Only patterns of ".googleapis.com/*", "www.googleapis.com//*" and "*.appspot.com/* forms are supported, where should be an alphanumeric name.
+ "pattern": "A String", # URL pattern to allow. Only patterns of `".googleapis.com/*"`, `"www.googleapis.com//*"`, and `"*.appspot.com/*"` forms are supported, where `` should be an alphanumeric name.
"service": "A String", # Supported service to allow.
},
],
- "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.
+ "allowedServices": [ # The list of APIs usable within the Service Perimeter. Must be empty unless `enable_restriction` is `true`. You can specify a list of individual services, as well as include the `'RESTRICTED-SERVICES'` value, which automatically includes all of the services protected by the perimeter.
"A String",
],
- "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.
+ "enableRestriction": True or False, # Whether to restrict API calls within the Service Perimeter to the list of APIs specified in `allowed_services`.
"servicePatternsEnforcementScopes": [ # Defines the enforcement scopes of service patterns.
"A String",
],
},
},
"title": "A String", # Human readable title. Must be unique within the Policy.
- "useExplicitDryRunSpec": True or False, # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists for all Service Perimeters, and that spec is identical to the status for those Service Perimeters. When this flag is set, it inhibits the generation of the implicit spec, thereby allowing the user to explicitly provide a configuration ("spec") to use in a dry-run version of the Service Perimeter. This allows the user to test changes to the enforced config ("status") without actually enforcing them. This testing is done through analyzing the differences between currently enforced and suggested restrictions. use_explicit_dry_run_spec must bet set to True if any of the fields in the spec are set to non-default values.
+ "useExplicitDryRunSpec": True or False, # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists for all Service Perimeters, and that spec is identical to the status for those Service Perimeters. When this flag is set, it inhibits the generation of the implicit spec, thereby allowing the user to explicitly provide a configuration ("spec") to use in a dry-run version of the Service Perimeter. This allows the user to test changes to the enforced config ("status") without actually enforcing them. This testing is done through analyzing the differences between currently enforced and suggested restrictions. `use_explicit_dry_run_spec` must be set to `true` if any of the fields in the spec are set to non-default values.
},
],
}
diff --git a/docs/dyn/accesscontextmanager_v1.folders.html b/docs/dyn/accesscontextmanager_v1.folders.html
index a2174e48ae..eb12836aa4 100644
--- a/docs/dyn/accesscontextmanager_v1.folders.html
+++ b/docs/dyn/accesscontextmanager_v1.folders.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
lookupConfiguredServicePerimeter(resource, x__xgafv=None)
-Looks up the configured service perimeter for a given resource Format: ['projects/{projectNumber}', 'folders/{folderNumber}'].
+Looks up the configured service perimeter for a given resource. Format: `['projects/{projectNumber}', 'folders/{folderNumber}']`.
Method Details
close()
@@ -88,10 +88,10 @@ Method Details
lookupConfiguredServicePerimeter(resource, x__xgafv=None)
- Looks up the configured service perimeter for a given resource Format: ['projects/{projectNumber}', 'folders/{folderNumber}'].
+ Looks up the configured service perimeter for a given resource. Format: `['projects/{projectNumber}', 'folders/{folderNumber}']`.
Args:
- resource: string, Required. The Resource to resolve (e.g. "projects/123", "folders/456"). (required)
+ resource: string, Required. The resource to resolve (for example, `projects/123` or `folders/456`). (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -101,8 +101,8 @@ Method Details
An object of the form:
{ # A configured service perimeter returned by Access Context Manager.
- "restrictedResource": "A String", # The resource (e.g. "projects/123", "folders/456") that directly owns/is restricted by the enforced perimeter.
- "restrictedResourceDryRun": "A String", # The resource (e.g. "projects/123", "folders/456") that directly owns/is restricted by the dry-run perimeter.
+ "restrictedResource": "A String", # The resource (for example, `projects/123` or `folders/456`) that directly owns or is restricted by the enforced perimeter.
+ "restrictedResourceDryRun": "A String", # The resource (for example, `projects/123` or `folders/456`) that directly owns or is restricted by the dry-run perimeter.
"servicePerimeter": "A String", # Fully qualified name of the configured enforced perimeter. Format: `accessPolicies/{policy_id}/servicePerimeters/{perimeter_name}` This field is empty if no enforced perimeter applies.
"servicePerimeterDryRun": "A String", # Fully qualified name of the configured dry-run perimeter. Format: `accessPolicies/{policy_id}/servicePerimeters/{perimeter_name}` This field is empty if no dry-run perimeter configuration applies.
}
diff --git a/docs/dyn/accesscontextmanager_v1.organizations.gcpUserAccessBindings.html b/docs/dyn/accesscontextmanager_v1.organizations.gcpUserAccessBindings.html
index b06067531f..91a02ad379 100644
--- a/docs/dyn/accesscontextmanager_v1.organizations.gcpUserAccessBindings.html
+++ b/docs/dyn/accesscontextmanager_v1.organizations.gcpUserAccessBindings.html
@@ -111,64 +111,64 @@ Method Details
The object takes the form of:
{ # Restricts access to Cloud Console and Google Cloud APIs for a set of users using Context-Aware Access.
- "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
+ "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: `"accessPolicies/9522/accessLevels/device_trusted"`
"A String",
],
- "dryRunAccessLevels": [ # Optional. Dry run access level that will be evaluated but will not be enforced. The access denial based on dry run policy will be logged. Only one access level is supported, not multiple. This list must have exactly one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
+ "dryRunAccessLevels": [ # Optional. Dry-run access level that is evaluated, but not enforced. Any access denial based on the dry-run policy is logged. Only one access level is supported, not multiple. This list must have exactly one element. Example: `"accessPolicies/9522/accessLevels/device_trusted"`
"A String",
],
- "groupKey": "A String", # Optional. Immutable. Google Group id whose users are subject to this binding's restrictions. See "id" in the [Google Workspace Directory API's Group Resource] (https://developers.google.com/admin-sdk/directory/v1/reference/groups#resource). If a group's email address/alias is changed, this resource will continue to point at the changed group. This field does not accept group email addresses or aliases. Example: "01d520gv4vjcrht"
- "name": "A String", # Immutable. Assigned by the server during creation. The last segment has an arbitrary length and has only URI unreserved characters (as defined by [RFC 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should not be specified by the client during creation. Example: "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"
+ "groupKey": "A String", # Optional. Immutable. Google Group ID whose users are subject to this binding's restrictions. See "id" in the [Google Workspace Directory API's Group Resource] (https://developers.google.com/admin-sdk/directory/v1/reference/groups#resource). If a group's email address or alias is changed, this resource will continue to point at the changed group. This field does not accept group email addresses or aliases. Example: `"01d520gv4vjcrht"`
+ "name": "A String", # Immutable. Assigned by the server during creation. The last segment has an arbitrary length and has only URI unreserved characters (as defined by [RFC 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should not be specified by the client during creation. Example: `"organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"`
"principal": { # The comprehensive identity container supporting identities including groups, service accounts, and federated identities. Only one of them can be set to create an access binding. # Optional. Immutable. The principal that is subject to the access policies in this policy binding.
"federatedPrincipal": "A String", # Immutable. The IAM principal identifier of the federated workforce or workload to assign the policy to. Examples include the following: * Single principal: `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}` * All workloads in a workload identity pool: `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*` * All Workforce Pools in a Google Cloud organization: `principalSet://cloudresourcemanager.googleapis.com/organizations/{organization_id}/type/WorkforcePool` Bindings created for all Workforce Pools in a Google Cloud organization support only `scoped_access_settings` with the `restricted_project` client scope and active `session_settings`. No other configurations are allowed.
- "serviceAccount": "A String", # Immutable. Service account email used to assign policies to a specific service account. If a service account is subject to multiple policies (e.g., if there is a policy for all service accounts in a project and a policy for the service account), the closest (i.e. the most specific) dry-run policy will be used for the dry-run functionality and the closest enforcement policy will be used for the enforcement.
+ "serviceAccount": "A String", # Immutable. Service account email used to assign policies to a specific service account. If a service account is subject to multiple policies (for example, if there is a policy for all service accounts in a project and a policy for the service account), the closest (that is, the most specific) dry-run policy is used for the dry-run functionality and the closest enforcement policy is used for enforcement.
"serviceAccountProjectNumber": "A String", # Immutable. Cloud project number used to assign policies to all service accounts owned by the project.
},
"scopedAccessSettings": [ # Optional. A list of scoped access settings that set this binding's restrictions on a subset of applications.
- { # A relationship between access settings and its scope.
- "activeSettings": { # Access settings represent the set of conditions that must be met for access to be granted. At least one of the fields must be set. # Optional. Access settings for this scoped access settings. This field may be empty if dry_run_settings is set.
- "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
+ { # A relationship between access settings and their scope.
+ "activeSettings": { # Access settings represent the set of conditions that must be met for access to be granted. At least one of the fields must be set. # Optional. Access settings for this `ScopedAccessSettings`. This field may be empty if `dry_run_settings` is set.
+ "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: `"accessPolicies/9522/accessLevels/device_trusted"`
"A String",
],
- "sessionSettings": { # Stores settings related to Google Cloud Session Length including session duration, the type of challenge (i.e. method) they should face when their session expires, and other related settings. # Optional. Session settings applied to user access on a given AccessScope.
+ "sessionSettings": { # Stores settings related to Google Cloud Session Length, including session duration, the type of challenge (that is, method) a user faces when their session expires, and other related settings. # Optional. Session settings applied to user access on a given `AccessScope`.
"maxInactivity": "A String", # Optional. How long a user is allowed to take between actions before a new access token must be issued. Only set for Google Cloud apps.
- "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` param. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
- "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When false, all fields set above will be disregarded and the session length is basically infinite. If `session_length` is set to zero, this field must be set to false.
- "sessionReauthMethod": "A String", # Optional. Session method when user's Google Cloud session is up.
- "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When false, the OIDC max_age param, if passed in the authentication request will be ignored. When true, the re-auth period will be the minimum of the session_length field and the max_age OIDC param.
+ "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` parameter. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
+ "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When `false`, all fields set above are disregarded and the session length is effectively infinite. If `session_length` is set to zero, this field must be set to `false`.
+ "sessionReauthMethod": "A String", # Optional. Session challenge method when a user's Google Cloud session expires.
+ "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When `false`, the OIDC `max_age` parameter, if passed in the authentication request, is ignored. When `true`, the re-authentication period is the minimum of the `session_length` field and the `max_age` OIDC parameter.
},
},
- "dryRunSettings": { # Access settings represent the set of conditions that must be met for access to be granted. At least one of the fields must be set. # Optional. Dry-run access settings for this scoped access settings. This field may be empty if active_settings is set.
- "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
+ "dryRunSettings": { # Access settings represent the set of conditions that must be met for access to be granted. At least one of the fields must be set. # Optional. Dry-run access settings for this `ScopedAccessSettings`. This field may be empty if `active_settings` is set.
+ "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: `"accessPolicies/9522/accessLevels/device_trusted"`
"A String",
],
- "sessionSettings": { # Stores settings related to Google Cloud Session Length including session duration, the type of challenge (i.e. method) they should face when their session expires, and other related settings. # Optional. Session settings applied to user access on a given AccessScope.
+ "sessionSettings": { # Stores settings related to Google Cloud Session Length, including session duration, the type of challenge (that is, method) a user faces when their session expires, and other related settings. # Optional. Session settings applied to user access on a given `AccessScope`.
"maxInactivity": "A String", # Optional. How long a user is allowed to take between actions before a new access token must be issued. Only set for Google Cloud apps.
- "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` param. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
- "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When false, all fields set above will be disregarded and the session length is basically infinite. If `session_length` is set to zero, this field must be set to false.
- "sessionReauthMethod": "A String", # Optional. Session method when user's Google Cloud session is up.
- "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When false, the OIDC max_age param, if passed in the authentication request will be ignored. When true, the re-auth period will be the minimum of the session_length field and the max_age OIDC param.
+ "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` parameter. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
+ "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When `false`, all fields set above are disregarded and the session length is effectively infinite. If `session_length` is set to zero, this field must be set to `false`.
+ "sessionReauthMethod": "A String", # Optional. Session challenge method when a user's Google Cloud session expires.
+ "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When `false`, the OIDC `max_age` parameter, if passed in the authentication request, is ignored. When `true`, the re-authentication period is the minimum of the `session_length` field and the `max_age` OIDC parameter.
},
},
- "scope": { # Access scope represents the client scope, etc. to which the settings will be applied to. # Optional. Application, etc. to which the access settings will be applied to. Implicitly, this is the scoped access settings key; as such, it must be unique and non-empty.
- "clientScope": { # Client scope represents the application, etc. subject to this binding's restrictions. # Optional. Client scope for this access scope.
+ "scope": { # Access scope represents the client scope to which the settings are applied. # Optional. Application or other resource to which the access settings are applied. Implicitly, this is the scoped access settings key; as such, it must be unique and non-empty.
+ "clientScope": { # Client scope represents the application, project, or other resource subject to this binding's restrictions. # Optional. Client scope for this access scope.
"restrictedClientApplication": { # An application that accesses Google Cloud APIs. # Optional. The application that is subject to this binding's scope.
"clientId": "A String", # The OAuth client ID of the application.
"name": "A String", # The name of the application. Example: "Cloud Console"
},
- "restrictedProject": { # A Google Cloud project which contains applications and resources that users can access. # Optional. The Google Cloud project that is subject to this binding's scope.
+ "restrictedProject": { # A Google Cloud project that contains applications and resources that users can access. # Optional. The Google Cloud project that is subject to this binding's scope.
"name": "A String", # The Google Cloud project resource name. Format: `projects/{project_number}`. Only the project number is supported. Example: `projects/1234567890`
},
},
},
},
],
- "sessionSettings": { # Stores settings related to Google Cloud Session Length including session duration, the type of challenge (i.e. method) they should face when their session expires, and other related settings. # Optional. The Google Cloud session length (GCSL) policy for the group key.
+ "sessionSettings": { # Stores settings related to Google Cloud Session Length, including session duration, the type of challenge (that is, method) a user faces when their session expires, and other related settings. # Optional. The Google Cloud session length (GCSL) policy for the group key.
"maxInactivity": "A String", # Optional. How long a user is allowed to take between actions before a new access token must be issued. Only set for Google Cloud apps.
- "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` param. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
- "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When false, all fields set above will be disregarded and the session length is basically infinite. If `session_length` is set to zero, this field must be set to false.
- "sessionReauthMethod": "A String", # Optional. Session method when user's Google Cloud session is up.
- "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When false, the OIDC max_age param, if passed in the authentication request will be ignored. When true, the re-auth period will be the minimum of the session_length field and the max_age OIDC param.
+ "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` parameter. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
+ "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When `false`, all fields set above are disregarded and the session length is effectively infinite. If `session_length` is set to zero, this field must be set to `false`.
+ "sessionReauthMethod": "A String", # Optional. Session challenge method when a user's Google Cloud session expires.
+ "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When `false`, the OIDC `max_age` parameter, if passed in the authentication request, is ignored. When `true`, the re-authentication period is the minimum of the `session_length` field and the `max_age` OIDC parameter.
},
}
@@ -251,64 +251,64 @@ Method Details
An object of the form:
{ # Restricts access to Cloud Console and Google Cloud APIs for a set of users using Context-Aware Access.
- "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
+ "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: `"accessPolicies/9522/accessLevels/device_trusted"`
"A String",
],
- "dryRunAccessLevels": [ # Optional. Dry run access level that will be evaluated but will not be enforced. The access denial based on dry run policy will be logged. Only one access level is supported, not multiple. This list must have exactly one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
+ "dryRunAccessLevels": [ # Optional. Dry-run access level that is evaluated, but not enforced. Any access denial based on the dry-run policy is logged. Only one access level is supported, not multiple. This list must have exactly one element. Example: `"accessPolicies/9522/accessLevels/device_trusted"`
"A String",
],
- "groupKey": "A String", # Optional. Immutable. Google Group id whose users are subject to this binding's restrictions. See "id" in the [Google Workspace Directory API's Group Resource] (https://developers.google.com/admin-sdk/directory/v1/reference/groups#resource). If a group's email address/alias is changed, this resource will continue to point at the changed group. This field does not accept group email addresses or aliases. Example: "01d520gv4vjcrht"
- "name": "A String", # Immutable. Assigned by the server during creation. The last segment has an arbitrary length and has only URI unreserved characters (as defined by [RFC 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should not be specified by the client during creation. Example: "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"
+ "groupKey": "A String", # Optional. Immutable. Google Group ID whose users are subject to this binding's restrictions. See "id" in the [Google Workspace Directory API's Group Resource] (https://developers.google.com/admin-sdk/directory/v1/reference/groups#resource). If a group's email address or alias is changed, this resource will continue to point at the changed group. This field does not accept group email addresses or aliases. Example: `"01d520gv4vjcrht"`
+ "name": "A String", # Immutable. Assigned by the server during creation. The last segment has an arbitrary length and has only URI unreserved characters (as defined by [RFC 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should not be specified by the client during creation. Example: `"organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"`
"principal": { # The comprehensive identity container supporting identities including groups, service accounts, and federated identities. Only one of them can be set to create an access binding. # Optional. Immutable. The principal that is subject to the access policies in this policy binding.
"federatedPrincipal": "A String", # Immutable. The IAM principal identifier of the federated workforce or workload to assign the policy to. Examples include the following: * Single principal: `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}` * All workloads in a workload identity pool: `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*` * All Workforce Pools in a Google Cloud organization: `principalSet://cloudresourcemanager.googleapis.com/organizations/{organization_id}/type/WorkforcePool` Bindings created for all Workforce Pools in a Google Cloud organization support only `scoped_access_settings` with the `restricted_project` client scope and active `session_settings`. No other configurations are allowed.
- "serviceAccount": "A String", # Immutable. Service account email used to assign policies to a specific service account. If a service account is subject to multiple policies (e.g., if there is a policy for all service accounts in a project and a policy for the service account), the closest (i.e. the most specific) dry-run policy will be used for the dry-run functionality and the closest enforcement policy will be used for the enforcement.
+ "serviceAccount": "A String", # Immutable. Service account email used to assign policies to a specific service account. If a service account is subject to multiple policies (for example, if there is a policy for all service accounts in a project and a policy for the service account), the closest (that is, the most specific) dry-run policy is used for the dry-run functionality and the closest enforcement policy is used for enforcement.
"serviceAccountProjectNumber": "A String", # Immutable. Cloud project number used to assign policies to all service accounts owned by the project.
},
"scopedAccessSettings": [ # Optional. A list of scoped access settings that set this binding's restrictions on a subset of applications.
- { # A relationship between access settings and its scope.
- "activeSettings": { # Access settings represent the set of conditions that must be met for access to be granted. At least one of the fields must be set. # Optional. Access settings for this scoped access settings. This field may be empty if dry_run_settings is set.
- "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
+ { # A relationship between access settings and their scope.
+ "activeSettings": { # Access settings represent the set of conditions that must be met for access to be granted. At least one of the fields must be set. # Optional. Access settings for this `ScopedAccessSettings`. This field may be empty if `dry_run_settings` is set.
+ "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: `"accessPolicies/9522/accessLevels/device_trusted"`
"A String",
],
- "sessionSettings": { # Stores settings related to Google Cloud Session Length including session duration, the type of challenge (i.e. method) they should face when their session expires, and other related settings. # Optional. Session settings applied to user access on a given AccessScope.
+ "sessionSettings": { # Stores settings related to Google Cloud Session Length, including session duration, the type of challenge (that is, method) a user faces when their session expires, and other related settings. # Optional. Session settings applied to user access on a given `AccessScope`.
"maxInactivity": "A String", # Optional. How long a user is allowed to take between actions before a new access token must be issued. Only set for Google Cloud apps.
- "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` param. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
- "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When false, all fields set above will be disregarded and the session length is basically infinite. If `session_length` is set to zero, this field must be set to false.
- "sessionReauthMethod": "A String", # Optional. Session method when user's Google Cloud session is up.
- "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When false, the OIDC max_age param, if passed in the authentication request will be ignored. When true, the re-auth period will be the minimum of the session_length field and the max_age OIDC param.
+ "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` parameter. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
+ "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When `false`, all fields set above are disregarded and the session length is effectively infinite. If `session_length` is set to zero, this field must be set to `false`.
+ "sessionReauthMethod": "A String", # Optional. Session challenge method when a user's Google Cloud session expires.
+ "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When `false`, the OIDC `max_age` parameter, if passed in the authentication request, is ignored. When `true`, the re-authentication period is the minimum of the `session_length` field and the `max_age` OIDC parameter.
},
},
- "dryRunSettings": { # Access settings represent the set of conditions that must be met for access to be granted. At least one of the fields must be set. # Optional. Dry-run access settings for this scoped access settings. This field may be empty if active_settings is set.
- "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
+ "dryRunSettings": { # Access settings represent the set of conditions that must be met for access to be granted. At least one of the fields must be set. # Optional. Dry-run access settings for this `ScopedAccessSettings`. This field may be empty if `active_settings` is set.
+ "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: `"accessPolicies/9522/accessLevels/device_trusted"`
"A String",
],
- "sessionSettings": { # Stores settings related to Google Cloud Session Length including session duration, the type of challenge (i.e. method) they should face when their session expires, and other related settings. # Optional. Session settings applied to user access on a given AccessScope.
+ "sessionSettings": { # Stores settings related to Google Cloud Session Length, including session duration, the type of challenge (that is, method) a user faces when their session expires, and other related settings. # Optional. Session settings applied to user access on a given `AccessScope`.
"maxInactivity": "A String", # Optional. How long a user is allowed to take between actions before a new access token must be issued. Only set for Google Cloud apps.
- "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` param. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
- "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When false, all fields set above will be disregarded and the session length is basically infinite. If `session_length` is set to zero, this field must be set to false.
- "sessionReauthMethod": "A String", # Optional. Session method when user's Google Cloud session is up.
- "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When false, the OIDC max_age param, if passed in the authentication request will be ignored. When true, the re-auth period will be the minimum of the session_length field and the max_age OIDC param.
+ "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` parameter. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
+ "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When `false`, all fields set above are disregarded and the session length is effectively infinite. If `session_length` is set to zero, this field must be set to `false`.
+ "sessionReauthMethod": "A String", # Optional. Session challenge method when a user's Google Cloud session expires.
+ "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When `false`, the OIDC `max_age` parameter, if passed in the authentication request, is ignored. When `true`, the re-authentication period is the minimum of the `session_length` field and the `max_age` OIDC parameter.
},
},
- "scope": { # Access scope represents the client scope, etc. to which the settings will be applied to. # Optional. Application, etc. to which the access settings will be applied to. Implicitly, this is the scoped access settings key; as such, it must be unique and non-empty.
- "clientScope": { # Client scope represents the application, etc. subject to this binding's restrictions. # Optional. Client scope for this access scope.
+ "scope": { # Access scope represents the client scope to which the settings are applied. # Optional. Application or other resource to which the access settings are applied. Implicitly, this is the scoped access settings key; as such, it must be unique and non-empty.
+ "clientScope": { # Client scope represents the application, project, or other resource subject to this binding's restrictions. # Optional. Client scope for this access scope.
"restrictedClientApplication": { # An application that accesses Google Cloud APIs. # Optional. The application that is subject to this binding's scope.
"clientId": "A String", # The OAuth client ID of the application.
"name": "A String", # The name of the application. Example: "Cloud Console"
},
- "restrictedProject": { # A Google Cloud project which contains applications and resources that users can access. # Optional. The Google Cloud project that is subject to this binding's scope.
+ "restrictedProject": { # A Google Cloud project that contains applications and resources that users can access. # Optional. The Google Cloud project that is subject to this binding's scope.
"name": "A String", # The Google Cloud project resource name. Format: `projects/{project_number}`. Only the project number is supported. Example: `projects/1234567890`
},
},
},
},
],
- "sessionSettings": { # Stores settings related to Google Cloud Session Length including session duration, the type of challenge (i.e. method) they should face when their session expires, and other related settings. # Optional. The Google Cloud session length (GCSL) policy for the group key.
+ "sessionSettings": { # Stores settings related to Google Cloud Session Length, including session duration, the type of challenge (that is, method) a user faces when their session expires, and other related settings. # Optional. The Google Cloud session length (GCSL) policy for the group key.
"maxInactivity": "A String", # Optional. How long a user is allowed to take between actions before a new access token must be issued. Only set for Google Cloud apps.
- "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` param. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
- "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When false, all fields set above will be disregarded and the session length is basically infinite. If `session_length` is set to zero, this field must be set to false.
- "sessionReauthMethod": "A String", # Optional. Session method when user's Google Cloud session is up.
- "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When false, the OIDC max_age param, if passed in the authentication request will be ignored. When true, the re-auth period will be the minimum of the session_length field and the max_age OIDC param.
+ "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` parameter. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
+ "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When `false`, all fields set above are disregarded and the session length is effectively infinite. If `session_length` is set to zero, this field must be set to `false`.
+ "sessionReauthMethod": "A String", # Optional. Session challenge method when a user's Google Cloud session expires.
+ "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When `false`, the OIDC `max_age` parameter, if passed in the authentication request, is ignored. When `true`, the re-authentication period is the minimum of the `session_length` field and the `max_age` OIDC parameter.
},
}
@@ -319,7 +319,7 @@ Method Details
Args:
parent: string, Required. Example: "organizations/256" (required)
- filter: string, Optional. The literal filter to apply to the results returned. See https://google.aip.dev/160 for more details. Accepts values: * `principal:group_key` * `principal:service_account` OR `principal:service_account_project_number`. If this field is empty or not one of the above, the default value is `"principal:group_key"`.
+ filter: string, Optional. Filters the results by principal type. Uses the [AIP-160](https://google.aip.dev/160) filter syntax. Only the following filters are supported: * `principal:group_key`: bindings for groups. This is the default when the filter is empty. * `principal:service_account OR principal:service_account_project_number`: bindings for service accounts. * `principal:federated_principal`: bindings for federated principals. Values can be in snake_case or camelCase. Whitespace and the order of `OR` terms don't matter. Any other filter returns an `INVALID_ARGUMENT` error.
pageSize: integer, Optional. Maximum number of items to return. The server may return fewer items. If left blank, the server may return any number of items.
pageToken: string, Optional. If left blank, returns the first page. To enumerate all items, use the next_page_token from your previous list operation.
x__xgafv: string, V1 error format.
@@ -333,64 +333,64 @@ Method Details
{ # Response of ListGcpUserAccessBindings.
"gcpUserAccessBindings": [ # GcpUserAccessBinding
{ # Restricts access to Cloud Console and Google Cloud APIs for a set of users using Context-Aware Access.
- "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
+ "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: `"accessPolicies/9522/accessLevels/device_trusted"`
"A String",
],
- "dryRunAccessLevels": [ # Optional. Dry run access level that will be evaluated but will not be enforced. The access denial based on dry run policy will be logged. Only one access level is supported, not multiple. This list must have exactly one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
+ "dryRunAccessLevels": [ # Optional. Dry-run access level that is evaluated, but not enforced. Any access denial based on the dry-run policy is logged. Only one access level is supported, not multiple. This list must have exactly one element. Example: `"accessPolicies/9522/accessLevels/device_trusted"`
"A String",
],
- "groupKey": "A String", # Optional. Immutable. Google Group id whose users are subject to this binding's restrictions. See "id" in the [Google Workspace Directory API's Group Resource] (https://developers.google.com/admin-sdk/directory/v1/reference/groups#resource). If a group's email address/alias is changed, this resource will continue to point at the changed group. This field does not accept group email addresses or aliases. Example: "01d520gv4vjcrht"
- "name": "A String", # Immutable. Assigned by the server during creation. The last segment has an arbitrary length and has only URI unreserved characters (as defined by [RFC 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should not be specified by the client during creation. Example: "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"
+ "groupKey": "A String", # Optional. Immutable. Google Group ID whose users are subject to this binding's restrictions. See "id" in the [Google Workspace Directory API's Group Resource] (https://developers.google.com/admin-sdk/directory/v1/reference/groups#resource). If a group's email address or alias is changed, this resource will continue to point at the changed group. This field does not accept group email addresses or aliases. Example: `"01d520gv4vjcrht"`
+ "name": "A String", # Immutable. Assigned by the server during creation. The last segment has an arbitrary length and has only URI unreserved characters (as defined by [RFC 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should not be specified by the client during creation. Example: `"organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"`
"principal": { # The comprehensive identity container supporting identities including groups, service accounts, and federated identities. Only one of them can be set to create an access binding. # Optional. Immutable. The principal that is subject to the access policies in this policy binding.
"federatedPrincipal": "A String", # Immutable. The IAM principal identifier of the federated workforce or workload to assign the policy to. Examples include the following: * Single principal: `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}` * All workloads in a workload identity pool: `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*` * All Workforce Pools in a Google Cloud organization: `principalSet://cloudresourcemanager.googleapis.com/organizations/{organization_id}/type/WorkforcePool` Bindings created for all Workforce Pools in a Google Cloud organization support only `scoped_access_settings` with the `restricted_project` client scope and active `session_settings`. No other configurations are allowed.
- "serviceAccount": "A String", # Immutable. Service account email used to assign policies to a specific service account. If a service account is subject to multiple policies (e.g., if there is a policy for all service accounts in a project and a policy for the service account), the closest (i.e. the most specific) dry-run policy will be used for the dry-run functionality and the closest enforcement policy will be used for the enforcement.
+ "serviceAccount": "A String", # Immutable. Service account email used to assign policies to a specific service account. If a service account is subject to multiple policies (for example, if there is a policy for all service accounts in a project and a policy for the service account), the closest (that is, the most specific) dry-run policy is used for the dry-run functionality and the closest enforcement policy is used for enforcement.
"serviceAccountProjectNumber": "A String", # Immutable. Cloud project number used to assign policies to all service accounts owned by the project.
},
"scopedAccessSettings": [ # Optional. A list of scoped access settings that set this binding's restrictions on a subset of applications.
- { # A relationship between access settings and its scope.
- "activeSettings": { # Access settings represent the set of conditions that must be met for access to be granted. At least one of the fields must be set. # Optional. Access settings for this scoped access settings. This field may be empty if dry_run_settings is set.
- "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
+ { # A relationship between access settings and their scope.
+ "activeSettings": { # Access settings represent the set of conditions that must be met for access to be granted. At least one of the fields must be set. # Optional. Access settings for this `ScopedAccessSettings`. This field may be empty if `dry_run_settings` is set.
+ "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: `"accessPolicies/9522/accessLevels/device_trusted"`
"A String",
],
- "sessionSettings": { # Stores settings related to Google Cloud Session Length including session duration, the type of challenge (i.e. method) they should face when their session expires, and other related settings. # Optional. Session settings applied to user access on a given AccessScope.
+ "sessionSettings": { # Stores settings related to Google Cloud Session Length, including session duration, the type of challenge (that is, method) a user faces when their session expires, and other related settings. # Optional. Session settings applied to user access on a given `AccessScope`.
"maxInactivity": "A String", # Optional. How long a user is allowed to take between actions before a new access token must be issued. Only set for Google Cloud apps.
- "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` param. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
- "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When false, all fields set above will be disregarded and the session length is basically infinite. If `session_length` is set to zero, this field must be set to false.
- "sessionReauthMethod": "A String", # Optional. Session method when user's Google Cloud session is up.
- "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When false, the OIDC max_age param, if passed in the authentication request will be ignored. When true, the re-auth period will be the minimum of the session_length field and the max_age OIDC param.
+ "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` parameter. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
+ "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When `false`, all fields set above are disregarded and the session length is effectively infinite. If `session_length` is set to zero, this field must be set to `false`.
+ "sessionReauthMethod": "A String", # Optional. Session challenge method when a user's Google Cloud session expires.
+ "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When `false`, the OIDC `max_age` parameter, if passed in the authentication request, is ignored. When `true`, the re-authentication period is the minimum of the `session_length` field and the `max_age` OIDC parameter.
},
},
- "dryRunSettings": { # Access settings represent the set of conditions that must be met for access to be granted. At least one of the fields must be set. # Optional. Dry-run access settings for this scoped access settings. This field may be empty if active_settings is set.
- "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
+ "dryRunSettings": { # Access settings represent the set of conditions that must be met for access to be granted. At least one of the fields must be set. # Optional. Dry-run access settings for this `ScopedAccessSettings`. This field may be empty if `active_settings` is set.
+ "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: `"accessPolicies/9522/accessLevels/device_trusted"`
"A String",
],
- "sessionSettings": { # Stores settings related to Google Cloud Session Length including session duration, the type of challenge (i.e. method) they should face when their session expires, and other related settings. # Optional. Session settings applied to user access on a given AccessScope.
+ "sessionSettings": { # Stores settings related to Google Cloud Session Length, including session duration, the type of challenge (that is, method) a user faces when their session expires, and other related settings. # Optional. Session settings applied to user access on a given `AccessScope`.
"maxInactivity": "A String", # Optional. How long a user is allowed to take between actions before a new access token must be issued. Only set for Google Cloud apps.
- "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` param. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
- "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When false, all fields set above will be disregarded and the session length is basically infinite. If `session_length` is set to zero, this field must be set to false.
- "sessionReauthMethod": "A String", # Optional. Session method when user's Google Cloud session is up.
- "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When false, the OIDC max_age param, if passed in the authentication request will be ignored. When true, the re-auth period will be the minimum of the session_length field and the max_age OIDC param.
+ "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` parameter. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
+ "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When `false`, all fields set above are disregarded and the session length is effectively infinite. If `session_length` is set to zero, this field must be set to `false`.
+ "sessionReauthMethod": "A String", # Optional. Session challenge method when a user's Google Cloud session expires.
+ "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When `false`, the OIDC `max_age` parameter, if passed in the authentication request, is ignored. When `true`, the re-authentication period is the minimum of the `session_length` field and the `max_age` OIDC parameter.
},
},
- "scope": { # Access scope represents the client scope, etc. to which the settings will be applied to. # Optional. Application, etc. to which the access settings will be applied to. Implicitly, this is the scoped access settings key; as such, it must be unique and non-empty.
- "clientScope": { # Client scope represents the application, etc. subject to this binding's restrictions. # Optional. Client scope for this access scope.
+ "scope": { # Access scope represents the client scope to which the settings are applied. # Optional. Application or other resource to which the access settings are applied. Implicitly, this is the scoped access settings key; as such, it must be unique and non-empty.
+ "clientScope": { # Client scope represents the application, project, or other resource subject to this binding's restrictions. # Optional. Client scope for this access scope.
"restrictedClientApplication": { # An application that accesses Google Cloud APIs. # Optional. The application that is subject to this binding's scope.
"clientId": "A String", # The OAuth client ID of the application.
"name": "A String", # The name of the application. Example: "Cloud Console"
},
- "restrictedProject": { # A Google Cloud project which contains applications and resources that users can access. # Optional. The Google Cloud project that is subject to this binding's scope.
+ "restrictedProject": { # A Google Cloud project that contains applications and resources that users can access. # Optional. The Google Cloud project that is subject to this binding's scope.
"name": "A String", # The Google Cloud project resource name. Format: `projects/{project_number}`. Only the project number is supported. Example: `projects/1234567890`
},
},
},
},
],
- "sessionSettings": { # Stores settings related to Google Cloud Session Length including session duration, the type of challenge (i.e. method) they should face when their session expires, and other related settings. # Optional. The Google Cloud session length (GCSL) policy for the group key.
+ "sessionSettings": { # Stores settings related to Google Cloud Session Length, including session duration, the type of challenge (that is, method) a user faces when their session expires, and other related settings. # Optional. The Google Cloud session length (GCSL) policy for the group key.
"maxInactivity": "A String", # Optional. How long a user is allowed to take between actions before a new access token must be issued. Only set for Google Cloud apps.
- "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` param. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
- "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When false, all fields set above will be disregarded and the session length is basically infinite. If `session_length` is set to zero, this field must be set to false.
- "sessionReauthMethod": "A String", # Optional. Session method when user's Google Cloud session is up.
- "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When false, the OIDC max_age param, if passed in the authentication request will be ignored. When true, the re-auth period will be the minimum of the session_length field and the max_age OIDC param.
+ "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` parameter. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
+ "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When `false`, all fields set above are disregarded and the session length is effectively infinite. If `session_length` is set to zero, this field must be set to `false`.
+ "sessionReauthMethod": "A String", # Optional. Session challenge method when a user's Google Cloud session expires.
+ "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When `false`, the OIDC `max_age` parameter, if passed in the authentication request, is ignored. When `true`, the re-authentication period is the minimum of the `session_length` field and the `max_age` OIDC parameter.
},
},
],
@@ -417,74 +417,74 @@ Method Details
Updates a GcpUserAccessBinding. Completion of this long-running operation does not necessarily signify that the changed binding is deployed onto all affected users, which may take more time.
Args:
- name: string, Immutable. Assigned by the server during creation. The last segment has an arbitrary length and has only URI unreserved characters (as defined by [RFC 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should not be specified by the client during creation. Example: "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N" (required)
+ name: string, Immutable. Assigned by the server during creation. The last segment has an arbitrary length and has only URI unreserved characters (as defined by [RFC 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should not be specified by the client during creation. Example: `"organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"` (required)
body: object, The request body.
The object takes the form of:
{ # Restricts access to Cloud Console and Google Cloud APIs for a set of users using Context-Aware Access.
- "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
+ "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: `"accessPolicies/9522/accessLevels/device_trusted"`
"A String",
],
- "dryRunAccessLevels": [ # Optional. Dry run access level that will be evaluated but will not be enforced. The access denial based on dry run policy will be logged. Only one access level is supported, not multiple. This list must have exactly one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
+ "dryRunAccessLevels": [ # Optional. Dry-run access level that is evaluated, but not enforced. Any access denial based on the dry-run policy is logged. Only one access level is supported, not multiple. This list must have exactly one element. Example: `"accessPolicies/9522/accessLevels/device_trusted"`
"A String",
],
- "groupKey": "A String", # Optional. Immutable. Google Group id whose users are subject to this binding's restrictions. See "id" in the [Google Workspace Directory API's Group Resource] (https://developers.google.com/admin-sdk/directory/v1/reference/groups#resource). If a group's email address/alias is changed, this resource will continue to point at the changed group. This field does not accept group email addresses or aliases. Example: "01d520gv4vjcrht"
- "name": "A String", # Immutable. Assigned by the server during creation. The last segment has an arbitrary length and has only URI unreserved characters (as defined by [RFC 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should not be specified by the client during creation. Example: "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"
+ "groupKey": "A String", # Optional. Immutable. Google Group ID whose users are subject to this binding's restrictions. See "id" in the [Google Workspace Directory API's Group Resource] (https://developers.google.com/admin-sdk/directory/v1/reference/groups#resource). If a group's email address or alias is changed, this resource will continue to point at the changed group. This field does not accept group email addresses or aliases. Example: `"01d520gv4vjcrht"`
+ "name": "A String", # Immutable. Assigned by the server during creation. The last segment has an arbitrary length and has only URI unreserved characters (as defined by [RFC 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should not be specified by the client during creation. Example: `"organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"`
"principal": { # The comprehensive identity container supporting identities including groups, service accounts, and federated identities. Only one of them can be set to create an access binding. # Optional. Immutable. The principal that is subject to the access policies in this policy binding.
"federatedPrincipal": "A String", # Immutable. The IAM principal identifier of the federated workforce or workload to assign the policy to. Examples include the following: * Single principal: `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}` * All workloads in a workload identity pool: `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*` * All Workforce Pools in a Google Cloud organization: `principalSet://cloudresourcemanager.googleapis.com/organizations/{organization_id}/type/WorkforcePool` Bindings created for all Workforce Pools in a Google Cloud organization support only `scoped_access_settings` with the `restricted_project` client scope and active `session_settings`. No other configurations are allowed.
- "serviceAccount": "A String", # Immutable. Service account email used to assign policies to a specific service account. If a service account is subject to multiple policies (e.g., if there is a policy for all service accounts in a project and a policy for the service account), the closest (i.e. the most specific) dry-run policy will be used for the dry-run functionality and the closest enforcement policy will be used for the enforcement.
+ "serviceAccount": "A String", # Immutable. Service account email used to assign policies to a specific service account. If a service account is subject to multiple policies (for example, if there is a policy for all service accounts in a project and a policy for the service account), the closest (that is, the most specific) dry-run policy is used for the dry-run functionality and the closest enforcement policy is used for enforcement.
"serviceAccountProjectNumber": "A String", # Immutable. Cloud project number used to assign policies to all service accounts owned by the project.
},
"scopedAccessSettings": [ # Optional. A list of scoped access settings that set this binding's restrictions on a subset of applications.
- { # A relationship between access settings and its scope.
- "activeSettings": { # Access settings represent the set of conditions that must be met for access to be granted. At least one of the fields must be set. # Optional. Access settings for this scoped access settings. This field may be empty if dry_run_settings is set.
- "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
+ { # A relationship between access settings and their scope.
+ "activeSettings": { # Access settings represent the set of conditions that must be met for access to be granted. At least one of the fields must be set. # Optional. Access settings for this `ScopedAccessSettings`. This field may be empty if `dry_run_settings` is set.
+ "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: `"accessPolicies/9522/accessLevels/device_trusted"`
"A String",
],
- "sessionSettings": { # Stores settings related to Google Cloud Session Length including session duration, the type of challenge (i.e. method) they should face when their session expires, and other related settings. # Optional. Session settings applied to user access on a given AccessScope.
+ "sessionSettings": { # Stores settings related to Google Cloud Session Length, including session duration, the type of challenge (that is, method) a user faces when their session expires, and other related settings. # Optional. Session settings applied to user access on a given `AccessScope`.
"maxInactivity": "A String", # Optional. How long a user is allowed to take between actions before a new access token must be issued. Only set for Google Cloud apps.
- "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` param. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
- "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When false, all fields set above will be disregarded and the session length is basically infinite. If `session_length` is set to zero, this field must be set to false.
- "sessionReauthMethod": "A String", # Optional. Session method when user's Google Cloud session is up.
- "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When false, the OIDC max_age param, if passed in the authentication request will be ignored. When true, the re-auth period will be the minimum of the session_length field and the max_age OIDC param.
+ "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` parameter. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
+ "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When `false`, all fields set above are disregarded and the session length is effectively infinite. If `session_length` is set to zero, this field must be set to `false`.
+ "sessionReauthMethod": "A String", # Optional. Session challenge method when a user's Google Cloud session expires.
+ "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When `false`, the OIDC `max_age` parameter, if passed in the authentication request, is ignored. When `true`, the re-authentication period is the minimum of the `session_length` field and the `max_age` OIDC parameter.
},
},
- "dryRunSettings": { # Access settings represent the set of conditions that must be met for access to be granted. At least one of the fields must be set. # Optional. Dry-run access settings for this scoped access settings. This field may be empty if active_settings is set.
- "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
+ "dryRunSettings": { # Access settings represent the set of conditions that must be met for access to be granted. At least one of the fields must be set. # Optional. Dry-run access settings for this `ScopedAccessSettings`. This field may be empty if `active_settings` is set.
+ "accessLevels": [ # Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: `"accessPolicies/9522/accessLevels/device_trusted"`
"A String",
],
- "sessionSettings": { # Stores settings related to Google Cloud Session Length including session duration, the type of challenge (i.e. method) they should face when their session expires, and other related settings. # Optional. Session settings applied to user access on a given AccessScope.
+ "sessionSettings": { # Stores settings related to Google Cloud Session Length, including session duration, the type of challenge (that is, method) a user faces when their session expires, and other related settings. # Optional. Session settings applied to user access on a given `AccessScope`.
"maxInactivity": "A String", # Optional. How long a user is allowed to take between actions before a new access token must be issued. Only set for Google Cloud apps.
- "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` param. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
- "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When false, all fields set above will be disregarded and the session length is basically infinite. If `session_length` is set to zero, this field must be set to false.
- "sessionReauthMethod": "A String", # Optional. Session method when user's Google Cloud session is up.
- "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When false, the OIDC max_age param, if passed in the authentication request will be ignored. When true, the re-auth period will be the minimum of the session_length field and the max_age OIDC param.
+ "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` parameter. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
+ "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When `false`, all fields set above are disregarded and the session length is effectively infinite. If `session_length` is set to zero, this field must be set to `false`.
+ "sessionReauthMethod": "A String", # Optional. Session challenge method when a user's Google Cloud session expires.
+ "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When `false`, the OIDC `max_age` parameter, if passed in the authentication request, is ignored. When `true`, the re-authentication period is the minimum of the `session_length` field and the `max_age` OIDC parameter.
},
},
- "scope": { # Access scope represents the client scope, etc. to which the settings will be applied to. # Optional. Application, etc. to which the access settings will be applied to. Implicitly, this is the scoped access settings key; as such, it must be unique and non-empty.
- "clientScope": { # Client scope represents the application, etc. subject to this binding's restrictions. # Optional. Client scope for this access scope.
+ "scope": { # Access scope represents the client scope to which the settings are applied. # Optional. Application or other resource to which the access settings are applied. Implicitly, this is the scoped access settings key; as such, it must be unique and non-empty.
+ "clientScope": { # Client scope represents the application, project, or other resource subject to this binding's restrictions. # Optional. Client scope for this access scope.
"restrictedClientApplication": { # An application that accesses Google Cloud APIs. # Optional. The application that is subject to this binding's scope.
"clientId": "A String", # The OAuth client ID of the application.
"name": "A String", # The name of the application. Example: "Cloud Console"
},
- "restrictedProject": { # A Google Cloud project which contains applications and resources that users can access. # Optional. The Google Cloud project that is subject to this binding's scope.
+ "restrictedProject": { # A Google Cloud project that contains applications and resources that users can access. # Optional. The Google Cloud project that is subject to this binding's scope.
"name": "A String", # The Google Cloud project resource name. Format: `projects/{project_number}`. Only the project number is supported. Example: `projects/1234567890`
},
},
},
},
],
- "sessionSettings": { # Stores settings related to Google Cloud Session Length including session duration, the type of challenge (i.e. method) they should face when their session expires, and other related settings. # Optional. The Google Cloud session length (GCSL) policy for the group key.
+ "sessionSettings": { # Stores settings related to Google Cloud Session Length, including session duration, the type of challenge (that is, method) a user faces when their session expires, and other related settings. # Optional. The Google Cloud session length (GCSL) policy for the group key.
"maxInactivity": "A String", # Optional. How long a user is allowed to take between actions before a new access token must be issued. Only set for Google Cloud apps.
- "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` param. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
- "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When false, all fields set above will be disregarded and the session length is basically infinite. If `session_length` is set to zero, this field must be set to false.
- "sessionReauthMethod": "A String", # Optional. Session method when user's Google Cloud session is up.
- "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When false, the OIDC max_age param, if passed in the authentication request will be ignored. When true, the re-auth period will be the minimum of the session_length field and the max_age OIDC param.
+ "sessionLength": "A String", # Optional. The session length. Setting this field to zero allows for sessions that are active indefinitely. Also, setting `session_length_enabled` to `false` disregards session limits, which means that sessions never expire. If `use_oidc_max_age` is `true`, for OIDC apps, the session length will be the minimum of this field and the OIDC `max_age` parameter. If this field is set to zero, `session_length_enabled` must be set to `false` or left unset.
+ "sessionLengthEnabled": True or False, # Optional. This field enables or disables Google Cloud session length. When `false`, all fields set above are disregarded and the session length is effectively infinite. If `session_length` is set to zero, this field must be set to `false`.
+ "sessionReauthMethod": "A String", # Optional. Session challenge method when a user's Google Cloud session expires.
+ "useOidcMaxAge": True or False, # Optional. Only useful for OIDC apps. When `false`, the OIDC `max_age` parameter, if passed in the authentication request, is ignored. When `true`, the re-authentication period is the minimum of the `session_length` field and the `max_age` OIDC parameter.
},
}
- append: boolean, Optional. This field controls whether or not certain repeated settings in the update request overwrite or append to existing settings on the binding. If true, then append. Otherwise overwrite. So far, only scoped_access_settings with session_settings supports appending. Global access_levels, access_levels in scoped_access_settings, dry_run_access_levels, and session_settings are not compatible with append functionality, and the request will return an error if append=true when these settings are in the update_mask. The request will also return an error if append=true when "scoped_access_settings" is not set in the update_mask.
- updateMask: string, Required. Only the fields specified in this mask are updated. Because name and group_key cannot be changed, update_mask is required and may only contain the following fields: `access_levels`, `dry_run_access_levels`, `session_settings`, `scoped_access_settings`. update_mask { paths: "access_levels" }
+ append: boolean, Optional. This field controls whether or not certain repeated settings in the update request overwrite or append to existing settings on the binding. If true, then append. Otherwise overwrite. So far, only `scoped_access_settings` with `session_settings` supports appending. Global `access_levels`, `access_levels` in `scoped_access_settings`, `dry_run_access_levels`, and `session_settings` are not compatible with append functionality, and the request will return an error if `append=true` when these settings are in the `update_mask`. The request will also return an error if `append=true` when `"scoped_access_settings"` is not set in the `update_mask`.
+ updateMask: string, Required. Only the fields specified in this mask are updated. Because `name` and `group_key` cannot be changed, `update_mask` is required and may only contain the following fields: `access_levels`, `dry_run_access_levels`, `session_settings`, `scoped_access_settings`. update_mask { paths: "access_levels" }
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
diff --git a/docs/dyn/accesscontextmanager_v1.permissions.html b/docs/dyn/accesscontextmanager_v1.permissions.html
index be9ad6b109..ecbe9afac0 100644
--- a/docs/dyn/accesscontextmanager_v1.permissions.html
+++ b/docs/dyn/accesscontextmanager_v1.permissions.html
@@ -94,7 +94,7 @@ Method Details
Lists all supported permissions in VPC Service Controls ingress and egress rules for Granular Controls.
Args:
- pageSize: integer, Optional. This flag specifies the maximum number of services to return per page. Default value is 100.
+ pageSize: integer, Optional. This flag specifies the maximum number of permissions to return per page. Default value is 100.
pageToken: string, Optional. Use this token to retrieve a specific page of results. Default is the first page.
x__xgafv: string, V1 error format.
Allowed values
diff --git a/docs/dyn/accesscontextmanager_v1.projects.html b/docs/dyn/accesscontextmanager_v1.projects.html
index 1e231928b2..bb347874af 100644
--- a/docs/dyn/accesscontextmanager_v1.projects.html
+++ b/docs/dyn/accesscontextmanager_v1.projects.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
lookupConfiguredServicePerimeter(resource, x__xgafv=None)
-Looks up the configured service perimeter for a given resource Format: ['projects/{projectNumber}', 'folders/{folderNumber}'].
+Looks up the configured service perimeter for a given resource. Format: `['projects/{projectNumber}', 'folders/{folderNumber}']`.
Method Details
close()
@@ -88,10 +88,10 @@ Method Details
lookupConfiguredServicePerimeter(resource, x__xgafv=None)
- Looks up the configured service perimeter for a given resource Format: ['projects/{projectNumber}', 'folders/{folderNumber}'].
+ Looks up the configured service perimeter for a given resource. Format: `['projects/{projectNumber}', 'folders/{folderNumber}']`.
Args:
- resource: string, Required. The Resource to resolve (e.g. "projects/123", "folders/456"). (required)
+ resource: string, Required. The resource to resolve (for example, `projects/123` or `folders/456`). (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -101,8 +101,8 @@ Method Details
An object of the form:
{ # A configured service perimeter returned by Access Context Manager.
- "restrictedResource": "A String", # The resource (e.g. "projects/123", "folders/456") that directly owns/is restricted by the enforced perimeter.
- "restrictedResourceDryRun": "A String", # The resource (e.g. "projects/123", "folders/456") that directly owns/is restricted by the dry-run perimeter.
+ "restrictedResource": "A String", # The resource (for example, `projects/123` or `folders/456`) that directly owns or is restricted by the enforced perimeter.
+ "restrictedResourceDryRun": "A String", # The resource (for example, `projects/123` or `folders/456`) that directly owns or is restricted by the dry-run perimeter.
"servicePerimeter": "A String", # Fully qualified name of the configured enforced perimeter. Format: `accessPolicies/{policy_id}/servicePerimeters/{perimeter_name}` This field is empty if no enforced perimeter applies.
"servicePerimeterDryRun": "A String", # Fully qualified name of the configured dry-run perimeter. Format: `accessPolicies/{policy_id}/servicePerimeters/{perimeter_name}` This field is empty if no dry-run perimeter configuration applies.
}
diff --git a/docs/dyn/accesscontextmanager_v1.services.html b/docs/dyn/accesscontextmanager_v1.services.html
index 3b0abe0594..c84f92c493 100644
--- a/docs/dyn/accesscontextmanager_v1.services.html
+++ b/docs/dyn/accesscontextmanager_v1.services.html
@@ -106,19 +106,19 @@ Method Details
Returns:
An object of the form:
- { # `SupportedService` specifies the VPC Service Controls and its properties.
+ { # `SupportedService` specifies a service supported by VPC Service Controls and its properties.
"availableOnRestrictedVip": True or False, # True if the service is available on the restricted VIP. Services on the restricted VIP typically either support VPC Service Controls or are core infrastructure services required for the functioning of Google Cloud.
"knownLimitations": True or False, # True if the service is supported with some limitations. Check [documentation](https://cloud.google.com/vpc-service-controls/docs/supported-products) for details.
"name": "A String", # The service name or address of the supported service, such as `service.googleapis.com`.
"serviceSupportStage": "A String", # The support stage of the service.
"supportStage": "A String", # The support stage of the service.
- "supportedMethods": [ # The list of the supported methods. This field exists only in response to GetSupportedService
+ "supportedMethods": [ # The list of supported methods. This field exists only in response to GetSupportedService.
{ # An allowed method or permission of a service specified in ApiOperation.
"method": "A String", # A valid method name for the corresponding `service_name` in ApiOperation. If `*` is used as the value for the `method`, then ALL methods and permissions are allowed.
"permission": "A String", # A valid Cloud IAM permission for the corresponding `service_name` in ApiOperation.
},
],
- "title": "A String", # The name of the supported product, such as 'Cloud Product API'.
+ "title": "A String", # The name of the supported product, such as `'Cloud Product API'`.
}
@@ -140,19 +140,19 @@ Method Details
{ # A response to `ListSupportedServicesRequest`.
"nextPageToken": "A String", # Use this pagination token to retrieve the next page of results. An empty value indicates that no further results are available.
"supportedServices": [ # List of services supported by VPC Service Controls instances.
- { # `SupportedService` specifies the VPC Service Controls and its properties.
+ { # `SupportedService` specifies a service supported by VPC Service Controls and its properties.
"availableOnRestrictedVip": True or False, # True if the service is available on the restricted VIP. Services on the restricted VIP typically either support VPC Service Controls or are core infrastructure services required for the functioning of Google Cloud.
"knownLimitations": True or False, # True if the service is supported with some limitations. Check [documentation](https://cloud.google.com/vpc-service-controls/docs/supported-products) for details.
"name": "A String", # The service name or address of the supported service, such as `service.googleapis.com`.
"serviceSupportStage": "A String", # The support stage of the service.
"supportStage": "A String", # The support stage of the service.
- "supportedMethods": [ # The list of the supported methods. This field exists only in response to GetSupportedService
+ "supportedMethods": [ # The list of supported methods. This field exists only in response to GetSupportedService.
{ # An allowed method or permission of a service specified in ApiOperation.
"method": "A String", # A valid method name for the corresponding `service_name` in ApiOperation. If `*` is used as the value for the `method`, then ALL methods and permissions are allowed.
"permission": "A String", # A valid Cloud IAM permission for the corresponding `service_name` in ApiOperation.
},
],
- "title": "A String", # The name of the supported product, such as 'Cloud Product API'.
+ "title": "A String", # The name of the supported product, such as `'Cloud Product API'`.
},
],
}
diff --git a/docs/dyn/agentidentity_v1.projects.locations.authProviders.html b/docs/dyn/agentidentity_v1.projects.locations.authProviders.html
index c6b6e73fb9..53a7f2786d 100644
--- a/docs/dyn/agentidentity_v1.projects.locations.authProviders.html
+++ b/docs/dyn/agentidentity_v1.projects.locations.authProviders.html
@@ -121,6 +121,9 @@ Instance Methods
query_next(previous_request, previous_response)
Retrieves the next page of results.
+
+ resolveAuthorization(name, body=None, x__xgafv=None)
+Resolves an authorization for a user on an auth provider, creating one if it does not exist or returning an existing one.
revokeAuthorization(name, body=None, x__xgafv=None)
Revokes all authorizations for a specific user on an auth provider. This deletes all authorization records associated with the user and auth provider, effectively revoking access across all agents.
@@ -156,6 +159,14 @@ Method Details
"apiKey": { # Configuration for API key authentication. # Parameters for API key authentication.
"apiKey": "A String", # Optional. Input only. The API key for this auth provider.
},
+ "connectorReferenceAuthProvider": { # Configuration parameters for the Connector Reference auth provider. # Parameters for Connector Reference authentication.
+ "authorizationDetails": [ # Optional. Rich Authorization Requests (RFC 9396) detailing targeted OAuth resources/scopes, formatted as a JSON array of JSON objects.
+ {
+ "a_key": "", # Properties of the object.
+ },
+ ],
+ "connector": "A String", # Required. The name of the referenced connector.
+ },
"geAuthProvider": { # Configuration for Gemini Enterprise authentication. # Parameters for Gemini Enterprise authentication.
},
"threeLeggedOauth": { # Configuration for 3-legged OAuth (3LO) authentication. # Parameters for 3-legged OAuth (3LO) authentication.
@@ -172,6 +183,36 @@ Method Details
"clientSecret": "A String", # Optional. Input only. The client secret of the OAuth client.
"tokenUrl": "A String", # Optional. The token endpoint of the OAuth client.
},
+ "xaaAuthProvider": { # Configuration parameters for the Cross-App Access auth provider. # Parameters for Cross-App Access authentication.
+ "additionalParameters": { # Optional. Additional parameters to be passed to the token endpoint.
+ "a_key": "A String",
+ },
+ "clientAssertionJwtAuth": { # Configuration for client ID and client assertion JWT authentication. # Option 2: Authenticate using a standard `client_id` and a Client Assertion JWT.
+ "clientId": "A String", # Required. The client identifier.
+ },
+ "clientSecretAuth": { # Configuration for client ID and client secret authentication. # Option 1: Authenticate using a standard `client_id` and `client_secret`.
+ "clientId": "A String", # Required. The client identifier.
+ "clientSecret": "A String", # Required. Input only. The client secret.
+ },
+ "customIssuer": { # Configuration for a custom or third-party authorization server issuer. # Configuration when using a custom or third-party authorization server as the issuer.
+ "issuer": "A String", # Optional. The issuer identifier of the target Authorization Server.
+ "tokenUrl": "A String", # Required. The token endpoint of the target OAuth authorization server to retrieve resource tokens.
+ },
+ "googleAccount": { # Configuration for Google Account usage as the issuer. # Configuration when using Google Accounts as the issuer.
+ },
+ "idJagInput": { # Marker message indicating the input is already an ID-JAG, so no fetching is required. # Configuration for when the input is already an ID-JAG.
+ },
+ "idTokenInput": { # Defines how to process an input ID token to obtain an ID-JAG. # Configuration for when the input is an ID token.
+ "agentIdentityPool": { # Marker message to indicate the managed Agent Identity Pool is used. # Indicates the managed Agent Identity pool should be used to fetch the ID-JAG.
+ },
+ "idJagAdditionalClaims": { # Optional. Optional additional claims to include when fetching an ID-JAG.
+ "a_key": "", # Properties of the object.
+ },
+ "idJagAuthProvider": "A String", # The resource name of the ID-JAG auth provider. Format: "projects/{project}/locations/{location}/authProviders/{auth_provider}"
+ },
+ "workforceIdentityFederation": { # Configuration for Workforce Identity Federation usage as the issuer. # Configuration when using Workforce Identity Federation as the issuer.
+ },
+ },
},
"blockedScopes": [ # Optional. List of scopes that are blocked from being requested for this auth provider. If a scope appears in this list, it will not be requested, even if it also appears in `allowed_scopes`. `blocked_scopes` takes precedence over `allowed_scopes`. The number of blocked scopes is limited to 200.
"A String",
@@ -209,6 +250,14 @@ Method Details
"apiKey": { # Configuration for API key authentication. # Parameters for API key authentication.
"apiKey": "A String", # Optional. Input only. The API key for this auth provider.
},
+ "connectorReferenceAuthProvider": { # Configuration parameters for the Connector Reference auth provider. # Parameters for Connector Reference authentication.
+ "authorizationDetails": [ # Optional. Rich Authorization Requests (RFC 9396) detailing targeted OAuth resources/scopes, formatted as a JSON array of JSON objects.
+ {
+ "a_key": "", # Properties of the object.
+ },
+ ],
+ "connector": "A String", # Required. The name of the referenced connector.
+ },
"geAuthProvider": { # Configuration for Gemini Enterprise authentication. # Parameters for Gemini Enterprise authentication.
},
"threeLeggedOauth": { # Configuration for 3-legged OAuth (3LO) authentication. # Parameters for 3-legged OAuth (3LO) authentication.
@@ -225,6 +274,36 @@ Method Details
"clientSecret": "A String", # Optional. Input only. The client secret of the OAuth client.
"tokenUrl": "A String", # Optional. The token endpoint of the OAuth client.
},
+ "xaaAuthProvider": { # Configuration parameters for the Cross-App Access auth provider. # Parameters for Cross-App Access authentication.
+ "additionalParameters": { # Optional. Additional parameters to be passed to the token endpoint.
+ "a_key": "A String",
+ },
+ "clientAssertionJwtAuth": { # Configuration for client ID and client assertion JWT authentication. # Option 2: Authenticate using a standard `client_id` and a Client Assertion JWT.
+ "clientId": "A String", # Required. The client identifier.
+ },
+ "clientSecretAuth": { # Configuration for client ID and client secret authentication. # Option 1: Authenticate using a standard `client_id` and `client_secret`.
+ "clientId": "A String", # Required. The client identifier.
+ "clientSecret": "A String", # Required. Input only. The client secret.
+ },
+ "customIssuer": { # Configuration for a custom or third-party authorization server issuer. # Configuration when using a custom or third-party authorization server as the issuer.
+ "issuer": "A String", # Optional. The issuer identifier of the target Authorization Server.
+ "tokenUrl": "A String", # Required. The token endpoint of the target OAuth authorization server to retrieve resource tokens.
+ },
+ "googleAccount": { # Configuration for Google Account usage as the issuer. # Configuration when using Google Accounts as the issuer.
+ },
+ "idJagInput": { # Marker message indicating the input is already an ID-JAG, so no fetching is required. # Configuration for when the input is already an ID-JAG.
+ },
+ "idTokenInput": { # Defines how to process an input ID token to obtain an ID-JAG. # Configuration for when the input is an ID token.
+ "agentIdentityPool": { # Marker message to indicate the managed Agent Identity Pool is used. # Indicates the managed Agent Identity pool should be used to fetch the ID-JAG.
+ },
+ "idJagAdditionalClaims": { # Optional. Optional additional claims to include when fetching an ID-JAG.
+ "a_key": "", # Properties of the object.
+ },
+ "idJagAuthProvider": "A String", # The resource name of the ID-JAG auth provider. Format: "projects/{project}/locations/{location}/authProviders/{auth_provider}"
+ },
+ "workforceIdentityFederation": { # Configuration for Workforce Identity Federation usage as the issuer. # Configuration when using Workforce Identity Federation as the issuer.
+ },
+ },
},
"blockedScopes": [ # Optional. List of scopes that are blocked from being requested for this auth provider. If a scope appears in this list, it will not be requested, even if it also appears in `allowed_scopes`. `blocked_scopes` takes precedence over `allowed_scopes`. The number of blocked scopes is limited to 200.
"A String",
@@ -293,6 +372,14 @@ Method Details
"apiKey": { # Configuration for API key authentication. # Parameters for API key authentication.
"apiKey": "A String", # Optional. Input only. The API key for this auth provider.
},
+ "connectorReferenceAuthProvider": { # Configuration parameters for the Connector Reference auth provider. # Parameters for Connector Reference authentication.
+ "authorizationDetails": [ # Optional. Rich Authorization Requests (RFC 9396) detailing targeted OAuth resources/scopes, formatted as a JSON array of JSON objects.
+ {
+ "a_key": "", # Properties of the object.
+ },
+ ],
+ "connector": "A String", # Required. The name of the referenced connector.
+ },
"geAuthProvider": { # Configuration for Gemini Enterprise authentication. # Parameters for Gemini Enterprise authentication.
},
"threeLeggedOauth": { # Configuration for 3-legged OAuth (3LO) authentication. # Parameters for 3-legged OAuth (3LO) authentication.
@@ -309,6 +396,36 @@ Method Details
"clientSecret": "A String", # Optional. Input only. The client secret of the OAuth client.
"tokenUrl": "A String", # Optional. The token endpoint of the OAuth client.
},
+ "xaaAuthProvider": { # Configuration parameters for the Cross-App Access auth provider. # Parameters for Cross-App Access authentication.
+ "additionalParameters": { # Optional. Additional parameters to be passed to the token endpoint.
+ "a_key": "A String",
+ },
+ "clientAssertionJwtAuth": { # Configuration for client ID and client assertion JWT authentication. # Option 2: Authenticate using a standard `client_id` and a Client Assertion JWT.
+ "clientId": "A String", # Required. The client identifier.
+ },
+ "clientSecretAuth": { # Configuration for client ID and client secret authentication. # Option 1: Authenticate using a standard `client_id` and `client_secret`.
+ "clientId": "A String", # Required. The client identifier.
+ "clientSecret": "A String", # Required. Input only. The client secret.
+ },
+ "customIssuer": { # Configuration for a custom or third-party authorization server issuer. # Configuration when using a custom or third-party authorization server as the issuer.
+ "issuer": "A String", # Optional. The issuer identifier of the target Authorization Server.
+ "tokenUrl": "A String", # Required. The token endpoint of the target OAuth authorization server to retrieve resource tokens.
+ },
+ "googleAccount": { # Configuration for Google Account usage as the issuer. # Configuration when using Google Accounts as the issuer.
+ },
+ "idJagInput": { # Marker message indicating the input is already an ID-JAG, so no fetching is required. # Configuration for when the input is already an ID-JAG.
+ },
+ "idTokenInput": { # Defines how to process an input ID token to obtain an ID-JAG. # Configuration for when the input is an ID token.
+ "agentIdentityPool": { # Marker message to indicate the managed Agent Identity Pool is used. # Indicates the managed Agent Identity pool should be used to fetch the ID-JAG.
+ },
+ "idJagAdditionalClaims": { # Optional. Optional additional claims to include when fetching an ID-JAG.
+ "a_key": "", # Properties of the object.
+ },
+ "idJagAuthProvider": "A String", # The resource name of the ID-JAG auth provider. Format: "projects/{project}/locations/{location}/authProviders/{auth_provider}"
+ },
+ "workforceIdentityFederation": { # Configuration for Workforce Identity Federation usage as the issuer. # Configuration when using Workforce Identity Federation as the issuer.
+ },
+ },
},
"blockedScopes": [ # Optional. List of scopes that are blocked from being requested for this auth provider. If a scope appears in this list, it will not be requested, even if it also appears in `allowed_scopes`. `blocked_scopes` takes precedence over `allowed_scopes`. The number of blocked scopes is limited to 200.
"A String",
@@ -358,6 +475,14 @@ Method Details
"apiKey": { # Configuration for API key authentication. # Parameters for API key authentication.
"apiKey": "A String", # Optional. Input only. The API key for this auth provider.
},
+ "connectorReferenceAuthProvider": { # Configuration parameters for the Connector Reference auth provider. # Parameters for Connector Reference authentication.
+ "authorizationDetails": [ # Optional. Rich Authorization Requests (RFC 9396) detailing targeted OAuth resources/scopes, formatted as a JSON array of JSON objects.
+ {
+ "a_key": "", # Properties of the object.
+ },
+ ],
+ "connector": "A String", # Required. The name of the referenced connector.
+ },
"geAuthProvider": { # Configuration for Gemini Enterprise authentication. # Parameters for Gemini Enterprise authentication.
},
"threeLeggedOauth": { # Configuration for 3-legged OAuth (3LO) authentication. # Parameters for 3-legged OAuth (3LO) authentication.
@@ -374,6 +499,36 @@ Method Details
"clientSecret": "A String", # Optional. Input only. The client secret of the OAuth client.
"tokenUrl": "A String", # Optional. The token endpoint of the OAuth client.
},
+ "xaaAuthProvider": { # Configuration parameters for the Cross-App Access auth provider. # Parameters for Cross-App Access authentication.
+ "additionalParameters": { # Optional. Additional parameters to be passed to the token endpoint.
+ "a_key": "A String",
+ },
+ "clientAssertionJwtAuth": { # Configuration for client ID and client assertion JWT authentication. # Option 2: Authenticate using a standard `client_id` and a Client Assertion JWT.
+ "clientId": "A String", # Required. The client identifier.
+ },
+ "clientSecretAuth": { # Configuration for client ID and client secret authentication. # Option 1: Authenticate using a standard `client_id` and `client_secret`.
+ "clientId": "A String", # Required. The client identifier.
+ "clientSecret": "A String", # Required. Input only. The client secret.
+ },
+ "customIssuer": { # Configuration for a custom or third-party authorization server issuer. # Configuration when using a custom or third-party authorization server as the issuer.
+ "issuer": "A String", # Optional. The issuer identifier of the target Authorization Server.
+ "tokenUrl": "A String", # Required. The token endpoint of the target OAuth authorization server to retrieve resource tokens.
+ },
+ "googleAccount": { # Configuration for Google Account usage as the issuer. # Configuration when using Google Accounts as the issuer.
+ },
+ "idJagInput": { # Marker message indicating the input is already an ID-JAG, so no fetching is required. # Configuration for when the input is already an ID-JAG.
+ },
+ "idTokenInput": { # Defines how to process an input ID token to obtain an ID-JAG. # Configuration for when the input is an ID token.
+ "agentIdentityPool": { # Marker message to indicate the managed Agent Identity Pool is used. # Indicates the managed Agent Identity pool should be used to fetch the ID-JAG.
+ },
+ "idJagAdditionalClaims": { # Optional. Optional additional claims to include when fetching an ID-JAG.
+ "a_key": "", # Properties of the object.
+ },
+ "idJagAuthProvider": "A String", # The resource name of the ID-JAG auth provider. Format: "projects/{project}/locations/{location}/authProviders/{auth_provider}"
+ },
+ "workforceIdentityFederation": { # Configuration for Workforce Identity Federation usage as the issuer. # Configuration when using Workforce Identity Federation as the issuer.
+ },
+ },
},
"blockedScopes": [ # Optional. List of scopes that are blocked from being requested for this auth provider. If a scope appears in this list, it will not be requested, even if it also appears in `allowed_scopes`. `blocked_scopes` takes precedence over `allowed_scopes`. The number of blocked scopes is limited to 200.
"A String",
@@ -416,6 +571,14 @@ Method Details
"apiKey": { # Configuration for API key authentication. # Parameters for API key authentication.
"apiKey": "A String", # Optional. Input only. The API key for this auth provider.
},
+ "connectorReferenceAuthProvider": { # Configuration parameters for the Connector Reference auth provider. # Parameters for Connector Reference authentication.
+ "authorizationDetails": [ # Optional. Rich Authorization Requests (RFC 9396) detailing targeted OAuth resources/scopes, formatted as a JSON array of JSON objects.
+ {
+ "a_key": "", # Properties of the object.
+ },
+ ],
+ "connector": "A String", # Required. The name of the referenced connector.
+ },
"geAuthProvider": { # Configuration for Gemini Enterprise authentication. # Parameters for Gemini Enterprise authentication.
},
"threeLeggedOauth": { # Configuration for 3-legged OAuth (3LO) authentication. # Parameters for 3-legged OAuth (3LO) authentication.
@@ -432,6 +595,36 @@ Method Details
"clientSecret": "A String", # Optional. Input only. The client secret of the OAuth client.
"tokenUrl": "A String", # Optional. The token endpoint of the OAuth client.
},
+ "xaaAuthProvider": { # Configuration parameters for the Cross-App Access auth provider. # Parameters for Cross-App Access authentication.
+ "additionalParameters": { # Optional. Additional parameters to be passed to the token endpoint.
+ "a_key": "A String",
+ },
+ "clientAssertionJwtAuth": { # Configuration for client ID and client assertion JWT authentication. # Option 2: Authenticate using a standard `client_id` and a Client Assertion JWT.
+ "clientId": "A String", # Required. The client identifier.
+ },
+ "clientSecretAuth": { # Configuration for client ID and client secret authentication. # Option 1: Authenticate using a standard `client_id` and `client_secret`.
+ "clientId": "A String", # Required. The client identifier.
+ "clientSecret": "A String", # Required. Input only. The client secret.
+ },
+ "customIssuer": { # Configuration for a custom or third-party authorization server issuer. # Configuration when using a custom or third-party authorization server as the issuer.
+ "issuer": "A String", # Optional. The issuer identifier of the target Authorization Server.
+ "tokenUrl": "A String", # Required. The token endpoint of the target OAuth authorization server to retrieve resource tokens.
+ },
+ "googleAccount": { # Configuration for Google Account usage as the issuer. # Configuration when using Google Accounts as the issuer.
+ },
+ "idJagInput": { # Marker message indicating the input is already an ID-JAG, so no fetching is required. # Configuration for when the input is already an ID-JAG.
+ },
+ "idTokenInput": { # Defines how to process an input ID token to obtain an ID-JAG. # Configuration for when the input is an ID token.
+ "agentIdentityPool": { # Marker message to indicate the managed Agent Identity Pool is used. # Indicates the managed Agent Identity pool should be used to fetch the ID-JAG.
+ },
+ "idJagAdditionalClaims": { # Optional. Optional additional claims to include when fetching an ID-JAG.
+ "a_key": "", # Properties of the object.
+ },
+ "idJagAuthProvider": "A String", # The resource name of the ID-JAG auth provider. Format: "projects/{project}/locations/{location}/authProviders/{auth_provider}"
+ },
+ "workforceIdentityFederation": { # Configuration for Workforce Identity Federation usage as the issuer. # Configuration when using Workforce Identity Federation as the issuer.
+ },
+ },
},
"blockedScopes": [ # Optional. List of scopes that are blocked from being requested for this auth provider. If a scope appears in this list, it will not be requested, even if it also appears in `allowed_scopes`. `blocked_scopes` takes precedence over `allowed_scopes`. The number of blocked scopes is limited to 200.
"A String",
@@ -529,6 +722,14 @@ Method Details
"apiKey": { # Configuration for API key authentication. # Parameters for API key authentication.
"apiKey": "A String", # Optional. Input only. The API key for this auth provider.
},
+ "connectorReferenceAuthProvider": { # Configuration parameters for the Connector Reference auth provider. # Parameters for Connector Reference authentication.
+ "authorizationDetails": [ # Optional. Rich Authorization Requests (RFC 9396) detailing targeted OAuth resources/scopes, formatted as a JSON array of JSON objects.
+ {
+ "a_key": "", # Properties of the object.
+ },
+ ],
+ "connector": "A String", # Required. The name of the referenced connector.
+ },
"geAuthProvider": { # Configuration for Gemini Enterprise authentication. # Parameters for Gemini Enterprise authentication.
},
"threeLeggedOauth": { # Configuration for 3-legged OAuth (3LO) authentication. # Parameters for 3-legged OAuth (3LO) authentication.
@@ -545,6 +746,36 @@ Method Details
"clientSecret": "A String", # Optional. Input only. The client secret of the OAuth client.
"tokenUrl": "A String", # Optional. The token endpoint of the OAuth client.
},
+ "xaaAuthProvider": { # Configuration parameters for the Cross-App Access auth provider. # Parameters for Cross-App Access authentication.
+ "additionalParameters": { # Optional. Additional parameters to be passed to the token endpoint.
+ "a_key": "A String",
+ },
+ "clientAssertionJwtAuth": { # Configuration for client ID and client assertion JWT authentication. # Option 2: Authenticate using a standard `client_id` and a Client Assertion JWT.
+ "clientId": "A String", # Required. The client identifier.
+ },
+ "clientSecretAuth": { # Configuration for client ID and client secret authentication. # Option 1: Authenticate using a standard `client_id` and `client_secret`.
+ "clientId": "A String", # Required. The client identifier.
+ "clientSecret": "A String", # Required. Input only. The client secret.
+ },
+ "customIssuer": { # Configuration for a custom or third-party authorization server issuer. # Configuration when using a custom or third-party authorization server as the issuer.
+ "issuer": "A String", # Optional. The issuer identifier of the target Authorization Server.
+ "tokenUrl": "A String", # Required. The token endpoint of the target OAuth authorization server to retrieve resource tokens.
+ },
+ "googleAccount": { # Configuration for Google Account usage as the issuer. # Configuration when using Google Accounts as the issuer.
+ },
+ "idJagInput": { # Marker message indicating the input is already an ID-JAG, so no fetching is required. # Configuration for when the input is already an ID-JAG.
+ },
+ "idTokenInput": { # Defines how to process an input ID token to obtain an ID-JAG. # Configuration for when the input is an ID token.
+ "agentIdentityPool": { # Marker message to indicate the managed Agent Identity Pool is used. # Indicates the managed Agent Identity pool should be used to fetch the ID-JAG.
+ },
+ "idJagAdditionalClaims": { # Optional. Optional additional claims to include when fetching an ID-JAG.
+ "a_key": "", # Properties of the object.
+ },
+ "idJagAuthProvider": "A String", # The resource name of the ID-JAG auth provider. Format: "projects/{project}/locations/{location}/authProviders/{auth_provider}"
+ },
+ "workforceIdentityFederation": { # Configuration for Workforce Identity Federation usage as the issuer. # Configuration when using Workforce Identity Federation as the issuer.
+ },
+ },
},
"blockedScopes": [ # Optional. List of scopes that are blocked from being requested for this auth provider. If a scope appears in this list, it will not be requested, even if it also appears in `allowed_scopes`. `blocked_scopes` takes precedence over `allowed_scopes`. The number of blocked scopes is limited to 200.
"A String",
@@ -602,6 +833,14 @@ Method Details
"apiKey": { # Configuration for API key authentication. # Parameters for API key authentication.
"apiKey": "A String", # Optional. Input only. The API key for this auth provider.
},
+ "connectorReferenceAuthProvider": { # Configuration parameters for the Connector Reference auth provider. # Parameters for Connector Reference authentication.
+ "authorizationDetails": [ # Optional. Rich Authorization Requests (RFC 9396) detailing targeted OAuth resources/scopes, formatted as a JSON array of JSON objects.
+ {
+ "a_key": "", # Properties of the object.
+ },
+ ],
+ "connector": "A String", # Required. The name of the referenced connector.
+ },
"geAuthProvider": { # Configuration for Gemini Enterprise authentication. # Parameters for Gemini Enterprise authentication.
},
"threeLeggedOauth": { # Configuration for 3-legged OAuth (3LO) authentication. # Parameters for 3-legged OAuth (3LO) authentication.
@@ -618,6 +857,36 @@ Method Details
"clientSecret": "A String", # Optional. Input only. The client secret of the OAuth client.
"tokenUrl": "A String", # Optional. The token endpoint of the OAuth client.
},
+ "xaaAuthProvider": { # Configuration parameters for the Cross-App Access auth provider. # Parameters for Cross-App Access authentication.
+ "additionalParameters": { # Optional. Additional parameters to be passed to the token endpoint.
+ "a_key": "A String",
+ },
+ "clientAssertionJwtAuth": { # Configuration for client ID and client assertion JWT authentication. # Option 2: Authenticate using a standard `client_id` and a Client Assertion JWT.
+ "clientId": "A String", # Required. The client identifier.
+ },
+ "clientSecretAuth": { # Configuration for client ID and client secret authentication. # Option 1: Authenticate using a standard `client_id` and `client_secret`.
+ "clientId": "A String", # Required. The client identifier.
+ "clientSecret": "A String", # Required. Input only. The client secret.
+ },
+ "customIssuer": { # Configuration for a custom or third-party authorization server issuer. # Configuration when using a custom or third-party authorization server as the issuer.
+ "issuer": "A String", # Optional. The issuer identifier of the target Authorization Server.
+ "tokenUrl": "A String", # Required. The token endpoint of the target OAuth authorization server to retrieve resource tokens.
+ },
+ "googleAccount": { # Configuration for Google Account usage as the issuer. # Configuration when using Google Accounts as the issuer.
+ },
+ "idJagInput": { # Marker message indicating the input is already an ID-JAG, so no fetching is required. # Configuration for when the input is already an ID-JAG.
+ },
+ "idTokenInput": { # Defines how to process an input ID token to obtain an ID-JAG. # Configuration for when the input is an ID token.
+ "agentIdentityPool": { # Marker message to indicate the managed Agent Identity Pool is used. # Indicates the managed Agent Identity pool should be used to fetch the ID-JAG.
+ },
+ "idJagAdditionalClaims": { # Optional. Optional additional claims to include when fetching an ID-JAG.
+ "a_key": "", # Properties of the object.
+ },
+ "idJagAuthProvider": "A String", # The resource name of the ID-JAG auth provider. Format: "projects/{project}/locations/{location}/authProviders/{auth_provider}"
+ },
+ "workforceIdentityFederation": { # Configuration for Workforce Identity Federation usage as the issuer. # Configuration when using Workforce Identity Federation as the issuer.
+ },
+ },
},
"blockedScopes": [ # Optional. List of scopes that are blocked from being requested for this auth provider. If a scope appears in this list, it will not be requested, even if it also appears in `allowed_scopes`. `blocked_scopes` takes precedence over `allowed_scopes`. The number of blocked scopes is limited to 200.
"A String",
@@ -655,6 +924,14 @@ Method Details
"apiKey": { # Configuration for API key authentication. # Parameters for API key authentication.
"apiKey": "A String", # Optional. Input only. The API key for this auth provider.
},
+ "connectorReferenceAuthProvider": { # Configuration parameters for the Connector Reference auth provider. # Parameters for Connector Reference authentication.
+ "authorizationDetails": [ # Optional. Rich Authorization Requests (RFC 9396) detailing targeted OAuth resources/scopes, formatted as a JSON array of JSON objects.
+ {
+ "a_key": "", # Properties of the object.
+ },
+ ],
+ "connector": "A String", # Required. The name of the referenced connector.
+ },
"geAuthProvider": { # Configuration for Gemini Enterprise authentication. # Parameters for Gemini Enterprise authentication.
},
"threeLeggedOauth": { # Configuration for 3-legged OAuth (3LO) authentication. # Parameters for 3-legged OAuth (3LO) authentication.
@@ -671,6 +948,36 @@ Method Details
"clientSecret": "A String", # Optional. Input only. The client secret of the OAuth client.
"tokenUrl": "A String", # Optional. The token endpoint of the OAuth client.
},
+ "xaaAuthProvider": { # Configuration parameters for the Cross-App Access auth provider. # Parameters for Cross-App Access authentication.
+ "additionalParameters": { # Optional. Additional parameters to be passed to the token endpoint.
+ "a_key": "A String",
+ },
+ "clientAssertionJwtAuth": { # Configuration for client ID and client assertion JWT authentication. # Option 2: Authenticate using a standard `client_id` and a Client Assertion JWT.
+ "clientId": "A String", # Required. The client identifier.
+ },
+ "clientSecretAuth": { # Configuration for client ID and client secret authentication. # Option 1: Authenticate using a standard `client_id` and `client_secret`.
+ "clientId": "A String", # Required. The client identifier.
+ "clientSecret": "A String", # Required. Input only. The client secret.
+ },
+ "customIssuer": { # Configuration for a custom or third-party authorization server issuer. # Configuration when using a custom or third-party authorization server as the issuer.
+ "issuer": "A String", # Optional. The issuer identifier of the target Authorization Server.
+ "tokenUrl": "A String", # Required. The token endpoint of the target OAuth authorization server to retrieve resource tokens.
+ },
+ "googleAccount": { # Configuration for Google Account usage as the issuer. # Configuration when using Google Accounts as the issuer.
+ },
+ "idJagInput": { # Marker message indicating the input is already an ID-JAG, so no fetching is required. # Configuration for when the input is already an ID-JAG.
+ },
+ "idTokenInput": { # Defines how to process an input ID token to obtain an ID-JAG. # Configuration for when the input is an ID token.
+ "agentIdentityPool": { # Marker message to indicate the managed Agent Identity Pool is used. # Indicates the managed Agent Identity pool should be used to fetch the ID-JAG.
+ },
+ "idJagAdditionalClaims": { # Optional. Optional additional claims to include when fetching an ID-JAG.
+ "a_key": "", # Properties of the object.
+ },
+ "idJagAuthProvider": "A String", # The resource name of the ID-JAG auth provider. Format: "projects/{project}/locations/{location}/authProviders/{auth_provider}"
+ },
+ "workforceIdentityFederation": { # Configuration for Workforce Identity Federation usage as the issuer. # Configuration when using Workforce Identity Federation as the issuer.
+ },
+ },
},
"blockedScopes": [ # Optional. List of scopes that are blocked from being requested for this auth provider. If a scope appears in this list, it will not be requested, even if it also appears in `allowed_scopes`. `blocked_scopes` takes precedence over `allowed_scopes`. The number of blocked scopes is limited to 200.
"A String",
@@ -768,6 +1075,32 @@ Method Details
+
+ resolveAuthorization(name, body=None, x__xgafv=None)
+ Resolves an authorization for a user on an auth provider, creating one if it does not exist or returning an existing one.
+
+Args:
+ name: string, Required. The name of the auth provider to resolve authorization for. Format: projects/{project}/locations/{location}/authProviders/{auth_provider} (required)
+ body: object, The request body.
+ The object takes the form of:
+
+{ # Request message for `ResolveAuthorization`.
+ "clientUserId": "A String", # Required. The user ID of the client for whom the authorization is resolved.
+}
+
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Response message for `ResolveAuthorization`.
+ "authorization": "A String", # The resource name of the resolved authorization. Format: projects/{project}/locations/{location}/authProviders/{auth_provider}/authorizations/{authorization}
+}
+
+
revokeAuthorization(name, body=None, x__xgafv=None)
Revokes all authorizations for a specific user on an auth provider. This deletes all authorization records associated with the user and auth provider, effectively revoking access across all agents.
@@ -937,6 +1270,14 @@ Method Details
"apiKey": { # Configuration for API key authentication. # Parameters for API key authentication.
"apiKey": "A String", # Optional. Input only. The API key for this auth provider.
},
+ "connectorReferenceAuthProvider": { # Configuration parameters for the Connector Reference auth provider. # Parameters for Connector Reference authentication.
+ "authorizationDetails": [ # Optional. Rich Authorization Requests (RFC 9396) detailing targeted OAuth resources/scopes, formatted as a JSON array of JSON objects.
+ {
+ "a_key": "", # Properties of the object.
+ },
+ ],
+ "connector": "A String", # Required. The name of the referenced connector.
+ },
"geAuthProvider": { # Configuration for Gemini Enterprise authentication. # Parameters for Gemini Enterprise authentication.
},
"threeLeggedOauth": { # Configuration for 3-legged OAuth (3LO) authentication. # Parameters for 3-legged OAuth (3LO) authentication.
@@ -953,6 +1294,36 @@ Method Details
"clientSecret": "A String", # Optional. Input only. The client secret of the OAuth client.
"tokenUrl": "A String", # Optional. The token endpoint of the OAuth client.
},
+ "xaaAuthProvider": { # Configuration parameters for the Cross-App Access auth provider. # Parameters for Cross-App Access authentication.
+ "additionalParameters": { # Optional. Additional parameters to be passed to the token endpoint.
+ "a_key": "A String",
+ },
+ "clientAssertionJwtAuth": { # Configuration for client ID and client assertion JWT authentication. # Option 2: Authenticate using a standard `client_id` and a Client Assertion JWT.
+ "clientId": "A String", # Required. The client identifier.
+ },
+ "clientSecretAuth": { # Configuration for client ID and client secret authentication. # Option 1: Authenticate using a standard `client_id` and `client_secret`.
+ "clientId": "A String", # Required. The client identifier.
+ "clientSecret": "A String", # Required. Input only. The client secret.
+ },
+ "customIssuer": { # Configuration for a custom or third-party authorization server issuer. # Configuration when using a custom or third-party authorization server as the issuer.
+ "issuer": "A String", # Optional. The issuer identifier of the target Authorization Server.
+ "tokenUrl": "A String", # Required. The token endpoint of the target OAuth authorization server to retrieve resource tokens.
+ },
+ "googleAccount": { # Configuration for Google Account usage as the issuer. # Configuration when using Google Accounts as the issuer.
+ },
+ "idJagInput": { # Marker message indicating the input is already an ID-JAG, so no fetching is required. # Configuration for when the input is already an ID-JAG.
+ },
+ "idTokenInput": { # Defines how to process an input ID token to obtain an ID-JAG. # Configuration for when the input is an ID token.
+ "agentIdentityPool": { # Marker message to indicate the managed Agent Identity Pool is used. # Indicates the managed Agent Identity pool should be used to fetch the ID-JAG.
+ },
+ "idJagAdditionalClaims": { # Optional. Optional additional claims to include when fetching an ID-JAG.
+ "a_key": "", # Properties of the object.
+ },
+ "idJagAuthProvider": "A String", # The resource name of the ID-JAG auth provider. Format: "projects/{project}/locations/{location}/authProviders/{auth_provider}"
+ },
+ "workforceIdentityFederation": { # Configuration for Workforce Identity Federation usage as the issuer. # Configuration when using Workforce Identity Federation as the issuer.
+ },
+ },
},
"blockedScopes": [ # Optional. List of scopes that are blocked from being requested for this auth provider. If a scope appears in this list, it will not be requested, even if it also appears in `allowed_scopes`. `blocked_scopes` takes precedence over `allowed_scopes`. The number of blocked scopes is limited to 200.
"A String",
diff --git a/docs/dyn/agentregistry_v1.projects.locations.aiApplications.mcpServers.html b/docs/dyn/agentregistry_v1.projects.locations.aiApplications.mcpServers.html
index 9fb7069960..a32ff847f4 100644
--- a/docs/dyn/agentregistry_v1.projects.locations.aiApplications.mcpServers.html
+++ b/docs/dyn/agentregistry_v1.projects.locations.aiApplications.mcpServers.html
@@ -125,6 +125,9 @@ Method Details
"name": "A String", # Identifier. The resource name of the MCP Server. Format: `projects/{project}/locations/{location}/mcpServers/{mcp_server}`.
"tools": [ # Output only. Tools provided by the MCP Server.
{ # Represents a single tool provided by an MCP Server.
+ "_meta": { # Output only. Protocol-level tool metadata conforming to MCP _meta specification. Output only.
+ "a_key": "", # Properties of the object.
+ },
"annotations": { # Annotations describing the characteristics and behavior of a tool or operation. # Output only. Annotations associated with the tool.
"destructiveHint": True or False, # Output only. If true, the tool may perform destructive updates to its environment. If false, the tool performs only additive updates. NOTE: This property is meaningful only when `read_only_hint == false` Default: true
"idempotentHint": True or False, # Output only. If true, calling the tool repeatedly with the same arguments will have no additional effect on its environment. NOTE: This property is meaningful only when `read_only_hint == false` Default: false
@@ -177,6 +180,9 @@ Method Details
"name": "A String", # Identifier. The resource name of the MCP Server. Format: `projects/{project}/locations/{location}/mcpServers/{mcp_server}`.
"tools": [ # Output only. Tools provided by the MCP Server.
{ # Represents a single tool provided by an MCP Server.
+ "_meta": { # Output only. Protocol-level tool metadata conforming to MCP _meta specification. Output only.
+ "a_key": "", # Properties of the object.
+ },
"annotations": { # Annotations describing the characteristics and behavior of a tool or operation. # Output only. Annotations associated with the tool.
"destructiveHint": True or False, # Output only. If true, the tool may perform destructive updates to its environment. If false, the tool performs only additive updates. NOTE: This property is meaningful only when `read_only_hint == false` Default: true
"idempotentHint": True or False, # Output only. If true, calling the tool repeatedly with the same arguments will have no additional effect on its environment. NOTE: This property is meaningful only when `read_only_hint == false` Default: false
diff --git a/docs/dyn/agentregistry_v1.projects.locations.findings.html b/docs/dyn/agentregistry_v1.projects.locations.findings.html
index 004defe215..673aa807dc 100644
--- a/docs/dyn/agentregistry_v1.projects.locations.findings.html
+++ b/docs/dyn/agentregistry_v1.projects.locations.findings.html
@@ -107,7 +107,6 @@ Method Details
An object of the form:
{ # Represents a security Finding.
- "category": "A String", # Optional. Category of the finding.
"createTime": "A String", # Output only. Create time.
"detail": "A String", # Optional. Detailed description of the finding.
"files": [ # Optional. File associated with the finding.
@@ -146,7 +145,6 @@ Method Details
{ # Message for response to listing Findings.
"findings": [ # The list of Findings.
{ # Represents a security Finding.
- "category": "A String", # Optional. Category of the finding.
"createTime": "A String", # Output only. Create time.
"detail": "A String", # Optional. Detailed description of the finding.
"files": [ # Optional. File associated with the finding.
diff --git a/docs/dyn/agentregistry_v1.projects.locations.mcpServers.html b/docs/dyn/agentregistry_v1.projects.locations.mcpServers.html
index cf038b3c82..e55f9d5563 100644
--- a/docs/dyn/agentregistry_v1.projects.locations.mcpServers.html
+++ b/docs/dyn/agentregistry_v1.projects.locations.mcpServers.html
@@ -131,6 +131,9 @@ Method Details
"name": "A String", # Identifier. The resource name of the MCP Server. Format: `projects/{project}/locations/{location}/mcpServers/{mcp_server}`.
"tools": [ # Output only. Tools provided by the MCP Server.
{ # Represents a single tool provided by an MCP Server.
+ "_meta": { # Output only. Protocol-level tool metadata conforming to MCP _meta specification. Output only.
+ "a_key": "", # Properties of the object.
+ },
"annotations": { # Annotations describing the characteristics and behavior of a tool or operation. # Output only. Annotations associated with the tool.
"destructiveHint": True or False, # Output only. If true, the tool may perform destructive updates to its environment. If false, the tool performs only additive updates. NOTE: This property is meaningful only when `read_only_hint == false` Default: true
"idempotentHint": True or False, # Output only. If true, calling the tool repeatedly with the same arguments will have no additional effect on its environment. NOTE: This property is meaningful only when `read_only_hint == false` Default: false
@@ -185,6 +188,9 @@ Method Details
"name": "A String", # Identifier. The resource name of the MCP Server. Format: `projects/{project}/locations/{location}/mcpServers/{mcp_server}`.
"tools": [ # Output only. Tools provided by the MCP Server.
{ # Represents a single tool provided by an MCP Server.
+ "_meta": { # Output only. Protocol-level tool metadata conforming to MCP _meta specification. Output only.
+ "a_key": "", # Properties of the object.
+ },
"annotations": { # Annotations describing the characteristics and behavior of a tool or operation. # Output only. Annotations associated with the tool.
"destructiveHint": True or False, # Output only. If true, the tool may perform destructive updates to its environment. If false, the tool performs only additive updates. NOTE: This property is meaningful only when `read_only_hint == false` Default: true
"idempotentHint": True or False, # Output only. If true, calling the tool repeatedly with the same arguments will have no additional effect on its environment. NOTE: This property is meaningful only when `read_only_hint == false` Default: false
@@ -261,6 +267,9 @@ Method Details
"name": "A String", # Identifier. The resource name of the MCP Server. Format: `projects/{project}/locations/{location}/mcpServers/{mcp_server}`.
"tools": [ # Output only. Tools provided by the MCP Server.
{ # Represents a single tool provided by an MCP Server.
+ "_meta": { # Output only. Protocol-level tool metadata conforming to MCP _meta specification. Output only.
+ "a_key": "", # Properties of the object.
+ },
"annotations": { # Annotations describing the characteristics and behavior of a tool or operation. # Output only. Annotations associated with the tool.
"destructiveHint": True or False, # Output only. If true, the tool may perform destructive updates to its environment. If false, the tool performs only additive updates. NOTE: This property is meaningful only when `read_only_hint == false` Default: true
"idempotentHint": True or False, # Output only. If true, calling the tool repeatedly with the same arguments will have no additional effect on its environment. NOTE: This property is meaningful only when `read_only_hint == false` Default: false
diff --git a/docs/dyn/agentregistry_v1.projects.locations.skills.html b/docs/dyn/agentregistry_v1.projects.locations.skills.html
index f9a2fdc285..9382935d89 100644
--- a/docs/dyn/agentregistry_v1.projects.locations.skills.html
+++ b/docs/dyn/agentregistry_v1.projects.locations.skills.html
@@ -137,7 +137,7 @@ Method Details
"createTime": "A String", # Output only. Create time.
"defaultRevision": "A String", # Optional. The full resource name of the revision currently served by default (floating track). Format: `projects/{project}/locations/{location}/skills/{skill}/revisions/{revision}`
"description": "A String", # Optional. Brief summary describing the capabilities of the skill. Maximum length is 2048 characters.
- "displayName": "A String", # Required. Human-readable display name of the skill. Maximum length is 128 characters.
+ "displayName": "A String", # Optional. Human-readable display name of the skill. Maximum length is 128 characters.
"frontmatter": { # Structured metadata attributes extracted from the package's local SKILL.md frontmatter. # Output only. Lightweight frontmatter metadata attributes copied from the default revision.
"compatibility": "A String", # Optional. Environmental dependencies or local sidecars.
"description": "A String", # Required. Functional description.
@@ -278,7 +278,7 @@ Method Details
"createTime": "A String", # Output only. Create time.
"defaultRevision": "A String", # Optional. The full resource name of the revision currently served by default (floating track). Format: `projects/{project}/locations/{location}/skills/{skill}/revisions/{revision}`
"description": "A String", # Optional. Brief summary describing the capabilities of the skill. Maximum length is 2048 characters.
- "displayName": "A String", # Required. Human-readable display name of the skill. Maximum length is 128 characters.
+ "displayName": "A String", # Optional. Human-readable display name of the skill. Maximum length is 128 characters.
"frontmatter": { # Structured metadata attributes extracted from the package's local SKILL.md frontmatter. # Output only. Lightweight frontmatter metadata attributes copied from the default revision.
"compatibility": "A String", # Optional. Environmental dependencies or local sidecars.
"description": "A String", # Required. Functional description.
@@ -424,7 +424,7 @@ Method Details
"createTime": "A String", # Output only. Create time.
"defaultRevision": "A String", # Optional. The full resource name of the revision currently served by default (floating track). Format: `projects/{project}/locations/{location}/skills/{skill}/revisions/{revision}`
"description": "A String", # Optional. Brief summary describing the capabilities of the skill. Maximum length is 2048 characters.
- "displayName": "A String", # Required. Human-readable display name of the skill. Maximum length is 128 characters.
+ "displayName": "A String", # Optional. Human-readable display name of the skill. Maximum length is 128 characters.
"frontmatter": { # Structured metadata attributes extracted from the package's local SKILL.md frontmatter. # Output only. Lightweight frontmatter metadata attributes copied from the default revision.
"compatibility": "A String", # Optional. Environmental dependencies or local sidecars.
"description": "A String", # Required. Functional description.
@@ -512,7 +512,7 @@ Method Details
"createTime": "A String", # Output only. Create time.
"defaultRevision": "A String", # Optional. The full resource name of the revision currently served by default (floating track). Format: `projects/{project}/locations/{location}/skills/{skill}/revisions/{revision}`
"description": "A String", # Optional. Brief summary describing the capabilities of the skill. Maximum length is 2048 characters.
- "displayName": "A String", # Required. Human-readable display name of the skill. Maximum length is 128 characters.
+ "displayName": "A String", # Optional. Human-readable display name of the skill. Maximum length is 128 characters.
"frontmatter": { # Structured metadata attributes extracted from the package's local SKILL.md frontmatter. # Output only. Lightweight frontmatter metadata attributes copied from the default revision.
"compatibility": "A String", # Optional. Environmental dependencies or local sidecars.
"description": "A String", # Required. Functional description.
@@ -628,7 +628,7 @@ Method Details
"createTime": "A String", # Output only. Create time.
"defaultRevision": "A String", # Optional. The full resource name of the revision currently served by default (floating track). Format: `projects/{project}/locations/{location}/skills/{skill}/revisions/{revision}`
"description": "A String", # Optional. Brief summary describing the capabilities of the skill. Maximum length is 2048 characters.
- "displayName": "A String", # Required. Human-readable display name of the skill. Maximum length is 128 characters.
+ "displayName": "A String", # Optional. Human-readable display name of the skill. Maximum length is 128 characters.
"frontmatter": { # Structured metadata attributes extracted from the package's local SKILL.md frontmatter. # Output only. Lightweight frontmatter metadata attributes copied from the default revision.
"compatibility": "A String", # Optional. Environmental dependencies or local sidecars.
"description": "A String", # Required. Functional description.
diff --git a/docs/dyn/agentregistry_v1alpha.projects.locations.aiApplications.mcpServers.html b/docs/dyn/agentregistry_v1alpha.projects.locations.aiApplications.mcpServers.html
index 5031043237..5e4453856d 100644
--- a/docs/dyn/agentregistry_v1alpha.projects.locations.aiApplications.mcpServers.html
+++ b/docs/dyn/agentregistry_v1alpha.projects.locations.aiApplications.mcpServers.html
@@ -125,6 +125,9 @@ Method Details
"name": "A String", # Identifier. The resource name of the MCP Server. Format: `projects/{project}/locations/{location}/mcpServers/{mcp_server}`.
"tools": [ # Output only. Tools provided by the MCP Server.
{ # Represents a single tool provided by an MCP Server.
+ "_meta": { # Output only. Protocol-level tool metadata conforming to MCP _meta specification. Output only.
+ "a_key": "", # Properties of the object.
+ },
"annotations": { # Annotations describing the characteristics and behavior of a tool or operation. # Output only. Annotations associated with the tool.
"destructiveHint": True or False, # Output only. If true, the tool may perform destructive updates to its environment. If false, the tool performs only additive updates. NOTE: This property is meaningful only when `read_only_hint == false` Default: true
"idempotentHint": True or False, # Output only. If true, calling the tool repeatedly with the same arguments will have no additional effect on its environment. NOTE: This property is meaningful only when `read_only_hint == false` Default: false
@@ -177,6 +180,9 @@ Method Details
"name": "A String", # Identifier. The resource name of the MCP Server. Format: `projects/{project}/locations/{location}/mcpServers/{mcp_server}`.
"tools": [ # Output only. Tools provided by the MCP Server.
{ # Represents a single tool provided by an MCP Server.
+ "_meta": { # Output only. Protocol-level tool metadata conforming to MCP _meta specification. Output only.
+ "a_key": "", # Properties of the object.
+ },
"annotations": { # Annotations describing the characteristics and behavior of a tool or operation. # Output only. Annotations associated with the tool.
"destructiveHint": True or False, # Output only. If true, the tool may perform destructive updates to its environment. If false, the tool performs only additive updates. NOTE: This property is meaningful only when `read_only_hint == false` Default: true
"idempotentHint": True or False, # Output only. If true, calling the tool repeatedly with the same arguments will have no additional effect on its environment. NOTE: This property is meaningful only when `read_only_hint == false` Default: false
diff --git a/docs/dyn/agentregistry_v1alpha.projects.locations.findings.html b/docs/dyn/agentregistry_v1alpha.projects.locations.findings.html
index 4caa587e05..d51d42f833 100644
--- a/docs/dyn/agentregistry_v1alpha.projects.locations.findings.html
+++ b/docs/dyn/agentregistry_v1alpha.projects.locations.findings.html
@@ -107,7 +107,6 @@ Method Details
An object of the form:
{ # Represents a security Finding.
- "category": "A String", # Optional. Category of the finding.
"createTime": "A String", # Output only. Create time.
"detail": "A String", # Optional. Detailed description of the finding.
"files": [ # Optional. File associated with the finding.
@@ -146,7 +145,6 @@ Method Details
{ # Message for response to listing Findings.
"findings": [ # The list of Findings.
{ # Represents a security Finding.
- "category": "A String", # Optional. Category of the finding.
"createTime": "A String", # Output only. Create time.
"detail": "A String", # Optional. Detailed description of the finding.
"files": [ # Optional. File associated with the finding.
diff --git a/docs/dyn/agentregistry_v1alpha.projects.locations.mcpServers.html b/docs/dyn/agentregistry_v1alpha.projects.locations.mcpServers.html
index 57ccc09bc1..a3c5f24bf4 100644
--- a/docs/dyn/agentregistry_v1alpha.projects.locations.mcpServers.html
+++ b/docs/dyn/agentregistry_v1alpha.projects.locations.mcpServers.html
@@ -131,6 +131,9 @@ Method Details
"name": "A String", # Identifier. The resource name of the MCP Server. Format: `projects/{project}/locations/{location}/mcpServers/{mcp_server}`.
"tools": [ # Output only. Tools provided by the MCP Server.
{ # Represents a single tool provided by an MCP Server.
+ "_meta": { # Output only. Protocol-level tool metadata conforming to MCP _meta specification. Output only.
+ "a_key": "", # Properties of the object.
+ },
"annotations": { # Annotations describing the characteristics and behavior of a tool or operation. # Output only. Annotations associated with the tool.
"destructiveHint": True or False, # Output only. If true, the tool may perform destructive updates to its environment. If false, the tool performs only additive updates. NOTE: This property is meaningful only when `read_only_hint == false` Default: true
"idempotentHint": True or False, # Output only. If true, calling the tool repeatedly with the same arguments will have no additional effect on its environment. NOTE: This property is meaningful only when `read_only_hint == false` Default: false
@@ -185,6 +188,9 @@ Method Details
"name": "A String", # Identifier. The resource name of the MCP Server. Format: `projects/{project}/locations/{location}/mcpServers/{mcp_server}`.
"tools": [ # Output only. Tools provided by the MCP Server.
{ # Represents a single tool provided by an MCP Server.
+ "_meta": { # Output only. Protocol-level tool metadata conforming to MCP _meta specification. Output only.
+ "a_key": "", # Properties of the object.
+ },
"annotations": { # Annotations describing the characteristics and behavior of a tool or operation. # Output only. Annotations associated with the tool.
"destructiveHint": True or False, # Output only. If true, the tool may perform destructive updates to its environment. If false, the tool performs only additive updates. NOTE: This property is meaningful only when `read_only_hint == false` Default: true
"idempotentHint": True or False, # Output only. If true, calling the tool repeatedly with the same arguments will have no additional effect on its environment. NOTE: This property is meaningful only when `read_only_hint == false` Default: false
@@ -261,6 +267,9 @@ Method Details
"name": "A String", # Identifier. The resource name of the MCP Server. Format: `projects/{project}/locations/{location}/mcpServers/{mcp_server}`.
"tools": [ # Output only. Tools provided by the MCP Server.
{ # Represents a single tool provided by an MCP Server.
+ "_meta": { # Output only. Protocol-level tool metadata conforming to MCP _meta specification. Output only.
+ "a_key": "", # Properties of the object.
+ },
"annotations": { # Annotations describing the characteristics and behavior of a tool or operation. # Output only. Annotations associated with the tool.
"destructiveHint": True or False, # Output only. If true, the tool may perform destructive updates to its environment. If false, the tool performs only additive updates. NOTE: This property is meaningful only when `read_only_hint == false` Default: true
"idempotentHint": True or False, # Output only. If true, calling the tool repeatedly with the same arguments will have no additional effect on its environment. NOTE: This property is meaningful only when `read_only_hint == false` Default: false
diff --git a/docs/dyn/agentregistry_v1alpha.projects.locations.skills.html b/docs/dyn/agentregistry_v1alpha.projects.locations.skills.html
index ddf6ca9669..acc5c21d55 100644
--- a/docs/dyn/agentregistry_v1alpha.projects.locations.skills.html
+++ b/docs/dyn/agentregistry_v1alpha.projects.locations.skills.html
@@ -137,7 +137,7 @@ Method Details
"createTime": "A String", # Output only. Create time.
"defaultRevision": "A String", # Optional. The full resource name of the revision currently served by default (floating track). Format: `projects/{project}/locations/{location}/skills/{skill}/revisions/{revision}`
"description": "A String", # Optional. Brief summary describing the capabilities of the skill. Maximum length is 2048 characters.
- "displayName": "A String", # Required. Human-readable display name of the skill. Maximum length is 128 characters.
+ "displayName": "A String", # Optional. Human-readable display name of the skill. Maximum length is 128 characters.
"frontmatter": { # Structured metadata attributes extracted from the package's local SKILL.md frontmatter. # Output only. Lightweight frontmatter metadata attributes copied from the default revision.
"compatibility": "A String", # Optional. Environmental dependencies or local sidecars.
"description": "A String", # Required. Functional description.
@@ -278,7 +278,7 @@ Method Details
"createTime": "A String", # Output only. Create time.
"defaultRevision": "A String", # Optional. The full resource name of the revision currently served by default (floating track). Format: `projects/{project}/locations/{location}/skills/{skill}/revisions/{revision}`
"description": "A String", # Optional. Brief summary describing the capabilities of the skill. Maximum length is 2048 characters.
- "displayName": "A String", # Required. Human-readable display name of the skill. Maximum length is 128 characters.
+ "displayName": "A String", # Optional. Human-readable display name of the skill. Maximum length is 128 characters.
"frontmatter": { # Structured metadata attributes extracted from the package's local SKILL.md frontmatter. # Output only. Lightweight frontmatter metadata attributes copied from the default revision.
"compatibility": "A String", # Optional. Environmental dependencies or local sidecars.
"description": "A String", # Required. Functional description.
@@ -424,7 +424,7 @@ Method Details
"createTime": "A String", # Output only. Create time.
"defaultRevision": "A String", # Optional. The full resource name of the revision currently served by default (floating track). Format: `projects/{project}/locations/{location}/skills/{skill}/revisions/{revision}`
"description": "A String", # Optional. Brief summary describing the capabilities of the skill. Maximum length is 2048 characters.
- "displayName": "A String", # Required. Human-readable display name of the skill. Maximum length is 128 characters.
+ "displayName": "A String", # Optional. Human-readable display name of the skill. Maximum length is 128 characters.
"frontmatter": { # Structured metadata attributes extracted from the package's local SKILL.md frontmatter. # Output only. Lightweight frontmatter metadata attributes copied from the default revision.
"compatibility": "A String", # Optional. Environmental dependencies or local sidecars.
"description": "A String", # Required. Functional description.
@@ -512,7 +512,7 @@ Method Details
"createTime": "A String", # Output only. Create time.
"defaultRevision": "A String", # Optional. The full resource name of the revision currently served by default (floating track). Format: `projects/{project}/locations/{location}/skills/{skill}/revisions/{revision}`
"description": "A String", # Optional. Brief summary describing the capabilities of the skill. Maximum length is 2048 characters.
- "displayName": "A String", # Required. Human-readable display name of the skill. Maximum length is 128 characters.
+ "displayName": "A String", # Optional. Human-readable display name of the skill. Maximum length is 128 characters.
"frontmatter": { # Structured metadata attributes extracted from the package's local SKILL.md frontmatter. # Output only. Lightweight frontmatter metadata attributes copied from the default revision.
"compatibility": "A String", # Optional. Environmental dependencies or local sidecars.
"description": "A String", # Required. Functional description.
@@ -628,7 +628,7 @@ Method Details
"createTime": "A String", # Output only. Create time.
"defaultRevision": "A String", # Optional. The full resource name of the revision currently served by default (floating track). Format: `projects/{project}/locations/{location}/skills/{skill}/revisions/{revision}`
"description": "A String", # Optional. Brief summary describing the capabilities of the skill. Maximum length is 2048 characters.
- "displayName": "A String", # Required. Human-readable display name of the skill. Maximum length is 128 characters.
+ "displayName": "A String", # Optional. Human-readable display name of the skill. Maximum length is 128 characters.
"frontmatter": { # Structured metadata attributes extracted from the package's local SKILL.md frontmatter. # Output only. Lightweight frontmatter metadata attributes copied from the default revision.
"compatibility": "A String", # Optional. Environmental dependencies or local sidecars.
"description": "A String", # Required. Functional description.
diff --git a/docs/dyn/aiplatform_v1.endpoints.html b/docs/dyn/aiplatform_v1.endpoints.html
index 81815d433f..a9ab4749af 100644
--- a/docs/dyn/aiplatform_v1.endpoints.html
+++ b/docs/dyn/aiplatform_v1.endpoints.html
@@ -1022,6 +1022,7 @@ Method Details
"role": "A String", # Optional. The producer of the content. Must be either 'user' or 'model'. If not set, the service will default to 'user'.
},
],
+ "continuationToken": "A String", # Optional. An opaque continuation token used to resume generation from a previous `GenerateContent` or `StreamGenerateContent` response that stopped with `finish_reason` set to `CONTINUATION`.
"generationConfig": { # Configuration for content generation. This message contains all the parameters that control how the model generates content. It allows you to influence the randomness, length, and structure of the output. # Optional. Generation config.
"audioTimestamp": True or False, # Optional. If enabled, audio timestamps will be included in the request to the model. This can be useful for synchronizing audio with other modalities in the response.
"audioTranscriptionConfig": { # Configuration for speech recognition (transcription). # Optional. Configuration for audio transcription (speech recognition).
@@ -1196,6 +1197,9 @@ Method Details
"promptTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for prompt screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the user's prompt for safety and security risks before it is sent to the model. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
"responseTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for response screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the model's response for safety and security risks before it is returned to the user. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
},
+ "outputConfig": { # Configuration for persisting output assets to external storage. # Optional. Configuration for persisting output assets to external storage.
+ "outputUriPrefix": "A String", # Optional. The Cloud Storage URI prefix or directory where generated media assets should be written (e.g. `gs://my-bucket/prefix/`). Supported URI schemes: `gs://`. When set, media bytes are written directly to this location and returned as `FileData` with a `file_uri` instead of raw inline bytes.
+ },
"safetySettings": [ # Optional. Per request settings for blocking unsafe content. Enforced on GenerateContentResponse.candidates.
{ # A safety setting that affects the safety-blocking behavior. A SafetySetting consists of a harm category and a threshold for that category.
"category": "A String", # Required. The harm category to be blocked.
@@ -2056,6 +2060,7 @@ Method Details
"role": "A String", # Optional. The producer of the content. Must be either 'user' or 'model'. If not set, the service will default to 'user'.
},
],
+ "continuationToken": "A String", # Optional. An opaque continuation token used to resume generation from a previous `GenerateContent` or `StreamGenerateContent` response that stopped with `finish_reason` set to `CONTINUATION`.
"generationConfig": { # Configuration for content generation. This message contains all the parameters that control how the model generates content. It allows you to influence the randomness, length, and structure of the output. # Optional. Generation config.
"audioTimestamp": True or False, # Optional. If enabled, audio timestamps will be included in the request to the model. This can be useful for synchronizing audio with other modalities in the response.
"audioTranscriptionConfig": { # Configuration for speech recognition (transcription). # Optional. Configuration for audio transcription (speech recognition).
@@ -2230,6 +2235,9 @@ Method Details
"promptTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for prompt screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the user's prompt for safety and security risks before it is sent to the model. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
"responseTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for response screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the model's response for safety and security risks before it is returned to the user. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
},
+ "outputConfig": { # Configuration for persisting output assets to external storage. # Optional. Configuration for persisting output assets to external storage.
+ "outputUriPrefix": "A String", # Optional. The Cloud Storage URI prefix or directory where generated media assets should be written (e.g. `gs://my-bucket/prefix/`). Supported URI schemes: `gs://`. When set, media bytes are written directly to this location and returned as `FileData` with a `file_uri` instead of raw inline bytes.
+ },
"safetySettings": [ # Optional. Per request settings for blocking unsafe content. Enforced on GenerateContentResponse.candidates.
{ # A safety setting that affects the safety-blocking behavior. A SafetySetting consists of a harm category and a threshold for that category.
"category": "A String", # Required. The harm category to be blocked.
diff --git a/docs/dyn/aiplatform_v1.projects.locations.agents.html b/docs/dyn/aiplatform_v1.projects.locations.agents.html
index 55136e98c1..7730da9ae7 100644
--- a/docs/dyn/aiplatform_v1.projects.locations.agents.html
+++ b/docs/dyn/aiplatform_v1.projects.locations.agents.html
@@ -78,7 +78,7 @@ Instance Methods
close()
Close httplib2 connections.
- create(parent, body=None, x__xgafv=None)
+ create(parent, body=None, idpNonce=None, x__xgafv=None)
Creates an agent.
delete(name, force=None, x__xgafv=None)
@@ -111,7 +111,7 @@ Method Details
- create(parent, body=None, x__xgafv=None)
+ create(parent, body=None, idpNonce=None, x__xgafv=None)
Creates an agent.
Args:
@@ -120,6 +120,7 @@ Method Details
The object takes the form of:
{ # A Vertex agent contains instructions and configurations for the LLM to execute a certain task.
+ "aiApplication": "A String", # Output only. The resource name of the AI Application provisioned for this agent. Format: `projects/{project}/locations/{location}/aiApplications/{ai_application}`.
"base_agent": "A String", # Required. Immutable. The base agent for the agent. Supported values: * `antigravity-preview-05-2026` Immutable: `UpdateAgent` rejects a change, including clearing it. The kind of agent this is gets derived from this field when the agent is created and is recorded then; nothing recomputes it afterwards, so a later change would leave the agent described as one kind and behaving as another. Create a new agent instead.
"base_environment": "", # Optional. The base environment configuration for the agent. Valid types: * A string value for the environment ID, or `remote` for the default. * A struct value for the `environment_config`.
"created": "A String", # Output only. The time the agent was created.
@@ -153,6 +154,7 @@ Method Details
"updated": "A String", # Output only. The time the agent was last updated.
}
+ idpNonce: string, Optional. Optional. One-time cryptographic nonce issued by the trusted IdP provisioning iframe for session and device non-repudiation.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -233,6 +235,7 @@ Method Details
An object of the form:
{ # A Vertex agent contains instructions and configurations for the LLM to execute a certain task.
+ "aiApplication": "A String", # Output only. The resource name of the AI Application provisioned for this agent. Format: `projects/{project}/locations/{location}/aiApplications/{ai_application}`.
"base_agent": "A String", # Required. Immutable. The base agent for the agent. Supported values: * `antigravity-preview-05-2026` Immutable: `UpdateAgent` rejects a change, including clearing it. The kind of agent this is gets derived from this field when the agent is created and is recorded then; nothing recomputes it afterwards, so a later change would leave the agent described as one kind and behaving as another. Create a new agent instead.
"base_environment": "", # Optional. The base environment configuration for the agent. Valid types: * A string value for the environment ID, or `remote` for the default. * A struct value for the `environment_config`.
"created": "A String", # Output only. The time the agent was created.
@@ -323,6 +326,7 @@ Method Details
{ # Response message for AgentService.ListAgents.
"agents": [ # The agents matching the request.
{ # A Vertex agent contains instructions and configurations for the LLM to execute a certain task.
+ "aiApplication": "A String", # Output only. The resource name of the AI Application provisioned for this agent. Format: `projects/{project}/locations/{location}/aiApplications/{ai_application}`.
"base_agent": "A String", # Required. Immutable. The base agent for the agent. Supported values: * `antigravity-preview-05-2026` Immutable: `UpdateAgent` rejects a change, including clearing it. The kind of agent this is gets derived from this field when the agent is created and is recorded then; nothing recomputes it afterwards, so a later change would leave the agent described as one kind and behaving as another. Create a new agent instead.
"base_environment": "", # Optional. The base environment configuration for the agent. Valid types: * A string value for the environment ID, or `remote` for the default. * A struct value for the `environment_config`.
"created": "A String", # Output only. The time the agent was created.
@@ -384,6 +388,7 @@ Method Details
The object takes the form of:
{ # A Vertex agent contains instructions and configurations for the LLM to execute a certain task.
+ "aiApplication": "A String", # Output only. The resource name of the AI Application provisioned for this agent. Format: `projects/{project}/locations/{location}/aiApplications/{ai_application}`.
"base_agent": "A String", # Required. Immutable. The base agent for the agent. Supported values: * `antigravity-preview-05-2026` Immutable: `UpdateAgent` rejects a change, including clearing it. The kind of agent this is gets derived from this field when the agent is created and is recorded then; nothing recomputes it afterwards, so a later change would leave the agent described as one kind and behaving as another. Create a new agent instead.
"base_environment": "", # Optional. The base environment configuration for the agent. Valid types: * A string value for the environment ID, or `remote` for the default. * A struct value for the `environment_config`.
"created": "A String", # Output only. The time the agent was created.
diff --git a/docs/dyn/aiplatform_v1.projects.locations.endpoints.html b/docs/dyn/aiplatform_v1.projects.locations.endpoints.html
index 71f642bc74..c8c9635a02 100644
--- a/docs/dyn/aiplatform_v1.projects.locations.endpoints.html
+++ b/docs/dyn/aiplatform_v1.projects.locations.endpoints.html
@@ -1991,6 +1991,7 @@ Method Details
"role": "A String", # Optional. The producer of the content. Must be either 'user' or 'model'. If not set, the service will default to 'user'.
},
],
+ "continuationToken": "A String", # Optional. An opaque continuation token used to resume generation from a previous `GenerateContent` or `StreamGenerateContent` response that stopped with `finish_reason` set to `CONTINUATION`.
"generationConfig": { # Configuration for content generation. This message contains all the parameters that control how the model generates content. It allows you to influence the randomness, length, and structure of the output. # Optional. Generation config.
"audioTimestamp": True or False, # Optional. If enabled, audio timestamps will be included in the request to the model. This can be useful for synchronizing audio with other modalities in the response.
"audioTranscriptionConfig": { # Configuration for speech recognition (transcription). # Optional. Configuration for audio transcription (speech recognition).
@@ -2165,6 +2166,9 @@ Method Details
"promptTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for prompt screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the user's prompt for safety and security risks before it is sent to the model. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
"responseTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for response screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the model's response for safety and security risks before it is returned to the user. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
},
+ "outputConfig": { # Configuration for persisting output assets to external storage. # Optional. Configuration for persisting output assets to external storage.
+ "outputUriPrefix": "A String", # Optional. The Cloud Storage URI prefix or directory where generated media assets should be written (e.g. `gs://my-bucket/prefix/`). Supported URI schemes: `gs://`. When set, media bytes are written directly to this location and returned as `FileData` with a `file_uri` instead of raw inline bytes.
+ },
"safetySettings": [ # Optional. Per request settings for blocking unsafe content. Enforced on GenerateContentResponse.candidates.
{ # A safety setting that affects the safety-blocking behavior. A SafetySetting consists of a harm category and a threshold for that category.
"category": "A String", # Required. The harm category to be blocked.
@@ -4507,6 +4511,7 @@ Method Details
"role": "A String", # Optional. The producer of the content. Must be either 'user' or 'model'. If not set, the service will default to 'user'.
},
],
+ "continuationToken": "A String", # Optional. An opaque continuation token used to resume generation from a previous `GenerateContent` or `StreamGenerateContent` response that stopped with `finish_reason` set to `CONTINUATION`.
"generationConfig": { # Configuration for content generation. This message contains all the parameters that control how the model generates content. It allows you to influence the randomness, length, and structure of the output. # Optional. Generation config.
"audioTimestamp": True or False, # Optional. If enabled, audio timestamps will be included in the request to the model. This can be useful for synchronizing audio with other modalities in the response.
"audioTranscriptionConfig": { # Configuration for speech recognition (transcription). # Optional. Configuration for audio transcription (speech recognition).
@@ -4681,6 +4686,9 @@ Method Details
"promptTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for prompt screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the user's prompt for safety and security risks before it is sent to the model. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
"responseTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for response screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the model's response for safety and security risks before it is returned to the user. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
},
+ "outputConfig": { # Configuration for persisting output assets to external storage. # Optional. Configuration for persisting output assets to external storage.
+ "outputUriPrefix": "A String", # Optional. The Cloud Storage URI prefix or directory where generated media assets should be written (e.g. `gs://my-bucket/prefix/`). Supported URI schemes: `gs://`. When set, media bytes are written directly to this location and returned as `FileData` with a `file_uri` instead of raw inline bytes.
+ },
"safetySettings": [ # Optional. Per request settings for blocking unsafe content. Enforced on GenerateContentResponse.candidates.
{ # A safety setting that affects the safety-blocking behavior. A SafetySetting consists of a harm category and a threshold for that category.
"category": "A String", # Required. The harm category to be blocked.
diff --git a/docs/dyn/aiplatform_v1.projects.locations.publishers.files.html b/docs/dyn/aiplatform_v1.projects.locations.publishers.files.html
new file mode 100644
index 0000000000..2f408f4c58
--- /dev/null
+++ b/docs/dyn/aiplatform_v1.projects.locations.publishers.files.html
@@ -0,0 +1,255 @@
+
+
+
+Agent Platform API . projects . locations . publishers . files
+Instance Methods
+
+ close()
+Close httplib2 connections.
+
+Deletes the given file. Returns the deleted file's ID rather than an empty body. See `DeleteFileResponse`.
+
+ download(name, x__xgafv=None)
+Downloads the contents of the given file. Only files marked `downloadable` can be retrieved this way; user-uploaded files are not downloadable.
+
+ download_media(name, x__xgafv=None)
+Downloads the contents of the given file. Only files marked `downloadable` can be retrieved this way; user-uploaded files are not downloadable.
+
+Gets the metadata for the given file.
+
+ list(parent, publishersId, ids=None, limit=None, page=None, x__xgafv=None)
+Lists the files owned by the requesting project and location. Supports two mutually exclusive modes: paginated listing via an opaque `page` cursor, or batch fetch by `ids`. See `ListFilesRequest`.
+
+ upload(parent, publishersId, body=None, media_body=None, media_mime_type=None, x__xgafv=None)
+Uploads a file that can be referenced by ID from subsequent Claude model requests.
+Method Details
+
+ close()
+ Close httplib2 connections.
+
+
+
+ delete(name, x__xgafv=None)
+ Deletes the given file. Returns the deleted file's ID rather than an empty body. See `DeleteFileResponse`.
+
+Args:
+ name: string, Required. The name of the file to delete. Format: `projects/{project}/locations/{location}/publishers/{publisher}/files/{file}` (required)
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Response message for ClaudeFileService.DeleteFile. Returns `{id, type: "file_deleted"}` rather than an empty body, matching the Claude Files API.
+ "id": "A String", # The ID of the deleted file.
+ "type": "A String", # The object type. Always `file_deleted`.
+}
+
+
+
+ download(name, x__xgafv=None)
+ Downloads the contents of the given file. Only files marked `downloadable` can be retrieved this way; user-uploaded files are not downloadable.
+
+Args:
+ name: string, Required. The name of the file to download. Format: `projects/{project}/locations/{location}/publishers/{publisher}/files/{file}` (required)
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Response message for ClaudeFileService.DownloadFile.
+}
+
+
+
+ download_media(name, x__xgafv=None)
+ Downloads the contents of the given file. Only files marked `downloadable` can be retrieved this way; user-uploaded files are not downloadable.
+
+Args:
+ name: string, Required. The name of the file to download. Format: `projects/{project}/locations/{location}/publishers/{publisher}/files/{file}` (required)
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ The media object as a string.
+
+
+
+
+
+ get(name, x__xgafv=None)
+ Gets the metadata for the given file.
+
+Args:
+ name: string, Required. The name of the file to get. Format: `projects/{project}/locations/{location}/publishers/{publisher}/files/{file}` (required)
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # A file that can be referenced by ID from subsequent Claude model requests. The JSON representation of this message matches the Claude Files API File object field-for-field, so that code written against that API parses these responses unchanged.
+ "created_at": "A String", # Output only. The time at which the file was created.
+ "downloadable": True or False, # Output only. Whether the contents of this file can be retrieved with `DownloadFile`. False for user-uploaded files, true for tool-generated ones.
+ "expires_at": "A String", # Output only. The time at which the file expires and is deleted, set from the `expires_in_seconds` upload form field. Unset for files that do not expire, which is serialised as `null`.
+ "filename": "A String", # Output only. The original name of the uploaded file, taken from the `Content-Disposition` header on upload. Between 1 and 255 characters. Control characters and the characters `<>:"|?*\/` are not accepted.
+ "id": "A String", # Output only. The server-assigned identifier of the file, for example `file_abc123`. This is the ID to pass in subsequent model requests.
+ "mime_type": "A String", # Output only. The media type of the file, taken from the `Content-Type` header of the file part on upload.
+ "size_bytes": 42, # Output only. The size of the file in bytes.
+ "type": "A String", # Output only. The object type. Always `file`.
+}
+
+
+
+ list(parent, publishersId, ids=None, limit=None, page=None, x__xgafv=None)
+ Lists the files owned by the requesting project and location. Supports two mutually exclusive modes: paginated listing via an opaque `page` cursor, or batch fetch by `ids`. See `ListFilesRequest`.
+
+Args:
+ parent: string, Required. The location to list files under. Format: `projects/{project}/locations/{location}` (required)
+ publishersId: string, A parameter (required)
+ ids: string, Optional. Batch fetch: return only these files, up to 100 IDs after de-duplication. Mutually exclusive with both `page` and `limit`. Serialised as a repeated `ids` query parameter, one occurrence per ID. (repeated)
+ limit: integer, Optional. The number of files to return per page. Defaults to 20 if unset, maximum 1000. Mutually exclusive with `ids`.
+ page: string, Optional. Opaque pagination cursor. Pass the previous response's `next_page` to fetch the next page. Mutually exclusive with `ids`.
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Response message for ClaudeFileService.ListFiles.
+ "data": [ # The files.
+ { # A file that can be referenced by ID from subsequent Claude model requests. The JSON representation of this message matches the Claude Files API File object field-for-field, so that code written against that API parses these responses unchanged.
+ "created_at": "A String", # Output only. The time at which the file was created.
+ "downloadable": True or False, # Output only. Whether the contents of this file can be retrieved with `DownloadFile`. False for user-uploaded files, true for tool-generated ones.
+ "expires_at": "A String", # Output only. The time at which the file expires and is deleted, set from the `expires_in_seconds` upload form field. Unset for files that do not expire, which is serialised as `null`.
+ "filename": "A String", # Output only. The original name of the uploaded file, taken from the `Content-Disposition` header on upload. Between 1 and 255 characters. Control characters and the characters `<>:"|?*\/` are not accepted.
+ "id": "A String", # Output only. The server-assigned identifier of the file, for example `file_abc123`. This is the ID to pass in subsequent model requests.
+ "mime_type": "A String", # Output only. The media type of the file, taken from the `Content-Type` header of the file part on upload.
+ "size_bytes": 42, # Output only. The size of the file in bytes.
+ "type": "A String", # Output only. The object type. Always `file`.
+ },
+ ],
+ "next_page": "A String", # Opaque cursor for the next page. Unset on the last page, and always unset when `ids` was supplied, since batch fetch is single-page.
+}
+
+
+
+ upload(parent, publishersId, body=None, media_body=None, media_mime_type=None, x__xgafv=None)
+ Uploads a file that can be referenced by ID from subsequent Claude model requests.
+
+Args:
+ parent: string, Required. The location to create the file under. Format: `projects/{project}/locations/{location}` (required)
+ publishersId: string, A parameter (required)
+ body: object, The request body.
+ The object takes the form of:
+
+{ # Request message for ClaudeFileService.CreateFile.
+}
+
+ media_body: string, The filename of the media request body, or an instance of a MediaUpload object.
+ media_mime_type: string, The MIME type of the media request body, or an instance of a MediaUpload object.
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # A file that can be referenced by ID from subsequent Claude model requests. The JSON representation of this message matches the Claude Files API File object field-for-field, so that code written against that API parses these responses unchanged.
+ "created_at": "A String", # Output only. The time at which the file was created.
+ "downloadable": True or False, # Output only. Whether the contents of this file can be retrieved with `DownloadFile`. False for user-uploaded files, true for tool-generated ones.
+ "expires_at": "A String", # Output only. The time at which the file expires and is deleted, set from the `expires_in_seconds` upload form field. Unset for files that do not expire, which is serialised as `null`.
+ "filename": "A String", # Output only. The original name of the uploaded file, taken from the `Content-Disposition` header on upload. Between 1 and 255 characters. Control characters and the characters `<>:"|?*\/` are not accepted.
+ "id": "A String", # Output only. The server-assigned identifier of the file, for example `file_abc123`. This is the ID to pass in subsequent model requests.
+ "mime_type": "A String", # Output only. The media type of the file, taken from the `Content-Type` header of the file part on upload.
+ "size_bytes": 42, # Output only. The size of the file in bytes.
+ "type": "A String", # Output only. The object type. Always `file`.
+}
+
+
+
\ No newline at end of file
diff --git a/docs/dyn/aiplatform_v1.projects.locations.publishers.html b/docs/dyn/aiplatform_v1.projects.locations.publishers.html
index 5f9afbe16b..a584deaa3a 100644
--- a/docs/dyn/aiplatform_v1.projects.locations.publishers.html
+++ b/docs/dyn/aiplatform_v1.projects.locations.publishers.html
@@ -74,6 +74,11 @@
Agent Platform API . projects . locations . publishers
Instance Methods
+
+ files()
+
+Returns the files Resource.
+
diff --git a/docs/dyn/aiplatform_v1.projects.locations.publishers.models.html b/docs/dyn/aiplatform_v1.projects.locations.publishers.models.html
index ada4d3be4e..b4ac73e47e 100644
--- a/docs/dyn/aiplatform_v1.projects.locations.publishers.models.html
+++ b/docs/dyn/aiplatform_v1.projects.locations.publishers.models.html
@@ -79,6 +79,9 @@ Instance Methods
Returns the invoke Resource.
+
+ batchEmbedContents(model, body=None, x__xgafv=None)
+Generates embeddings directly from multiple contents.
Close httplib2 connections.
@@ -116,6 +119,180 @@ Instance Methods
streamRawPredict(endpoint, body=None, x__xgafv=None)
Perform a streaming online prediction with an arbitrary HTTP payload.
Method Details
+
+ batchEmbedContents(model, body=None, x__xgafv=None)
+ Generates embeddings directly from multiple contents.
+
+Args:
+ model: string, Required. The name of the publisher model requested to serve the prediction. Format: `projects/{project}/locations/{location}/publishers/{publisher}/models/{model}` (required)
+ body: object, The request body.
+ The object takes the form of:
+
+{ # Request message for PredictionService.BatchEmbedContents.
+ "requests": [ # Required. Embed requests for the batch. The model in each of these requests must either be empty or match the model specified in `BatchEmbedContentsRequest.model`. All the requests in a batch must have the same output dimensionality and auto truncation parameters.
+ { # Request message for PredictionService.EmbedContent.
+ "autoTruncate": True or False, # Optional. Deprecated: Please use EmbedContentConfig.auto_truncate instead. Whether to silently truncate the input content if it's longer than the maximum sequence length.
+ "content": { # The structured data content of a message. A Content message contains a `role` field, which indicates the producer of the content, and a `parts` field, which contains the multi-part data of the message. # Required. The content to be embedded.
+ "parts": [ # Required. A list of Part objects that make up a single message. Parts of a message can have different MIME types. A Content message must have at least one Part.
+ { # A datatype containing media that is part of a multi-part Content message. A `Part` consists of data which has an associated datatype. A `Part` must contain one of the accepted types in `Part.data`. For media types that are not text, `Part` must have a fixed IANA MIME type identifying the type and subtype of the media if `inline_data` or `file_data` field is filled with raw bytes.
+ "audioTranscription": { # The transcription of an audio part. For multi-speaker audio, each speaker segment is a separate `Part` with its own `AudioTranscription` carrying the `speaker_label`. # Optional. Audio (input or output) transcription. This is only set when this `Part` contains audio data.
+ "speakerLabel": "A String", # Optional. A label identifying the speaker of this audio segment (e.g. `spk_1`, `spk_2`). Present when `diarization` is set.
+ "text": "A String", # Required. The transcription text of this audio segment.
+ "words": [ # Optional. Detailed word-level transcriptions and timing details. Present when `word_timestamp` is set.
+ { # Information about a single recognized word.
+ "endOffset": "A String", # Optional. End offset in time of the word relative to the start of the audio.
+ "startOffset": "A String", # Optional. Start offset in time of the word relative to the start of the audio.
+ "word": "A String", # Required. Transcript of the word.
+ },
+ ],
+ },
+ "codeExecutionResult": { # Result of executing the ExecutableCode. Generated only when the `CodeExecution` tool is used. # Optional. The result of executing the ExecutableCode.
+ "id": "A String", # Optional. The identifier of the `ExecutableCode` part this result is for. Only populated if the corresponding `ExecutableCode` has an id.
+ "outcome": "A String", # Required. Outcome of the code execution.
+ "output": "A String", # Optional. Contains stdout when code execution is successful, stderr or other description otherwise.
+ },
+ "executableCode": { # Code generated by the model that is meant to be executed, and the result returned to the model. Generated when using the `CodeExecution` tool, in which the code will be automatically executed, and a corresponding CodeExecutionResult will also be generated. # Optional. Code generated by the model that is intended to be executed.
+ "code": "A String", # Required. The code to be executed.
+ "id": "A String", # Optional. Unique identifier of the `ExecutableCode` part. The server returns the `CodeExecutionResult` with the matching `id`.
+ "language": "A String", # Required. Programming language of the `code`.
+ },
+ "fileData": { # URI-based data. A FileData message contains a URI pointing to data of a specific media type. It is used to represent images, audio, and video stored in Google Cloud Storage. # Optional. The URI-based data of the part. This can be used to include files from Google Cloud Storage.
+ "displayName": "A String", # Optional. The display name of the file. Used to provide a label or filename to distinguish files. This field is only returned in `PromptMessage` for prompt management. It is used in the Gemini calls only when server side tools (`code_execution`, `google_search`, and `url_context`) are enabled.
+ "fileUri": "A String", # Required. The URI of the file in Google Cloud Storage.
+ "mimeType": "A String", # Required. The IANA standard MIME type of the source data.
+ },
+ "functionCall": { # A predicted FunctionCall returned from the model that contains a string representing the FunctionDeclaration.name and a structured JSON object containing the parameters and their values. # Optional. A predicted function call returned from the model. This contains the name of the function to call and the arguments to pass to the function.
+ "args": { # Optional. The function parameters and values in JSON object format. See FunctionDeclaration.parameters for parameter details.
+ "a_key": "", # Properties of the object.
+ },
+ "id": "A String", # Optional. The unique id of the function call. If populated, the client to execute the `function_call` and return the response with the matching `id`.
+ "name": "A String", # Optional. The name of the function to call. Matches FunctionDeclaration.name.
+ "partialArgs": [ # Optional. The partial argument value of the function call. If provided, represents the arguments/fields that are streamed incrementally.
+ { # Partial argument value of the function call.
+ "boolValue": True or False, # Optional. Represents a boolean value.
+ "jsonPath": "A String", # Required. A JSON Path (RFC 9535) to the argument being streamed. https://datatracker.ietf.org/doc/html/rfc9535. e.g. "$.foo.bar[0].data".
+ "nullValue": "A String", # Optional. Represents a null value.
+ "numberValue": 3.14, # Optional. Represents a double value.
+ "stringValue": "A String", # Optional. Represents a string value.
+ "willContinue": True or False, # Optional. Whether this is not the last part of the same json_path. If true, another PartialArg message for the current json_path is expected to follow.
+ },
+ ],
+ "willContinue": True or False, # Optional. Whether this is the last part of the FunctionCall. If true, another partial message for the current FunctionCall is expected to follow.
+ },
+ "functionResponse": { # The result output from a FunctionCall that contains a string representing the FunctionDeclaration.name and a structured JSON object containing any output from the function is used as context to the model. This should contain the result of a `FunctionCall` made based on model prediction. # Optional. The result of a function call. This is used to provide the model with the result of a function call that it predicted.
+ "id": "A String", # Optional. The id of the function call this response is for. Populated by the client to match the corresponding function call `id`.
+ "name": "A String", # Required. The name of the function to call. Matches FunctionDeclaration.name and FunctionCall.name.
+ "parts": [ # Optional. Ordered `Parts` that constitute a function response. Parts may have different IANA MIME types.
+ { # A datatype containing media that is part of a `FunctionResponse` message. A `FunctionResponsePart` consists of data which has an associated datatype. A `FunctionResponsePart` can only contain one of the accepted types in `FunctionResponsePart.data`. A `FunctionResponsePart` must have a fixed IANA MIME type identifying the type and subtype of the media if the `inline_data` field is filled with raw bytes.
+ "fileData": { # URI based data for function response. # URI based data.
+ "displayName": "A String", # Optional. Display name of the file data. Used to provide a label or filename to distinguish file datas. This field is only returned in PromptMessage for prompt management. It is currently used in the Gemini GenerateContent calls only when server side tools (code_execution, google_search, and url_context) are enabled.
+ "fileUri": "A String", # Required. URI.
+ "mimeType": "A String", # Required. The IANA standard MIME type of the source data.
+ },
+ "inlineData": { # Raw media bytes for function response. Text should not be sent as raw bytes, use the 'text' field. # Inline media bytes.
+ "data": "A String", # Required. Raw bytes.
+ "displayName": "A String", # Optional. Display name of the blob. Used to provide a label or filename to distinguish blobs. This field is only returned in PromptMessage for prompt management. It is currently used in the Gemini GenerateContent calls only when server side tools (code_execution, google_search, and url_context) are enabled.
+ "mimeType": "A String", # Required. The IANA standard MIME type of the source data.
+ },
+ },
+ ],
+ "response": { # Required. The function response in JSON object format. Use "output" key to specify function output and "error" key to specify error details (if any). If "output" and "error" keys are not specified, then whole "response" is treated as function output.
+ "a_key": "", # Properties of the object.
+ },
+ "scheduling": "A String", # Optional. Specifies how the response should be scheduled in the conversation. Only applicable to NON_BLOCKING function calls, is ignored otherwise. Defaults to WHEN_IDLE.
+ },
+ "inlineData": { # A content blob. A Blob contains data of a specific media type. It is used to represent images, audio, and video. # Optional. The inline data content of the part. This can be used to include images, audio, or video in a request.
+ "data": "A String", # Required. The raw bytes of the data.
+ "displayName": "A String", # Optional. The display name of the blob. Used to provide a label or filename to distinguish blobs. This field is only returned in `PromptMessage` for prompt management. It is used in the Gemini calls only when server-side tools (`code_execution`, `google_search`, and `url_context`) are enabled.
+ "mimeType": "A String", # Required. The IANA standard MIME type of the source data.
+ },
+ "mediaResolution": { # per part media resolution. Media resolution for the input media. # per part media resolution. Media resolution for the input media.
+ "level": "A String", # The tokenization quality used for given media.
+ },
+ "speechMetadata": { # Structured Metadata Sub-Message for Part # Optional. Turn-level metadata for speech generation (e.g. Daikon speaker/style). May be set alongside `text` to attach speaker and style information to a text part.
+ "speaker": "A String", # Optional. Identifies which speaker is speaking this turn.
+ "style": "A String", # Optional. Natural language description of the vocal style (e.g., "cheerful").
+ },
+ "text": "A String", # Optional. The text content of the part. When sent from the VSCode Gemini Code Assist extension, references to @mentioned items will be converted to markdown boldface text. For example `@my-repo` will be converted to and sent as `**my-repo**` by the IDE agent.
+ "thought": True or False, # Optional. Indicates whether the `part` represents the model's thought process or reasoning.
+ "thoughtSignature": "A String", # Optional. An opaque signature for the thought so it can be reused in subsequent requests.
+ "videoMetadata": { # Provides metadata for a video, including the start and end offsets for clipping and the frame rate. # Optional. Video metadata. The metadata should only be specified while the video data is presented in inline_data or file_data.
+ "endOffset": "A String", # Optional. The end offset of the video.
+ "fps": 3.14, # Optional. The frame rate of the video sent to the model. If not specified, the default value is 1.0. The valid range is (0.0, 24.0].
+ "startOffset": "A String", # Optional. The start offset of the video.
+ },
+ },
+ ],
+ "role": "A String", # Optional. The producer of the content. Must be either 'user' or 'model'. If not set, the service will default to 'user'.
+ },
+ "embedContentConfig": { # Configurations for the EmbedContent API. # Optional. Configuration for the EmbedContent request.
+ "audioTrackExtraction": True or False, # Optional. Whether to extract audio from video content.
+ "autoTruncate": True or False, # Optional. Whether to silently truncate the input content if it's longer than the maximum sequence length. Only applicable to text-only embedding models.
+ "documentOcr": True or False, # Optional. Whether to enable OCR for document content.
+ "outputDimensionality": 42, # Optional. Reduced dimension for the output embedding. If set, excessive values in the output embedding are truncated from the end.
+ "taskType": "A String", # Optional. The task type of the embedding. Only applicable to text-only embedding models.
+ "title": "A String", # Optional. The title for the text. Only applicable to text-only embedding models.
+ },
+ "model": "A String", # Required. The name of the publisher model requested to serve the prediction. Format: `projects/{project}/locations/{location}/publishers/*/models/*`
+ "outputDimensionality": 42, # Optional. Deprecated: Please use EmbedContentConfig.output_dimensionality instead. Reduced dimension for the output embedding. If set, excessive values in the output embedding are truncated from the end.
+ "taskType": "A String", # Optional. Deprecated: Please use EmbedContentConfig.task_type instead. The task type of the embedding.
+ "title": "A String", # Optional. Deprecated: Please use EmbedContentConfig.title instead. The title for the text.
+ },
+ ],
+}
+
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Response message for PredictionService.BatchEmbedContents.
+ "embeddings": [ # The embeddings for each request, in the same order as provided in the batch request.
+ { # A list of floats representing an embedding.
+ "values": [ # Embedding vector values.
+ 3.14,
+ ],
+ },
+ ],
+ "usageMetadata": { # Usage metadata about the content generation request and response. This message provides a detailed breakdown of token usage and other relevant metrics. # Usage metadata about the response(s).
+ "cacheTokensDetails": [ # Output only. A detailed breakdown of the token count for each modality in the cached content.
+ { # Represents a breakdown of token usage by modality. This message is used in CountTokensResponse and GenerateContentResponse.UsageMetadata to provide a detailed view of how many tokens are used by each modality (e.g., text, image, video) in a request. This is particularly useful for multimodal models, allowing you to track and manage token consumption for billing and quota purposes.
+ "modality": "A String", # The modality that this token count applies to.
+ "tokenCount": 42, # The number of tokens counted for this modality.
+ },
+ ],
+ "cachedContentTokenCount": 42, # Output only. The number of tokens in the cached content that was used for this request.
+ "candidatesTokenCount": 42, # The total number of tokens in the generated candidates.
+ "candidatesTokensDetails": [ # Output only. A detailed breakdown of the token count for each modality in the generated candidates.
+ { # Represents a breakdown of token usage by modality. This message is used in CountTokensResponse and GenerateContentResponse.UsageMetadata to provide a detailed view of how many tokens are used by each modality (e.g., text, image, video) in a request. This is particularly useful for multimodal models, allowing you to track and manage token consumption for billing and quota purposes.
+ "modality": "A String", # The modality that this token count applies to.
+ "tokenCount": 42, # The number of tokens counted for this modality.
+ },
+ ],
+ "promptTokenCount": 42, # The total number of tokens in the prompt. This includes any text, images, or other media provided in the request. When `cached_content` is set, this also includes the number of tokens in the cached content.
+ "promptTokensDetails": [ # Output only. A detailed breakdown of the token count for each modality in the prompt.
+ { # Represents a breakdown of token usage by modality. This message is used in CountTokensResponse and GenerateContentResponse.UsageMetadata to provide a detailed view of how many tokens are used by each modality (e.g., text, image, video) in a request. This is particularly useful for multimodal models, allowing you to track and manage token consumption for billing and quota purposes.
+ "modality": "A String", # The modality that this token count applies to.
+ "tokenCount": 42, # The number of tokens counted for this modality.
+ },
+ ],
+ "thoughtsTokenCount": 42, # Output only. The number of tokens that were part of the model's generated "thoughts" output, if applicable.
+ "toolUsePromptTokenCount": 42, # Output only. The number of tokens in the results from tool executions, which are provided back to the model as input, if applicable.
+ "toolUsePromptTokensDetails": [ # Output only. A detailed breakdown by modality of the token counts from the results of tool executions, which are provided back to the model as input.
+ { # Represents a breakdown of token usage by modality. This message is used in CountTokensResponse and GenerateContentResponse.UsageMetadata to provide a detailed view of how many tokens are used by each modality (e.g., text, image, video) in a request. This is particularly useful for multimodal models, allowing you to track and manage token consumption for billing and quota purposes.
+ "modality": "A String", # The modality that this token count applies to.
+ "tokenCount": 42, # The number of tokens counted for this modality.
+ },
+ ],
+ "totalTokenCount": 42, # The total number of tokens for the entire request. This is the sum of `prompt_token_count`, `candidates_token_count`, `tool_use_prompt_token_count`, and `thoughts_token_count`.
+ "trafficType": "A String", # Output only. The traffic type for this request.
+ },
+}
+
+
close()
Close httplib2 connections.
@@ -993,6 +1170,7 @@ Method Details
"taskType": "A String", # Optional. The task type of the embedding. Only applicable to text-only embedding models.
"title": "A String", # Optional. The title for the text. Only applicable to text-only embedding models.
},
+ "model": "A String", # Required. The name of the publisher model requested to serve the prediction. Format: `projects/{project}/locations/{location}/publishers/*/models/*`
"outputDimensionality": 42, # Optional. Deprecated: Please use EmbedContentConfig.output_dimensionality instead. Reduced dimension for the output embedding. If set, excessive values in the output embedding are truncated from the end.
"taskType": "A String", # Optional. Deprecated: Please use EmbedContentConfig.task_type instead. The task type of the embedding.
"title": "A String", # Optional. Deprecated: Please use EmbedContentConfig.title instead. The title for the text.
@@ -1197,6 +1375,7 @@ Method Details
"role": "A String", # Optional. The producer of the content. Must be either 'user' or 'model'. If not set, the service will default to 'user'.
},
],
+ "continuationToken": "A String", # Optional. An opaque continuation token used to resume generation from a previous `GenerateContent` or `StreamGenerateContent` response that stopped with `finish_reason` set to `CONTINUATION`.
"generationConfig": { # Configuration for content generation. This message contains all the parameters that control how the model generates content. It allows you to influence the randomness, length, and structure of the output. # Optional. Generation config.
"audioTimestamp": True or False, # Optional. If enabled, audio timestamps will be included in the request to the model. This can be useful for synchronizing audio with other modalities in the response.
"audioTranscriptionConfig": { # Configuration for speech recognition (transcription). # Optional. Configuration for audio transcription (speech recognition).
@@ -1371,6 +1550,9 @@ Method Details
"promptTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for prompt screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the user's prompt for safety and security risks before it is sent to the model. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
"responseTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for response screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the model's response for safety and security risks before it is returned to the user. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
},
+ "outputConfig": { # Configuration for persisting output assets to external storage. # Optional. Configuration for persisting output assets to external storage.
+ "outputUriPrefix": "A String", # Optional. The Cloud Storage URI prefix or directory where generated media assets should be written (e.g. `gs://my-bucket/prefix/`). Supported URI schemes: `gs://`. When set, media bytes are written directly to this location and returned as `FileData` with a `file_uri` instead of raw inline bytes.
+ },
"safetySettings": [ # Optional. Per request settings for blocking unsafe content. Enforced on GenerateContentResponse.candidates.
{ # A safety setting that affects the safety-blocking behavior. A SafetySetting consists of a harm category and a threshold for that category.
"category": "A String", # Required. The harm category to be blocked.
@@ -2459,6 +2641,7 @@ Method Details
"role": "A String", # Optional. The producer of the content. Must be either 'user' or 'model'. If not set, the service will default to 'user'.
},
],
+ "continuationToken": "A String", # Optional. An opaque continuation token used to resume generation from a previous `GenerateContent` or `StreamGenerateContent` response that stopped with `finish_reason` set to `CONTINUATION`.
"generationConfig": { # Configuration for content generation. This message contains all the parameters that control how the model generates content. It allows you to influence the randomness, length, and structure of the output. # Optional. Generation config.
"audioTimestamp": True or False, # Optional. If enabled, audio timestamps will be included in the request to the model. This can be useful for synchronizing audio with other modalities in the response.
"audioTranscriptionConfig": { # Configuration for speech recognition (transcription). # Optional. Configuration for audio transcription (speech recognition).
@@ -2633,6 +2816,9 @@ Method Details
"promptTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for prompt screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the user's prompt for safety and security risks before it is sent to the model. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
"responseTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for response screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the model's response for safety and security risks before it is returned to the user. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
},
+ "outputConfig": { # Configuration for persisting output assets to external storage. # Optional. Configuration for persisting output assets to external storage.
+ "outputUriPrefix": "A String", # Optional. The Cloud Storage URI prefix or directory where generated media assets should be written (e.g. `gs://my-bucket/prefix/`). Supported URI schemes: `gs://`. When set, media bytes are written directly to this location and returned as `FileData` with a `file_uri` instead of raw inline bytes.
+ },
"safetySettings": [ # Optional. Per request settings for blocking unsafe content. Enforced on GenerateContentResponse.candidates.
{ # A safety setting that affects the safety-blocking behavior. A SafetySetting consists of a harm category and a threshold for that category.
"category": "A String", # Required. The harm category to be blocked.
diff --git a/docs/dyn/aiplatform_v1.publishers.models.html b/docs/dyn/aiplatform_v1.publishers.models.html
index bf1edea159..ed91274cb2 100644
--- a/docs/dyn/aiplatform_v1.publishers.models.html
+++ b/docs/dyn/aiplatform_v1.publishers.models.html
@@ -1015,6 +1015,7 @@ Method Details
"role": "A String", # Optional. The producer of the content. Must be either 'user' or 'model'. If not set, the service will default to 'user'.
},
],
+ "continuationToken": "A String", # Optional. An opaque continuation token used to resume generation from a previous `GenerateContent` or `StreamGenerateContent` response that stopped with `finish_reason` set to `CONTINUATION`.
"generationConfig": { # Configuration for content generation. This message contains all the parameters that control how the model generates content. It allows you to influence the randomness, length, and structure of the output. # Optional. Generation config.
"audioTimestamp": True or False, # Optional. If enabled, audio timestamps will be included in the request to the model. This can be useful for synchronizing audio with other modalities in the response.
"audioTranscriptionConfig": { # Configuration for speech recognition (transcription). # Optional. Configuration for audio transcription (speech recognition).
@@ -1189,6 +1190,9 @@ Method Details
"promptTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for prompt screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the user's prompt for safety and security risks before it is sent to the model. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
"responseTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for response screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the model's response for safety and security risks before it is returned to the user. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
},
+ "outputConfig": { # Configuration for persisting output assets to external storage. # Optional. Configuration for persisting output assets to external storage.
+ "outputUriPrefix": "A String", # Optional. The Cloud Storage URI prefix or directory where generated media assets should be written (e.g. `gs://my-bucket/prefix/`). Supported URI schemes: `gs://`. When set, media bytes are written directly to this location and returned as `FileData` with a `file_uri` instead of raw inline bytes.
+ },
"safetySettings": [ # Optional. Per request settings for blocking unsafe content. Enforced on GenerateContentResponse.candidates.
{ # A safety setting that affects the safety-blocking behavior. A SafetySetting consists of a harm category and a threshold for that category.
"category": "A String", # Required. The harm category to be blocked.
@@ -2624,6 +2628,7 @@ Method Details
"role": "A String", # Optional. The producer of the content. Must be either 'user' or 'model'. If not set, the service will default to 'user'.
},
],
+ "continuationToken": "A String", # Optional. An opaque continuation token used to resume generation from a previous `GenerateContent` or `StreamGenerateContent` response that stopped with `finish_reason` set to `CONTINUATION`.
"generationConfig": { # Configuration for content generation. This message contains all the parameters that control how the model generates content. It allows you to influence the randomness, length, and structure of the output. # Optional. Generation config.
"audioTimestamp": True or False, # Optional. If enabled, audio timestamps will be included in the request to the model. This can be useful for synchronizing audio with other modalities in the response.
"audioTranscriptionConfig": { # Configuration for speech recognition (transcription). # Optional. Configuration for audio transcription (speech recognition).
@@ -2798,6 +2803,9 @@ Method Details
"promptTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for prompt screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the user's prompt for safety and security risks before it is sent to the model. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
"responseTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for response screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the model's response for safety and security risks before it is returned to the user. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
},
+ "outputConfig": { # Configuration for persisting output assets to external storage. # Optional. Configuration for persisting output assets to external storage.
+ "outputUriPrefix": "A String", # Optional. The Cloud Storage URI prefix or directory where generated media assets should be written (e.g. `gs://my-bucket/prefix/`). Supported URI schemes: `gs://`. When set, media bytes are written directly to this location and returned as `FileData` with a `file_uri` instead of raw inline bytes.
+ },
"safetySettings": [ # Optional. Per request settings for blocking unsafe content. Enforced on GenerateContentResponse.candidates.
{ # A safety setting that affects the safety-blocking behavior. A SafetySetting consists of a harm category and a threshold for that category.
"category": "A String", # Required. The harm category to be blocked.
diff --git a/docs/dyn/aiplatform_v1beta1.endpoints.html b/docs/dyn/aiplatform_v1beta1.endpoints.html
index 7eb2480da8..e62d3a45a2 100644
--- a/docs/dyn/aiplatform_v1beta1.endpoints.html
+++ b/docs/dyn/aiplatform_v1beta1.endpoints.html
@@ -1214,6 +1214,9 @@ Method Details
"promptTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for prompt screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the user's prompt for safety and security risks before it is sent to the model. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
"responseTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for response screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the model's response for safety and security risks before it is returned to the user. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
},
+ "outputConfig": { # Configuration for persisting output assets to external storage. # Optional. Configuration for persisting output assets to external storage.
+ "outputUriPrefix": "A String", # Optional. The Cloud Storage URI prefix or directory where generated media assets should be written (e.g. `gs://my-bucket/prefix/`). Supported URI schemes: `gs://`. When set, media bytes are written directly to this location and returned as `FileData` with a `file_uri` instead of raw inline bytes.
+ },
"safetySettings": [ # Optional. Per request settings for blocking unsafe content. Enforced on GenerateContentResponse.candidates.
{ # A safety setting that affects the safety-blocking behavior. A SafetySetting consists of a harm category and a threshold for that category.
"category": "A String", # Required. The harm category to be blocked.
@@ -2262,6 +2265,9 @@ Method Details
"promptTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for prompt screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the user's prompt for safety and security risks before it is sent to the model. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
"responseTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for response screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the model's response for safety and security risks before it is returned to the user. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
},
+ "outputConfig": { # Configuration for persisting output assets to external storage. # Optional. Configuration for persisting output assets to external storage.
+ "outputUriPrefix": "A String", # Optional. The Cloud Storage URI prefix or directory where generated media assets should be written (e.g. `gs://my-bucket/prefix/`). Supported URI schemes: `gs://`. When set, media bytes are written directly to this location and returned as `FileData` with a `file_uri` instead of raw inline bytes.
+ },
"safetySettings": [ # Optional. Per request settings for blocking unsafe content. Enforced on GenerateContentResponse.candidates.
{ # A safety setting that affects the safety-blocking behavior. A SafetySetting consists of a harm category and a threshold for that category.
"category": "A String", # Required. The harm category to be blocked.
diff --git a/docs/dyn/aiplatform_v1beta1.html b/docs/dyn/aiplatform_v1beta1.html
index 8f66369dfb..258eec4a09 100644
--- a/docs/dyn/aiplatform_v1beta1.html
+++ b/docs/dyn/aiplatform_v1beta1.html
@@ -139,11 +139,6 @@ Instance Methods
Returns the evaluationSets Resource.
-
-Returns the evaluationTasks Resource.
-
diff --git a/docs/dyn/aiplatform_v1beta1.interactions.html b/docs/dyn/aiplatform_v1beta1.interactions.html
index 7bac20a2ec..403384c341 100644
--- a/docs/dyn/aiplatform_v1beta1.interactions.html
+++ b/docs/dyn/aiplatform_v1beta1.interactions.html
@@ -324,7 +324,6 @@ Method Details
"uri": "A String", # The URI of the video.
},
},
- "continuationToken": "A String", # Opaque token to resume a long decode. Output: set when status is INCOMPLETE and decoding can be resumed. Input: pass the latest token back unchanged in CreateInteraction to continue decoding.
"created": "A String", # Required. Output only. The time at which the response was created in ISO 8601 format (YYYY-MM-DDThh:mm:ssZ).
"envId": "A String", # The environment ID for the interaction. Can be 'remote' for default environment.
"environmentId": "A String", # Output only. The environment ID for the interaction. Only populated if environment config is set in the request.
@@ -2894,7 +2893,6 @@ Method Details
"uri": "A String", # The URI of the video.
},
},
- "continuationToken": "A String", # Opaque token to resume a long decode. Output: set when status is INCOMPLETE and decoding can be resumed. Input: pass the latest token back unchanged in CreateInteraction to continue decoding.
"created": "A String", # Required. Output only. The time at which the response was created in ISO 8601 format (YYYY-MM-DDThh:mm:ssZ).
"envId": "A String", # The environment ID for the interaction. Can be 'remote' for default environment.
"environmentId": "A String", # Output only. The environment ID for the interaction. Only populated if environment config is set in the request.
@@ -5468,7 +5466,6 @@ Method Details
"uri": "A String", # The URI of the video.
},
},
- "continuationToken": "A String", # Opaque token to resume a long decode. Output: set when status is INCOMPLETE and decoding can be resumed. Input: pass the latest token back unchanged in CreateInteraction to continue decoding.
"created": "A String", # Required. Output only. The time at which the response was created in ISO 8601 format (YYYY-MM-DDThh:mm:ssZ).
"envId": "A String", # The environment ID for the interaction. Can be 'remote' for default environment.
"environmentId": "A String", # Output only. The environment ID for the interaction. Only populated if environment config is set in the request.
@@ -8016,7 +8013,6 @@ Method Details
"uri": "A String", # The URI of the video.
},
},
- "continuationToken": "A String", # Opaque token to resume a long decode. Output: set when status is INCOMPLETE and decoding can be resumed. Input: pass the latest token back unchanged in CreateInteraction to continue decoding.
"created": "A String", # Required. Output only. The time at which the response was created in ISO 8601 format (YYYY-MM-DDThh:mm:ssZ).
"envId": "A String", # The environment ID for the interaction. Can be 'remote' for default environment.
"environmentId": "A String", # Output only. The environment ID for the interaction. Only populated if environment config is set in the request.
diff --git a/docs/dyn/aiplatform_v1beta1.projects.locations.agents.html b/docs/dyn/aiplatform_v1beta1.projects.locations.agents.html
index 894ea8144a..0c9e5be627 100644
--- a/docs/dyn/aiplatform_v1beta1.projects.locations.agents.html
+++ b/docs/dyn/aiplatform_v1beta1.projects.locations.agents.html
@@ -83,7 +83,7 @@ Instance Methods
close()
Close httplib2 connections.
- create(parent, body=None, x__xgafv=None)
+ create(parent, body=None, idpNonce=None, x__xgafv=None)
Creates an agent.
delete(name, force=None, x__xgafv=None)
@@ -116,7 +116,7 @@ Method Details
- create(parent, body=None, x__xgafv=None)
+ create(parent, body=None, idpNonce=None, x__xgafv=None)
Creates an agent.
Args:
@@ -125,6 +125,7 @@ Method Details
The object takes the form of:
{ # A Vertex agent contains instructions and configurations for the LLM to execute a certain task.
+ "aiApplication": "A String", # Output only. The resource name of the AI Application provisioned for this agent. Format: `projects/{project}/locations/{location}/aiApplications/{ai_application}`.
"base_agent": "A String", # Required. Immutable. The base agent for the agent. Supported values: * `antigravity-preview-05-2026` Immutable: `UpdateAgent` rejects a change, including clearing it. The kind of agent this is gets derived from this field when the agent is created and is recorded then; nothing recomputes it afterwards, so a later change would leave the agent described as one kind and behaving as another. Create a new agent instead.
"base_environment": "", # Optional. The base environment configuration for the agent. Valid types: * A string value for the environment ID, or `remote` for the default. * A struct value for the `environment_config`.
"created": "A String", # Output only. The time the agent was created.
@@ -158,6 +159,7 @@ Method Details
"updated": "A String", # Output only. The time the agent was last updated.
}
+ idpNonce: string, Optional. Optional. One-time cryptographic nonce issued by the trusted IdP provisioning iframe for session and device non-repudiation.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -238,6 +240,7 @@ Method Details
An object of the form:
{ # A Vertex agent contains instructions and configurations for the LLM to execute a certain task.
+ "aiApplication": "A String", # Output only. The resource name of the AI Application provisioned for this agent. Format: `projects/{project}/locations/{location}/aiApplications/{ai_application}`.
"base_agent": "A String", # Required. Immutable. The base agent for the agent. Supported values: * `antigravity-preview-05-2026` Immutable: `UpdateAgent` rejects a change, including clearing it. The kind of agent this is gets derived from this field when the agent is created and is recorded then; nothing recomputes it afterwards, so a later change would leave the agent described as one kind and behaving as another. Create a new agent instead.
"base_environment": "", # Optional. The base environment configuration for the agent. Valid types: * A string value for the environment ID, or `remote` for the default. * A struct value for the `environment_config`.
"created": "A String", # Output only. The time the agent was created.
@@ -328,6 +331,7 @@ Method Details
{ # Response message for AgentService.ListAgents.
"agents": [ # The agents matching the request.
{ # A Vertex agent contains instructions and configurations for the LLM to execute a certain task.
+ "aiApplication": "A String", # Output only. The resource name of the AI Application provisioned for this agent. Format: `projects/{project}/locations/{location}/aiApplications/{ai_application}`.
"base_agent": "A String", # Required. Immutable. The base agent for the agent. Supported values: * `antigravity-preview-05-2026` Immutable: `UpdateAgent` rejects a change, including clearing it. The kind of agent this is gets derived from this field when the agent is created and is recorded then; nothing recomputes it afterwards, so a later change would leave the agent described as one kind and behaving as another. Create a new agent instead.
"base_environment": "", # Optional. The base environment configuration for the agent. Valid types: * A string value for the environment ID, or `remote` for the default. * A struct value for the `environment_config`.
"created": "A String", # Output only. The time the agent was created.
@@ -389,6 +393,7 @@ Method Details
The object takes the form of:
{ # A Vertex agent contains instructions and configurations for the LLM to execute a certain task.
+ "aiApplication": "A String", # Output only. The resource name of the AI Application provisioned for this agent. Format: `projects/{project}/locations/{location}/aiApplications/{ai_application}`.
"base_agent": "A String", # Required. Immutable. The base agent for the agent. Supported values: * `antigravity-preview-05-2026` Immutable: `UpdateAgent` rejects a change, including clearing it. The kind of agent this is gets derived from this field when the agent is created and is recorded then; nothing recomputes it afterwards, so a later change would leave the agent described as one kind and behaving as another. Create a new agent instead.
"base_environment": "", # Optional. The base environment configuration for the agent. Valid types: * A string value for the environment ID, or `remote` for the default. * A struct value for the `environment_config`.
"created": "A String", # Output only. The time the agent was created.
diff --git a/docs/dyn/aiplatform_v1beta1.projects.locations.endpoints.html b/docs/dyn/aiplatform_v1beta1.projects.locations.endpoints.html
index 29eb2ff4d7..0695c9231b 100644
--- a/docs/dyn/aiplatform_v1beta1.projects.locations.endpoints.html
+++ b/docs/dyn/aiplatform_v1beta1.projects.locations.endpoints.html
@@ -2406,6 +2406,9 @@ Method Details
"promptTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for prompt screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the user's prompt for safety and security risks before it is sent to the model. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
"responseTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for response screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the model's response for safety and security risks before it is returned to the user. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
},
+ "outputConfig": { # Configuration for persisting output assets to external storage. # Optional. Configuration for persisting output assets to external storage.
+ "outputUriPrefix": "A String", # Optional. The Cloud Storage URI prefix or directory where generated media assets should be written (e.g. `gs://my-bucket/prefix/`). Supported URI schemes: `gs://`. When set, media bytes are written directly to this location and returned as `FileData` with a `file_uri` instead of raw inline bytes.
+ },
"safetySettings": [ # Optional. Per request settings for blocking unsafe content. Enforced on GenerateContentResponse.candidates.
{ # A safety setting that affects the safety-blocking behavior. A SafetySetting consists of a harm category and a threshold for that category.
"category": "A String", # Required. The harm category to be blocked.
@@ -5279,6 +5282,9 @@ Method Details
"promptTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for prompt screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the user's prompt for safety and security risks before it is sent to the model. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
"responseTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for response screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the model's response for safety and security risks before it is returned to the user. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
},
+ "outputConfig": { # Configuration for persisting output assets to external storage. # Optional. Configuration for persisting output assets to external storage.
+ "outputUriPrefix": "A String", # Optional. The Cloud Storage URI prefix or directory where generated media assets should be written (e.g. `gs://my-bucket/prefix/`). Supported URI schemes: `gs://`. When set, media bytes are written directly to this location and returned as `FileData` with a `file_uri` instead of raw inline bytes.
+ },
"safetySettings": [ # Optional. Per request settings for blocking unsafe content. Enforced on GenerateContentResponse.candidates.
{ # A safety setting that affects the safety-blocking behavior. A SafetySetting consists of a harm category and a threshold for that category.
"category": "A String", # Required. The harm category to be blocked.
diff --git a/docs/dyn/aiplatform_v1beta1.projects.locations.html b/docs/dyn/aiplatform_v1beta1.projects.locations.html
index b930541798..b38d8c4202 100644
--- a/docs/dyn/aiplatform_v1beta1.projects.locations.html
+++ b/docs/dyn/aiplatform_v1beta1.projects.locations.html
@@ -154,11 +154,6 @@ Instance Methods
Returns the evaluationSets Resource.
-
-Returns the evaluationTasks Resource.
-
diff --git a/docs/dyn/aiplatform_v1beta1.projects.locations.interactions.html b/docs/dyn/aiplatform_v1beta1.projects.locations.interactions.html
index 13235c71fe..554284553a 100644
--- a/docs/dyn/aiplatform_v1beta1.projects.locations.interactions.html
+++ b/docs/dyn/aiplatform_v1beta1.projects.locations.interactions.html
@@ -327,7 +327,6 @@ Method Details
"uri": "A String", # The URI of the video.
},
},
- "continuationToken": "A String", # Opaque token to resume a long decode. Output: set when status is INCOMPLETE and decoding can be resumed. Input: pass the latest token back unchanged in CreateInteraction to continue decoding.
"created": "A String", # Required. Output only. The time at which the response was created in ISO 8601 format (YYYY-MM-DDThh:mm:ssZ).
"envId": "A String", # The environment ID for the interaction. Can be 'remote' for default environment.
"environmentId": "A String", # Output only. The environment ID for the interaction. Only populated if environment config is set in the request.
@@ -2885,7 +2884,6 @@ Method Details
"uri": "A String", # The URI of the video.
},
},
- "continuationToken": "A String", # Opaque token to resume a long decode. Output: set when status is INCOMPLETE and decoding can be resumed. Input: pass the latest token back unchanged in CreateInteraction to continue decoding.
"created": "A String", # Required. Output only. The time at which the response was created in ISO 8601 format (YYYY-MM-DDThh:mm:ssZ).
"envId": "A String", # The environment ID for the interaction. Can be 'remote' for default environment.
"environmentId": "A String", # Output only. The environment ID for the interaction. Only populated if environment config is set in the request.
@@ -5445,7 +5443,6 @@ Method Details
"uri": "A String", # The URI of the video.
},
},
- "continuationToken": "A String", # Opaque token to resume a long decode. Output: set when status is INCOMPLETE and decoding can be resumed. Input: pass the latest token back unchanged in CreateInteraction to continue decoding.
"created": "A String", # Required. Output only. The time at which the response was created in ISO 8601 format (YYYY-MM-DDThh:mm:ssZ).
"envId": "A String", # The environment ID for the interaction. Can be 'remote' for default environment.
"environmentId": "A String", # Output only. The environment ID for the interaction. Only populated if environment config is set in the request.
@@ -8012,7 +8009,6 @@ Method Details
"uri": "A String", # The URI of the video.
},
},
- "continuationToken": "A String", # Opaque token to resume a long decode. Output: set when status is INCOMPLETE and decoding can be resumed. Input: pass the latest token back unchanged in CreateInteraction to continue decoding.
"created": "A String", # Required. Output only. The time at which the response was created in ISO 8601 format (YYYY-MM-DDThh:mm:ssZ).
"envId": "A String", # The environment ID for the interaction. Can be 'remote' for default environment.
"environmentId": "A String", # Output only. The environment ID for the interaction. Only populated if environment config is set in the request.
@@ -10560,7 +10556,6 @@ Method Details
"uri": "A String", # The URI of the video.
},
},
- "continuationToken": "A String", # Opaque token to resume a long decode. Output: set when status is INCOMPLETE and decoding can be resumed. Input: pass the latest token back unchanged in CreateInteraction to continue decoding.
"created": "A String", # Required. Output only. The time at which the response was created in ISO 8601 format (YYYY-MM-DDThh:mm:ssZ).
"envId": "A String", # The environment ID for the interaction. Can be 'remote' for default environment.
"environmentId": "A String", # Output only. The environment ID for the interaction. Only populated if environment config is set in the request.
diff --git a/docs/dyn/aiplatform_v1beta1.projects.locations.publishers.files.html b/docs/dyn/aiplatform_v1beta1.projects.locations.publishers.files.html
new file mode 100644
index 0000000000..8d3ecdf190
--- /dev/null
+++ b/docs/dyn/aiplatform_v1beta1.projects.locations.publishers.files.html
@@ -0,0 +1,255 @@
+
+
+
+Agent Platform API . projects . locations . publishers . files
+Instance Methods
+
+ close()
+Close httplib2 connections.
+
+Deletes the given file. Returns the deleted file's ID rather than an empty body. See `DeleteFileResponse`.
+
+ download(name, x__xgafv=None)
+Downloads the contents of the given file. Only files marked `downloadable` can be retrieved this way; user-uploaded files are not downloadable.
+
+ download_media(name, x__xgafv=None)
+Downloads the contents of the given file. Only files marked `downloadable` can be retrieved this way; user-uploaded files are not downloadable.
+
+Gets the metadata for the given file.
+
+ list(parent, publishersId, ids=None, limit=None, page=None, x__xgafv=None)
+Lists the files owned by the requesting project and location. Supports two mutually exclusive modes: paginated listing via an opaque `page` cursor, or batch fetch by `ids`. See `ListFilesRequest`.
+
+ upload(parent, publishersId, body=None, media_body=None, media_mime_type=None, x__xgafv=None)
+Uploads a file that can be referenced by ID from subsequent Claude model requests.
+Method Details
+
+ close()
+ Close httplib2 connections.
+
+
+
+ delete(name, x__xgafv=None)
+ Deletes the given file. Returns the deleted file's ID rather than an empty body. See `DeleteFileResponse`.
+
+Args:
+ name: string, Required. The name of the file to delete. Format: `projects/{project}/locations/{location}/publishers/{publisher}/files/{file}` (required)
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Response message for ClaudeFileService.DeleteFile. Returns `{id, type: "file_deleted"}` rather than an empty body, matching the Claude Files API.
+ "id": "A String", # The ID of the deleted file.
+ "type": "A String", # The object type. Always `file_deleted`.
+}
+
+
+
+ download(name, x__xgafv=None)
+ Downloads the contents of the given file. Only files marked `downloadable` can be retrieved this way; user-uploaded files are not downloadable.
+
+Args:
+ name: string, Required. The name of the file to download. Format: `projects/{project}/locations/{location}/publishers/{publisher}/files/{file}` (required)
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Response message for ClaudeFileService.DownloadFile.
+}
+
+
+
+ download_media(name, x__xgafv=None)
+ Downloads the contents of the given file. Only files marked `downloadable` can be retrieved this way; user-uploaded files are not downloadable.
+
+Args:
+ name: string, Required. The name of the file to download. Format: `projects/{project}/locations/{location}/publishers/{publisher}/files/{file}` (required)
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ The media object as a string.
+
+
+
+
+
+ get(name, x__xgafv=None)
+ Gets the metadata for the given file.
+
+Args:
+ name: string, Required. The name of the file to get. Format: `projects/{project}/locations/{location}/publishers/{publisher}/files/{file}` (required)
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # A file that can be referenced by ID from subsequent Claude model requests. The JSON representation of this message matches the Claude Files API File object field-for-field, so that code written against that API parses these responses unchanged.
+ "created_at": "A String", # Output only. The time at which the file was created.
+ "downloadable": True or False, # Output only. Whether the contents of this file can be retrieved with `DownloadFile`. False for user-uploaded files, true for tool-generated ones.
+ "expires_at": "A String", # Output only. The time at which the file expires and is deleted, set from the `expires_in_seconds` upload form field. Unset for files that do not expire, which is serialised as `null`.
+ "filename": "A String", # Output only. The original name of the uploaded file, taken from the `Content-Disposition` header on upload. Between 1 and 255 characters. Control characters and the characters `<>:"|?*\/` are not accepted.
+ "id": "A String", # Output only. The server-assigned identifier of the file, for example `file_abc123`. This is the ID to pass in subsequent model requests.
+ "mime_type": "A String", # Output only. The media type of the file, taken from the `Content-Type` header of the file part on upload.
+ "size_bytes": 42, # Output only. The size of the file in bytes.
+ "type": "A String", # Output only. The object type. Always `file`.
+}
+
+
+
+ list(parent, publishersId, ids=None, limit=None, page=None, x__xgafv=None)
+ Lists the files owned by the requesting project and location. Supports two mutually exclusive modes: paginated listing via an opaque `page` cursor, or batch fetch by `ids`. See `ListFilesRequest`.
+
+Args:
+ parent: string, Required. The location to list files under. Format: `projects/{project}/locations/{location}` (required)
+ publishersId: string, A parameter (required)
+ ids: string, Optional. Batch fetch: return only these files, up to 100 IDs after de-duplication. Mutually exclusive with both `page` and `limit`. Serialised as a repeated `ids` query parameter, one occurrence per ID. (repeated)
+ limit: integer, Optional. The number of files to return per page. Defaults to 20 if unset, maximum 1000. Mutually exclusive with `ids`.
+ page: string, Optional. Opaque pagination cursor. Pass the previous response's `next_page` to fetch the next page. Mutually exclusive with `ids`.
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Response message for ClaudeFileService.ListFiles.
+ "data": [ # The files.
+ { # A file that can be referenced by ID from subsequent Claude model requests. The JSON representation of this message matches the Claude Files API File object field-for-field, so that code written against that API parses these responses unchanged.
+ "created_at": "A String", # Output only. The time at which the file was created.
+ "downloadable": True or False, # Output only. Whether the contents of this file can be retrieved with `DownloadFile`. False for user-uploaded files, true for tool-generated ones.
+ "expires_at": "A String", # Output only. The time at which the file expires and is deleted, set from the `expires_in_seconds` upload form field. Unset for files that do not expire, which is serialised as `null`.
+ "filename": "A String", # Output only. The original name of the uploaded file, taken from the `Content-Disposition` header on upload. Between 1 and 255 characters. Control characters and the characters `<>:"|?*\/` are not accepted.
+ "id": "A String", # Output only. The server-assigned identifier of the file, for example `file_abc123`. This is the ID to pass in subsequent model requests.
+ "mime_type": "A String", # Output only. The media type of the file, taken from the `Content-Type` header of the file part on upload.
+ "size_bytes": 42, # Output only. The size of the file in bytes.
+ "type": "A String", # Output only. The object type. Always `file`.
+ },
+ ],
+ "next_page": "A String", # Opaque cursor for the next page. Unset on the last page, and always unset when `ids` was supplied, since batch fetch is single-page.
+}
+
+
+
+ upload(parent, publishersId, body=None, media_body=None, media_mime_type=None, x__xgafv=None)
+ Uploads a file that can be referenced by ID from subsequent Claude model requests.
+
+Args:
+ parent: string, Required. The location to create the file under. Format: `projects/{project}/locations/{location}` (required)
+ publishersId: string, A parameter (required)
+ body: object, The request body.
+ The object takes the form of:
+
+{ # Request message for ClaudeFileService.CreateFile.
+}
+
+ media_body: string, The filename of the media request body, or an instance of a MediaUpload object.
+ media_mime_type: string, The MIME type of the media request body, or an instance of a MediaUpload object.
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # A file that can be referenced by ID from subsequent Claude model requests. The JSON representation of this message matches the Claude Files API File object field-for-field, so that code written against that API parses these responses unchanged.
+ "created_at": "A String", # Output only. The time at which the file was created.
+ "downloadable": True or False, # Output only. Whether the contents of this file can be retrieved with `DownloadFile`. False for user-uploaded files, true for tool-generated ones.
+ "expires_at": "A String", # Output only. The time at which the file expires and is deleted, set from the `expires_in_seconds` upload form field. Unset for files that do not expire, which is serialised as `null`.
+ "filename": "A String", # Output only. The original name of the uploaded file, taken from the `Content-Disposition` header on upload. Between 1 and 255 characters. Control characters and the characters `<>:"|?*\/` are not accepted.
+ "id": "A String", # Output only. The server-assigned identifier of the file, for example `file_abc123`. This is the ID to pass in subsequent model requests.
+ "mime_type": "A String", # Output only. The media type of the file, taken from the `Content-Type` header of the file part on upload.
+ "size_bytes": 42, # Output only. The size of the file in bytes.
+ "type": "A String", # Output only. The object type. Always `file`.
+}
+
+
+
\ No newline at end of file
diff --git a/docs/dyn/aiplatform_v1beta1.projects.locations.publishers.html b/docs/dyn/aiplatform_v1beta1.projects.locations.publishers.html
index 810c9992f7..c26c8c423f 100644
--- a/docs/dyn/aiplatform_v1beta1.projects.locations.publishers.html
+++ b/docs/dyn/aiplatform_v1beta1.projects.locations.publishers.html
@@ -74,6 +74,11 @@
Agent Platform API . projects . locations . publishers
Instance Methods
+
+ files()
+
+Returns the files Resource.
+
diff --git a/docs/dyn/aiplatform_v1beta1.projects.locations.publishers.models.html b/docs/dyn/aiplatform_v1beta1.projects.locations.publishers.models.html
index a3c0eec4cf..6c97d65fed 100644
--- a/docs/dyn/aiplatform_v1beta1.projects.locations.publishers.models.html
+++ b/docs/dyn/aiplatform_v1beta1.projects.locations.publishers.models.html
@@ -79,6 +79,9 @@ Instance Methods
Returns the invoke Resource.
+
+ batchEmbedContents(model, body=None, x__xgafv=None)
+Generates embeddings directly from multiple contents.
Close httplib2 connections.
@@ -128,6 +131,181 @@ Instance Methods
streamRawPredict(endpoint, body=None, x__xgafv=None)
Perform a streaming online prediction with an arbitrary HTTP payload.
Method Details
+
+ batchEmbedContents(model, body=None, x__xgafv=None)
+ Generates embeddings directly from multiple contents.
+
+Args:
+ model: string, Required. The name of the publisher model requested to serve the prediction. Format: `projects/{project}/locations/{location}/publishers/{publisher}/models/{model}` (required)
+ body: object, The request body.
+ The object takes the form of:
+
+{ # Request message for PredictionService.BatchEmbedContents.
+ "requests": [ # Required. Embed requests for the batch. The model in each of these requests must either be empty or match the model specified in `BatchEmbedContentsRequest.model`. All the requests in a batch must have the same output dimensionality and auto truncation parameters.
+ { # Request message for PredictionService.EmbedContent.
+ "autoTruncate": True or False, # Optional. Deprecated: Please use EmbedContentConfig.auto_truncate instead. Whether to silently truncate the input content if it's longer than the maximum sequence length.
+ "content": { # The structured data content of a message. A Content message contains a `role` field, which indicates the producer of the content, and a `parts` field, which contains the multi-part data of the message. # Required. The content to be embedded.
+ "parts": [ # Required. A list of Part objects that make up a single message. Parts of a message can have different MIME types. A Content message must have at least one Part.
+ { # A datatype containing media that is part of a multi-part Content message. A `Part` consists of data which has an associated datatype. A `Part` must contain one of the accepted types in `Part.data`. For media types that are not text, `Part` must have a fixed IANA MIME type identifying the type and subtype of the media if `inline_data` or `file_data` field is filled with raw bytes.
+ "audioTranscription": { # The transcription of an audio part. For multi-speaker audio, each speaker segment is a separate `Part` with its own `AudioTranscription` carrying the `speaker_label`. # Optional. Audio (input or output) transcription. This is only set when this `Part` contains audio data.
+ "speakerLabel": "A String", # Optional. A label identifying the speaker of this audio segment (e.g. `spk_1`, `spk_2`). Present when `diarization` is set.
+ "text": "A String", # Required. The transcription text of this audio segment.
+ "words": [ # Optional. Detailed word-level transcriptions and timing details. Present when `word_timestamp` is set.
+ { # Information about a single recognized word.
+ "endOffset": "A String", # Optional. End offset in time of the word relative to the start of the audio.
+ "startOffset": "A String", # Optional. Start offset in time of the word relative to the start of the audio.
+ "word": "A String", # Required. Transcript of the word.
+ },
+ ],
+ },
+ "codeExecutionResult": { # Result of executing the ExecutableCode. Generated only when the `CodeExecution` tool is used. # Optional. The result of executing the ExecutableCode.
+ "id": "A String", # Optional. The identifier of the `ExecutableCode` part this result is for. Only populated if the corresponding `ExecutableCode` has an id.
+ "outcome": "A String", # Required. Outcome of the code execution.
+ "output": "A String", # Optional. Contains stdout when code execution is successful, stderr or other description otherwise.
+ },
+ "executableCode": { # Code generated by the model that is meant to be executed, and the result returned to the model. Generated when using the `CodeExecution` tool, in which the code will be automatically executed, and a corresponding CodeExecutionResult will also be generated. # Optional. Code generated by the model that is intended to be executed.
+ "code": "A String", # Required. The code to be executed.
+ "id": "A String", # Optional. Unique identifier of the `ExecutableCode` part. The server returns the `CodeExecutionResult` with the matching `id`.
+ "language": "A String", # Required. Programming language of the `code`.
+ },
+ "fileData": { # URI-based data. A FileData message contains a URI pointing to data of a specific media type. It is used to represent images, audio, and video stored in Google Cloud Storage. # Optional. The URI-based data of the part. This can be used to include files from Google Cloud Storage.
+ "displayName": "A String", # Optional. The display name of the file. Used to provide a label or filename to distinguish files. This field is only returned in `PromptMessage` for prompt management. It is used in the Gemini calls only when server side tools (`code_execution`, `google_search`, and `url_context`) are enabled.
+ "fileUri": "A String", # Required. The URI of the file in Google Cloud Storage.
+ "mimeType": "A String", # Required. The IANA standard MIME type of the source data.
+ },
+ "functionCall": { # A predicted FunctionCall returned from the model that contains a string representing the FunctionDeclaration.name and a structured JSON object containing the parameters and their values. # Optional. A predicted function call returned from the model. This contains the name of the function to call and the arguments to pass to the function.
+ "args": { # Optional. The function parameters and values in JSON object format. See FunctionDeclaration.parameters for parameter details.
+ "a_key": "", # Properties of the object.
+ },
+ "id": "A String", # Optional. The unique id of the function call. If populated, the client to execute the `function_call` and return the response with the matching `id`.
+ "name": "A String", # Optional. The name of the function to call. Matches FunctionDeclaration.name.
+ "partialArgs": [ # Optional. The partial argument value of the function call. If provided, represents the arguments/fields that are streamed incrementally.
+ { # Partial argument value of the function call.
+ "boolValue": True or False, # Optional. Represents a boolean value.
+ "jsonPath": "A String", # Required. A JSON Path (RFC 9535) to the argument being streamed. https://datatracker.ietf.org/doc/html/rfc9535. e.g. "$.foo.bar[0].data".
+ "nullValue": "A String", # Optional. Represents a null value.
+ "numberValue": 3.14, # Optional. Represents a double value.
+ "stringValue": "A String", # Optional. Represents a string value.
+ "willContinue": True or False, # Optional. Whether this is not the last part of the same json_path. If true, another PartialArg message for the current json_path is expected to follow.
+ },
+ ],
+ "willContinue": True or False, # Optional. Whether this is the last part of the FunctionCall. If true, another partial message for the current FunctionCall is expected to follow.
+ },
+ "functionResponse": { # The result output from a FunctionCall that contains a string representing the FunctionDeclaration.name and a structured JSON object containing any output from the function is used as context to the model. This should contain the result of a `FunctionCall` made based on model prediction. # Optional. The result of a function call. This is used to provide the model with the result of a function call that it predicted.
+ "id": "A String", # Optional. The id of the function call this response is for. Populated by the client to match the corresponding function call `id`.
+ "name": "A String", # Required. The name of the function to call. Matches FunctionDeclaration.name and FunctionCall.name.
+ "parts": [ # Optional. Ordered `Parts` that constitute a function response. Parts may have different IANA MIME types.
+ { # A datatype containing media that is part of a `FunctionResponse` message. A `FunctionResponsePart` consists of data which has an associated datatype. A `FunctionResponsePart` can only contain one of the accepted types in `FunctionResponsePart.data`. A `FunctionResponsePart` must have a fixed IANA MIME type identifying the type and subtype of the media if the `inline_data` field is filled with raw bytes.
+ "fileData": { # URI based data for function response. # URI based data.
+ "displayName": "A String", # Optional. Display name of the file data. Used to provide a label or filename to distinguish file datas. This field is only returned in PromptMessage for prompt management. It is currently used in the Gemini GenerateContent calls only when server side tools (code_execution, google_search, and url_context) are enabled.
+ "fileUri": "A String", # Required. URI.
+ "mimeType": "A String", # Required. The IANA standard MIME type of the source data.
+ },
+ "inlineData": { # Raw media bytes for function response. Text should not be sent as raw bytes, use the 'text' field. # Inline media bytes.
+ "data": "A String", # Required. Raw bytes.
+ "displayName": "A String", # Optional. Display name of the blob. Used to provide a label or filename to distinguish blobs. This field is only returned in PromptMessage for prompt management. It is currently used in the Gemini GenerateContent calls only when server side tools (code_execution, google_search, and url_context) are enabled.
+ "mimeType": "A String", # Required. The IANA standard MIME type of the source data.
+ },
+ },
+ ],
+ "response": { # Required. The function response in JSON object format. Use "output" key to specify function output and "error" key to specify error details (if any). If "output" and "error" keys are not specified, then whole "response" is treated as function output.
+ "a_key": "", # Properties of the object.
+ },
+ "scheduling": "A String", # Optional. Specifies how the response should be scheduled in the conversation. Only applicable to NON_BLOCKING function calls, is ignored otherwise. Defaults to WHEN_IDLE.
+ },
+ "inlineData": { # A content blob. A Blob contains data of a specific media type. It is used to represent images, audio, and video. # Optional. The inline data content of the part. This can be used to include images, audio, or video in a request.
+ "data": "A String", # Required. The raw bytes of the data.
+ "displayName": "A String", # Optional. The display name of the blob. Used to provide a label or filename to distinguish blobs. This field is only returned in `PromptMessage` for prompt management. It is used in the Gemini calls only when server-side tools (`code_execution`, `google_search`, and `url_context`) are enabled.
+ "mimeType": "A String", # Required. The IANA standard MIME type of the source data.
+ },
+ "mediaProcessing": "A String", # Optional. How the model processes this part's media for understanding. Only meaningful for video parts (`inline_data` or `file_data` with video mime). Non-video parts ignore this field.
+ "mediaResolution": { # per part media resolution. Media resolution for the input media. # per part media resolution. Media resolution for the input media.
+ "level": "A String", # The tokenization quality used for given media.
+ },
+ "speechMetadata": { # Structured Metadata Sub-Message for Part # Optional. Turn-level metadata for speech generation (e.g. Daikon speaker/style). May be set alongside `text` to attach speaker and style information to a text part.
+ "speaker": "A String", # Optional. Identifies which speaker is speaking this turn.
+ "style": "A String", # Optional. Natural language description of the vocal style (e.g., "cheerful").
+ },
+ "text": "A String", # Optional. The text content of the part. When sent from the VSCode Gemini Code Assist extension, references to @mentioned items will be converted to markdown boldface text. For example `@my-repo` will be converted to and sent as `**my-repo**` by the IDE agent.
+ "thought": True or False, # Optional. Indicates whether the `part` represents the model's thought process or reasoning.
+ "thoughtSignature": "A String", # Optional. An opaque signature for the thought so it can be reused in subsequent requests.
+ "videoMetadata": { # Provides metadata for a video, including the start and end offsets for clipping and the frame rate. # Optional. Video metadata. The metadata should only be specified while the video data is presented in inline_data or file_data.
+ "endOffset": "A String", # Optional. The end offset of the video.
+ "fps": 3.14, # Optional. The frame rate of the video sent to the model. If not specified, the default value is 1.0. The valid range is (0.0, 24.0].
+ "startOffset": "A String", # Optional. The start offset of the video.
+ },
+ },
+ ],
+ "role": "A String", # Optional. The producer of the content. Must be either 'user' or 'model'. If not set, the service will default to 'user'.
+ },
+ "embedContentConfig": { # Configurations for the EmbedContent API. # Optional. Configuration for the EmbedContent request.
+ "audioTrackExtraction": True or False, # Optional. Whether to extract audio from video content.
+ "autoTruncate": True or False, # Optional. Whether to silently truncate the input content if it's longer than the maximum sequence length. Only applicable to text-only embedding models.
+ "documentOcr": True or False, # Optional. Whether to enable OCR for document content.
+ "outputDimensionality": 42, # Optional. Reduced dimension for the output embedding. If set, excessive values in the output embedding are truncated from the end.
+ "taskType": "A String", # Optional. The task type of the embedding. Only applicable to text-only embedding models.
+ "title": "A String", # Optional. The title for the text. Only applicable to text-only embedding models.
+ },
+ "model": "A String", # Required. The name of the publisher model requested to serve the prediction. Format: `projects/{project}/locations/{location}/publishers/*/models/*`
+ "outputDimensionality": 42, # Optional. Deprecated: Please use EmbedContentConfig.output_dimensionality instead. Reduced dimension for the output embedding. If set, excessive values in the output embedding are truncated from the end.
+ "taskType": "A String", # Optional. Deprecated: Please use EmbedContentConfig.task_type instead. The task type of the embedding.
+ "title": "A String", # Optional. Deprecated: Please use EmbedContentConfig.title instead. The title for the text.
+ },
+ ],
+}
+
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Response message for PredictionService.BatchEmbedContents.
+ "embeddings": [ # The embeddings for each request, in the same order as provided in the batch request.
+ { # A list of floats representing an embedding.
+ "values": [ # Embedding vector values.
+ 3.14,
+ ],
+ },
+ ],
+ "usageMetadata": { # Usage metadata about the content generation request and response. This message provides a detailed breakdown of token usage and other relevant metrics. # Usage metadata about the response(s).
+ "cacheTokensDetails": [ # Output only. A detailed breakdown of the token count for each modality in the cached content.
+ { # Represents a breakdown of token usage by modality. This message is used in CountTokensResponse and GenerateContentResponse.UsageMetadata to provide a detailed view of how many tokens are used by each modality (e.g., text, image, video) in a request. This is particularly useful for multimodal models, allowing you to track and manage token consumption for billing and quota purposes.
+ "modality": "A String", # The modality that this token count applies to.
+ "tokenCount": 42, # The number of tokens counted for this modality.
+ },
+ ],
+ "cachedContentTokenCount": 42, # Output only. The number of tokens in the cached content that was used for this request.
+ "candidatesTokenCount": 42, # The total number of tokens in the generated candidates.
+ "candidatesTokensDetails": [ # Output only. A detailed breakdown of the token count for each modality in the generated candidates.
+ { # Represents a breakdown of token usage by modality. This message is used in CountTokensResponse and GenerateContentResponse.UsageMetadata to provide a detailed view of how many tokens are used by each modality (e.g., text, image, video) in a request. This is particularly useful for multimodal models, allowing you to track and manage token consumption for billing and quota purposes.
+ "modality": "A String", # The modality that this token count applies to.
+ "tokenCount": 42, # The number of tokens counted for this modality.
+ },
+ ],
+ "promptTokenCount": 42, # The total number of tokens in the prompt. This includes any text, images, or other media provided in the request. When `cached_content` is set, this also includes the number of tokens in the cached content.
+ "promptTokensDetails": [ # Output only. A detailed breakdown of the token count for each modality in the prompt.
+ { # Represents a breakdown of token usage by modality. This message is used in CountTokensResponse and GenerateContentResponse.UsageMetadata to provide a detailed view of how many tokens are used by each modality (e.g., text, image, video) in a request. This is particularly useful for multimodal models, allowing you to track and manage token consumption for billing and quota purposes.
+ "modality": "A String", # The modality that this token count applies to.
+ "tokenCount": 42, # The number of tokens counted for this modality.
+ },
+ ],
+ "thoughtsTokenCount": 42, # Output only. The number of tokens that were part of the model's generated "thoughts" output, if applicable.
+ "toolUsePromptTokenCount": 42, # Output only. The number of tokens in the results from tool executions, which are provided back to the model as input, if applicable.
+ "toolUsePromptTokensDetails": [ # Output only. A detailed breakdown by modality of the token counts from the results of tool executions, which are provided back to the model as input.
+ { # Represents a breakdown of token usage by modality. This message is used in CountTokensResponse and GenerateContentResponse.UsageMetadata to provide a detailed view of how many tokens are used by each modality (e.g., text, image, video) in a request. This is particularly useful for multimodal models, allowing you to track and manage token consumption for billing and quota purposes.
+ "modality": "A String", # The modality that this token count applies to.
+ "tokenCount": 42, # The number of tokens counted for this modality.
+ },
+ ],
+ "totalTokenCount": 42, # The total number of tokens for the entire request. This is the sum of `prompt_token_count`, `candidates_token_count`, `tool_use_prompt_token_count`, and `thoughts_token_count`.
+ "trafficType": "A String", # Output only. The traffic type for this request.
+ },
+}
+
+
close()
Close httplib2 connections.
@@ -1019,6 +1197,7 @@ Method Details
"taskType": "A String", # Optional. The task type of the embedding. Only applicable to text-only embedding models.
"title": "A String", # Optional. The title for the text. Only applicable to text-only embedding models.
},
+ "model": "A String", # Required. The name of the publisher model requested to serve the prediction. Format: `projects/{project}/locations/{location}/publishers/*/models/*`
"outputDimensionality": 42, # Optional. Deprecated: Please use EmbedContentConfig.output_dimensionality instead. Reduced dimension for the output embedding. If set, excessive values in the output embedding are truncated from the end.
"taskType": "A String", # Optional. Deprecated: Please use EmbedContentConfig.task_type instead. The task type of the embedding.
"title": "A String", # Optional. Deprecated: Please use EmbedContentConfig.title instead. The title for the text.
@@ -1483,6 +1662,9 @@ Method Details
"promptTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for prompt screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the user's prompt for safety and security risks before it is sent to the model. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
"responseTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for response screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the model's response for safety and security risks before it is returned to the user. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
},
+ "outputConfig": { # Configuration for persisting output assets to external storage. # Optional. Configuration for persisting output assets to external storage.
+ "outputUriPrefix": "A String", # Optional. The Cloud Storage URI prefix or directory where generated media assets should be written (e.g. `gs://my-bucket/prefix/`). Supported URI schemes: `gs://`. When set, media bytes are written directly to this location and returned as `FileData` with a `file_uri` instead of raw inline bytes.
+ },
"safetySettings": [ # Optional. Per request settings for blocking unsafe content. Enforced on GenerateContentResponse.candidates.
{ # A safety setting that affects the safety-blocking behavior. A SafetySetting consists of a harm category and a threshold for that category.
"category": "A String", # Required. The harm category to be blocked.
@@ -2856,6 +3038,9 @@ Method Details
"promptTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for prompt screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the user's prompt for safety and security risks before it is sent to the model. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
"responseTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for response screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the model's response for safety and security risks before it is returned to the user. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
},
+ "outputConfig": { # Configuration for persisting output assets to external storage. # Optional. Configuration for persisting output assets to external storage.
+ "outputUriPrefix": "A String", # Optional. The Cloud Storage URI prefix or directory where generated media assets should be written (e.g. `gs://my-bucket/prefix/`). Supported URI schemes: `gs://`. When set, media bytes are written directly to this location and returned as `FileData` with a `file_uri` instead of raw inline bytes.
+ },
"safetySettings": [ # Optional. Per request settings for blocking unsafe content. Enforced on GenerateContentResponse.candidates.
{ # A safety setting that affects the safety-blocking behavior. A SafetySetting consists of a harm category and a threshold for that category.
"category": "A String", # Required. The harm category to be blocked.
diff --git a/docs/dyn/aiplatform_v1beta1.publishers.models.html b/docs/dyn/aiplatform_v1beta1.publishers.models.html
index e3e2da84cc..fb61bc4058 100644
--- a/docs/dyn/aiplatform_v1beta1.publishers.models.html
+++ b/docs/dyn/aiplatform_v1beta1.publishers.models.html
@@ -1213,6 +1213,9 @@ Method Details
"promptTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for prompt screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the user's prompt for safety and security risks before it is sent to the model. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
"responseTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for response screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the model's response for safety and security risks before it is returned to the user. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
},
+ "outputConfig": { # Configuration for persisting output assets to external storage. # Optional. Configuration for persisting output assets to external storage.
+ "outputUriPrefix": "A String", # Optional. The Cloud Storage URI prefix or directory where generated media assets should be written (e.g. `gs://my-bucket/prefix/`). Supported URI schemes: `gs://`. When set, media bytes are written directly to this location and returned as `FileData` with a `file_uri` instead of raw inline bytes.
+ },
"safetySettings": [ # Optional. Per request settings for blocking unsafe content. Enforced on GenerateContentResponse.candidates.
{ # A safety setting that affects the safety-blocking behavior. A SafetySetting consists of a harm category and a threshold for that category.
"category": "A String", # Required. The harm category to be blocked.
@@ -3504,6 +3507,9 @@ Method Details
"promptTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for prompt screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the user's prompt for safety and security risks before it is sent to the model. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
"responseTemplateName": "A String", # Optional. The resource name of the Model Armor template to use for response screening. A Model Armor template is a set of customized filters and thresholds that define how Model Armor screens content. If specified, Model Armor will use this template to check the model's response for safety and security risks before it is returned to the user. The name must be in the format `projects/{project}/locations/{location}/templates/{template}`.
},
+ "outputConfig": { # Configuration for persisting output assets to external storage. # Optional. Configuration for persisting output assets to external storage.
+ "outputUriPrefix": "A String", # Optional. The Cloud Storage URI prefix or directory where generated media assets should be written (e.g. `gs://my-bucket/prefix/`). Supported URI schemes: `gs://`. When set, media bytes are written directly to this location and returned as `FileData` with a `file_uri` instead of raw inline bytes.
+ },
"safetySettings": [ # Optional. Per request settings for blocking unsafe content. Enforced on GenerateContentResponse.candidates.
{ # A safety setting that affects the safety-blocking behavior. A SafetySetting consists of a harm category and a threshold for that category.
"category": "A String", # Required. The harm category to be blocked.
diff --git a/docs/dyn/alloydb_v1.projects.locations.clusters.instances.html b/docs/dyn/alloydb_v1.projects.locations.clusters.instances.html
index 863167e8bd..a175c1b4ed 100644
--- a/docs/dyn/alloydb_v1.projects.locations.clusters.instances.html
+++ b/docs/dyn/alloydb_v1.projects.locations.clusters.instances.html
@@ -267,6 +267,9 @@ Method Details
"readPoolConfig": { # Configuration for a read pool instance. # Read pool instance configuration. This is required if the value of instanceType is READ_POOL.
"autoScalingConfig": { # Configuration for autoscaling. # Optional. Autoscaling configuration for the read pool instance. If not set, the read pool instance will not be autoscaled.
"policy": { # Policy for the autoscaler. # Policy for the MIG autoscaler.
+ "connectionsCount": { # Connections count policy for the autoscaler. # Optional. Connections count policy for the autoscaler. If not set, the autoscaler will not use connection count for scaling.
+ "targetCount": "A String", # Optional. The target number of connections for the autoscaler to scale the instance to.
+ },
"coolDownPeriodSec": "A String", # The period of time in seconds after a new node is created before the autoscaler will incorporate its resource usage (e.g. CPU utilization) into the autoscaling recommendation algorithm.
"cpuUtilization": { # CPU utilization policy for the autoscaler. # CPU utilization policy for the autoscaler.
"utilizationTarget": 3.14, # Target CPU utilization as a float between 0 and 1.
@@ -485,6 +488,9 @@ Method Details
"readPoolConfig": { # Configuration for a read pool instance. # Read pool instance configuration. This is required if the value of instanceType is READ_POOL.
"autoScalingConfig": { # Configuration for autoscaling. # Optional. Autoscaling configuration for the read pool instance. If not set, the read pool instance will not be autoscaled.
"policy": { # Policy for the autoscaler. # Policy for the MIG autoscaler.
+ "connectionsCount": { # Connections count policy for the autoscaler. # Optional. Connections count policy for the autoscaler. If not set, the autoscaler will not use connection count for scaling.
+ "targetCount": "A String", # Optional. The target number of connections for the autoscaler to scale the instance to.
+ },
"coolDownPeriodSec": "A String", # The period of time in seconds after a new node is created before the autoscaler will incorporate its resource usage (e.g. CPU utilization) into the autoscaling recommendation algorithm.
"cpuUtilization": { # CPU utilization policy for the autoscaler. # CPU utilization policy for the autoscaler.
"utilizationTarget": 3.14, # Target CPU utilization as a float between 0 and 1.
@@ -794,6 +800,9 @@ Method Details
"readPoolConfig": { # Configuration for a read pool instance. # Read pool instance configuration. This is required if the value of instanceType is READ_POOL.
"autoScalingConfig": { # Configuration for autoscaling. # Optional. Autoscaling configuration for the read pool instance. If not set, the read pool instance will not be autoscaled.
"policy": { # Policy for the autoscaler. # Policy for the MIG autoscaler.
+ "connectionsCount": { # Connections count policy for the autoscaler. # Optional. Connections count policy for the autoscaler. If not set, the autoscaler will not use connection count for scaling.
+ "targetCount": "A String", # Optional. The target number of connections for the autoscaler to scale the instance to.
+ },
"coolDownPeriodSec": "A String", # The period of time in seconds after a new node is created before the autoscaler will incorporate its resource usage (e.g. CPU utilization) into the autoscaling recommendation algorithm.
"cpuUtilization": { # CPU utilization policy for the autoscaler. # CPU utilization policy for the autoscaler.
"utilizationTarget": 3.14, # Target CPU utilization as a float between 0 and 1.
@@ -1059,6 +1068,9 @@ Method Details
"readPoolConfig": { # Configuration for a read pool instance. # Read pool instance configuration. This is required if the value of instanceType is READ_POOL.
"autoScalingConfig": { # Configuration for autoscaling. # Optional. Autoscaling configuration for the read pool instance. If not set, the read pool instance will not be autoscaled.
"policy": { # Policy for the autoscaler. # Policy for the MIG autoscaler.
+ "connectionsCount": { # Connections count policy for the autoscaler. # Optional. Connections count policy for the autoscaler. If not set, the autoscaler will not use connection count for scaling.
+ "targetCount": "A String", # Optional. The target number of connections for the autoscaler to scale the instance to.
+ },
"coolDownPeriodSec": "A String", # The period of time in seconds after a new node is created before the autoscaler will incorporate its resource usage (e.g. CPU utilization) into the autoscaling recommendation algorithm.
"cpuUtilization": { # CPU utilization policy for the autoscaler. # CPU utilization policy for the autoscaler.
"utilizationTarget": 3.14, # Target CPU utilization as a float between 0 and 1.
@@ -1266,6 +1278,9 @@ Method Details
"readPoolConfig": { # Configuration for a read pool instance. # Read pool instance configuration. This is required if the value of instanceType is READ_POOL.
"autoScalingConfig": { # Configuration for autoscaling. # Optional. Autoscaling configuration for the read pool instance. If not set, the read pool instance will not be autoscaled.
"policy": { # Policy for the autoscaler. # Policy for the MIG autoscaler.
+ "connectionsCount": { # Connections count policy for the autoscaler. # Optional. Connections count policy for the autoscaler. If not set, the autoscaler will not use connection count for scaling.
+ "targetCount": "A String", # Optional. The target number of connections for the autoscaler to scale the instance to.
+ },
"coolDownPeriodSec": "A String", # The period of time in seconds after a new node is created before the autoscaler will incorporate its resource usage (e.g. CPU utilization) into the autoscaling recommendation algorithm.
"cpuUtilization": { # CPU utilization policy for the autoscaler. # CPU utilization policy for the autoscaler.
"utilizationTarget": 3.14, # Target CPU utilization as a float between 0 and 1.
diff --git a/docs/dyn/alloydb_v1alpha.projects.locations.clusters.instances.html b/docs/dyn/alloydb_v1alpha.projects.locations.clusters.instances.html
index 965515ddc5..b0b04c9102 100644
--- a/docs/dyn/alloydb_v1alpha.projects.locations.clusters.instances.html
+++ b/docs/dyn/alloydb_v1alpha.projects.locations.clusters.instances.html
@@ -283,6 +283,9 @@ Method Details
"readPoolConfig": { # Configuration for a read pool instance. # Read pool instance configuration. This is required if the value of instanceType is READ_POOL.
"autoScalingConfig": { # Configuration for autoscaling. # Optional. Autoscaling configuration for the read pool instance. If not set, the read pool instance will not be autoscaled.
"policy": { # Policy for the autoscaler. # Policy for the MIG autoscaler.
+ "connectionsCount": { # Connections count policy for the autoscaler. # Optional. Connections count policy for the autoscaler. If not set, the autoscaler will not use connection count for scaling.
+ "targetCount": "A String", # Optional. The target number of connections for the autoscaler to scale the instance to.
+ },
"coolDownPeriodSec": "A String", # The period of time in seconds after a new node is created before the autoscaler will incorporate its resource usage (e.g. CPU utilization) into the autoscaling recommendation algorithm.
"cpuUtilization": { # CPU utilization policy for the autoscaler. # CPU utilization policy for the autoscaler.
"utilizationTarget": 3.14, # Target CPU utilization as a float between 0 and 1.
@@ -521,6 +524,9 @@ Method Details
"readPoolConfig": { # Configuration for a read pool instance. # Read pool instance configuration. This is required if the value of instanceType is READ_POOL.
"autoScalingConfig": { # Configuration for autoscaling. # Optional. Autoscaling configuration for the read pool instance. If not set, the read pool instance will not be autoscaled.
"policy": { # Policy for the autoscaler. # Policy for the MIG autoscaler.
+ "connectionsCount": { # Connections count policy for the autoscaler. # Optional. Connections count policy for the autoscaler. If not set, the autoscaler will not use connection count for scaling.
+ "targetCount": "A String", # Optional. The target number of connections for the autoscaler to scale the instance to.
+ },
"coolDownPeriodSec": "A String", # The period of time in seconds after a new node is created before the autoscaler will incorporate its resource usage (e.g. CPU utilization) into the autoscaling recommendation algorithm.
"cpuUtilization": { # CPU utilization policy for the autoscaler. # CPU utilization policy for the autoscaler.
"utilizationTarget": 3.14, # Target CPU utilization as a float between 0 and 1.
@@ -850,6 +856,9 @@ Method Details
"readPoolConfig": { # Configuration for a read pool instance. # Read pool instance configuration. This is required if the value of instanceType is READ_POOL.
"autoScalingConfig": { # Configuration for autoscaling. # Optional. Autoscaling configuration for the read pool instance. If not set, the read pool instance will not be autoscaled.
"policy": { # Policy for the autoscaler. # Policy for the MIG autoscaler.
+ "connectionsCount": { # Connections count policy for the autoscaler. # Optional. Connections count policy for the autoscaler. If not set, the autoscaler will not use connection count for scaling.
+ "targetCount": "A String", # Optional. The target number of connections for the autoscaler to scale the instance to.
+ },
"coolDownPeriodSec": "A String", # The period of time in seconds after a new node is created before the autoscaler will incorporate its resource usage (e.g. CPU utilization) into the autoscaling recommendation algorithm.
"cpuUtilization": { # CPU utilization policy for the autoscaler. # CPU utilization policy for the autoscaler.
"utilizationTarget": 3.14, # Target CPU utilization as a float between 0 and 1.
@@ -1140,6 +1149,9 @@ Method Details
"readPoolConfig": { # Configuration for a read pool instance. # Read pool instance configuration. This is required if the value of instanceType is READ_POOL.
"autoScalingConfig": { # Configuration for autoscaling. # Optional. Autoscaling configuration for the read pool instance. If not set, the read pool instance will not be autoscaled.
"policy": { # Policy for the autoscaler. # Policy for the MIG autoscaler.
+ "connectionsCount": { # Connections count policy for the autoscaler. # Optional. Connections count policy for the autoscaler. If not set, the autoscaler will not use connection count for scaling.
+ "targetCount": "A String", # Optional. The target number of connections for the autoscaler to scale the instance to.
+ },
"coolDownPeriodSec": "A String", # The period of time in seconds after a new node is created before the autoscaler will incorporate its resource usage (e.g. CPU utilization) into the autoscaling recommendation algorithm.
"cpuUtilization": { # CPU utilization policy for the autoscaler. # CPU utilization policy for the autoscaler.
"utilizationTarget": 3.14, # Target CPU utilization as a float between 0 and 1.
@@ -1367,6 +1379,9 @@ Method Details
"readPoolConfig": { # Configuration for a read pool instance. # Read pool instance configuration. This is required if the value of instanceType is READ_POOL.
"autoScalingConfig": { # Configuration for autoscaling. # Optional. Autoscaling configuration for the read pool instance. If not set, the read pool instance will not be autoscaled.
"policy": { # Policy for the autoscaler. # Policy for the MIG autoscaler.
+ "connectionsCount": { # Connections count policy for the autoscaler. # Optional. Connections count policy for the autoscaler. If not set, the autoscaler will not use connection count for scaling.
+ "targetCount": "A String", # Optional. The target number of connections for the autoscaler to scale the instance to.
+ },
"coolDownPeriodSec": "A String", # The period of time in seconds after a new node is created before the autoscaler will incorporate its resource usage (e.g. CPU utilization) into the autoscaling recommendation algorithm.
"cpuUtilization": { # CPU utilization policy for the autoscaler. # CPU utilization policy for the autoscaler.
"utilizationTarget": 3.14, # Target CPU utilization as a float between 0 and 1.
diff --git a/docs/dyn/alloydb_v1beta.projects.locations.clusters.instances.html b/docs/dyn/alloydb_v1beta.projects.locations.clusters.instances.html
index 20997d7ea0..ba2e34286f 100644
--- a/docs/dyn/alloydb_v1beta.projects.locations.clusters.instances.html
+++ b/docs/dyn/alloydb_v1beta.projects.locations.clusters.instances.html
@@ -283,6 +283,9 @@ Method Details
"readPoolConfig": { # Configuration for a read pool instance. # Read pool instance configuration. This is required if the value of instanceType is READ_POOL.
"autoScalingConfig": { # Configuration for autoscaling. # Optional. Autoscaling configuration for the read pool instance. If not set, the read pool instance will not be autoscaled.
"policy": { # Policy for the autoscaler. # Policy for the MIG autoscaler.
+ "connectionsCount": { # Connections count policy for the autoscaler. # Optional. Connections count policy for the autoscaler. If not set, the autoscaler will not use connection count for scaling.
+ "targetCount": "A String", # Optional. The target number of connections for the autoscaler to scale the instance to.
+ },
"coolDownPeriodSec": "A String", # The period of time in seconds after a new node is created before the autoscaler will incorporate its resource usage (e.g. CPU utilization) into the autoscaling recommendation algorithm.
"cpuUtilization": { # CPU utilization policy for the autoscaler. # CPU utilization policy for the autoscaler.
"utilizationTarget": 3.14, # Target CPU utilization as a float between 0 and 1.
@@ -520,6 +523,9 @@ Method Details
"readPoolConfig": { # Configuration for a read pool instance. # Read pool instance configuration. This is required if the value of instanceType is READ_POOL.
"autoScalingConfig": { # Configuration for autoscaling. # Optional. Autoscaling configuration for the read pool instance. If not set, the read pool instance will not be autoscaled.
"policy": { # Policy for the autoscaler. # Policy for the MIG autoscaler.
+ "connectionsCount": { # Connections count policy for the autoscaler. # Optional. Connections count policy for the autoscaler. If not set, the autoscaler will not use connection count for scaling.
+ "targetCount": "A String", # Optional. The target number of connections for the autoscaler to scale the instance to.
+ },
"coolDownPeriodSec": "A String", # The period of time in seconds after a new node is created before the autoscaler will incorporate its resource usage (e.g. CPU utilization) into the autoscaling recommendation algorithm.
"cpuUtilization": { # CPU utilization policy for the autoscaler. # CPU utilization policy for the autoscaler.
"utilizationTarget": 3.14, # Target CPU utilization as a float between 0 and 1.
@@ -848,6 +854,9 @@ Method Details
"readPoolConfig": { # Configuration for a read pool instance. # Read pool instance configuration. This is required if the value of instanceType is READ_POOL.
"autoScalingConfig": { # Configuration for autoscaling. # Optional. Autoscaling configuration for the read pool instance. If not set, the read pool instance will not be autoscaled.
"policy": { # Policy for the autoscaler. # Policy for the MIG autoscaler.
+ "connectionsCount": { # Connections count policy for the autoscaler. # Optional. Connections count policy for the autoscaler. If not set, the autoscaler will not use connection count for scaling.
+ "targetCount": "A String", # Optional. The target number of connections for the autoscaler to scale the instance to.
+ },
"coolDownPeriodSec": "A String", # The period of time in seconds after a new node is created before the autoscaler will incorporate its resource usage (e.g. CPU utilization) into the autoscaling recommendation algorithm.
"cpuUtilization": { # CPU utilization policy for the autoscaler. # CPU utilization policy for the autoscaler.
"utilizationTarget": 3.14, # Target CPU utilization as a float between 0 and 1.
@@ -1137,6 +1146,9 @@ Method Details
"readPoolConfig": { # Configuration for a read pool instance. # Read pool instance configuration. This is required if the value of instanceType is READ_POOL.
"autoScalingConfig": { # Configuration for autoscaling. # Optional. Autoscaling configuration for the read pool instance. If not set, the read pool instance will not be autoscaled.
"policy": { # Policy for the autoscaler. # Policy for the MIG autoscaler.
+ "connectionsCount": { # Connections count policy for the autoscaler. # Optional. Connections count policy for the autoscaler. If not set, the autoscaler will not use connection count for scaling.
+ "targetCount": "A String", # Optional. The target number of connections for the autoscaler to scale the instance to.
+ },
"coolDownPeriodSec": "A String", # The period of time in seconds after a new node is created before the autoscaler will incorporate its resource usage (e.g. CPU utilization) into the autoscaling recommendation algorithm.
"cpuUtilization": { # CPU utilization policy for the autoscaler. # CPU utilization policy for the autoscaler.
"utilizationTarget": 3.14, # Target CPU utilization as a float between 0 and 1.
@@ -1363,6 +1375,9 @@ Method Details
"readPoolConfig": { # Configuration for a read pool instance. # Read pool instance configuration. This is required if the value of instanceType is READ_POOL.
"autoScalingConfig": { # Configuration for autoscaling. # Optional. Autoscaling configuration for the read pool instance. If not set, the read pool instance will not be autoscaled.
"policy": { # Policy for the autoscaler. # Policy for the MIG autoscaler.
+ "connectionsCount": { # Connections count policy for the autoscaler. # Optional. Connections count policy for the autoscaler. If not set, the autoscaler will not use connection count for scaling.
+ "targetCount": "A String", # Optional. The target number of connections for the autoscaler to scale the instance to.
+ },
"coolDownPeriodSec": "A String", # The period of time in seconds after a new node is created before the autoscaler will incorporate its resource usage (e.g. CPU utilization) into the autoscaling recommendation algorithm.
"cpuUtilization": { # CPU utilization policy for the autoscaler. # CPU utilization policy for the autoscaler.
"utilizationTarget": 3.14, # Target CPU utilization as a float between 0 and 1.
diff --git a/docs/dyn/androidmanagement_v1.enterprises.policies.html b/docs/dyn/androidmanagement_v1.enterprises.policies.html
index 3ebf7398ed..e6536e562d 100644
--- a/docs/dyn/androidmanagement_v1.enterprises.policies.html
+++ b/docs/dyn/androidmanagement_v1.enterprises.policies.html
@@ -215,6 +215,9 @@ Method Details
"preferentialNetworkId": "A String", # Optional. ID of the preferential network the application uses. There must be a configuration for the specified network ID in preferentialNetworkServiceConfigs. If set to PREFERENTIAL_NETWORK_ID_UNSPECIFIED, the application will use the default network ID specified in defaultPreferentialNetworkId. See the documentation of defaultPreferentialNetworkId for the list of apps excluded from this defaulting. This applies on both work profiles and fully managed devices on Android 13 and above.
"roles": [ # Optional. Roles the app has.Apps having certain roles can be exempted from power and background execution restrictions, suspension and hibernation on Android 14 and above. The user control can also be disallowed for apps with certain roles on Android 11 and above. Refer to the documentation of each RoleType for more details.The app is notified about the roles that are set for it if the app has a notification receiver service with . The app is notified whenever its roles are updated or after the app is installed when it has nonempty list of roles. The app can use this notification to bootstrap itself after the installation. See Integrate with the AMAPI SDK (https://developers.google.com/android/management/sdk-integration) and Manage app roles (https://developers.google.com/android/management/app-roles) guides for more details on the requirements for the service.For the exemptions to be applied and the app to be notified about the roles, the signing key certificate fingerprint of the app on the device must match one of the signing key certificate fingerprints obtained from Play Store or one of the entries in ApplicationPolicy.signingKeyCerts. Otherwise, a NonComplianceDetail with APP_SIGNING_CERT_MISMATCH is reported.There must not be duplicate roles with the same roleType. Multiple apps cannot hold a role with the same roleType. A role with type ROLE_TYPE_UNSPECIFIED is not allowed.
{ # Role an app can have.
+ "extraCapabilities": { # Extra capabilities for a role. # Optional. Extra capabilities configured specifically for this role. Not all role types support or utilize extra capabilities.
+ "localDeviceWipeCommand": "A String", # Optional. Controls whether the companion app can perform local device wipe (https://developers.google.com/android/management/sdk-local-commands) using AMAPI SDK (https://developers.google.com/android/management/sdk-integration).
+ },
"roleType": "A String", # Required. The type of the role an app can have.
},
],
@@ -628,6 +631,56 @@ Method Details
"type": "A String", # The type of system update to configure.
},
"tetheringConfigDisabled": True or False, # Whether configuring tethering and portable hotspots is disabled. If tetheringSettings is set to anything other than TETHERING_SETTINGS_UNSPECIFIED, this setting is ignored.
+ "unifiedUpdatePolicy": { # The Unified Update Control policy, for controlling updates of software components on the device (see Target). Supported only on company-owned devices. # Optional. The Unified Update Control policy, for controlling updates of software components on the device. Supported only on company-owned devices.The targets OS_UPDATE_WITH_API_LEVEL_CHANGE and OS_UPDATE_WITHOUT_API_LEVEL_CHANGE are supported only on devices where the OEM has integrated with Unified Update Controls, and are ignored otherwise. If systemUpdate is set, then that policy takes precedence and the targets OS_UPDATE_WITH_API_LEVEL_CHANGE and OS_UPDATE_WITHOUT_API_LEVEL_CHANGE are ignored here.
+ "rules": [ # Optional. When the policy is evaluated for a given target, all rules which refer to that target are evaluated in sequence. The first rule for which the predicate evaluates to true is considered, and its outcome is used. If no rule matches, the default update behavior applies. In other words, this behaves like a chained if-else statement.However, if an update has been available for more than a certain amount of time, any outcome of BLOCK is automatically changed to the default update behavior. At most 100 rules are allowed.
+ { # A rule as a part of the Unified Update Control policy. See rules for how this is used.
+ "id": "A String", # Required. An EMM-defined identifier for this rule, of length at most 64 characters. This must not be empty. Within a UnifiedUpdatePolicy, different rules must have different ids.
+ "outcome": { # Determines how to proceed with the update. # Optional. Determines how to proceed with the update.
+ "outcomeType": "A String", # Optional. Determines how to proceed with the update.
+ },
+ "predicate": { # A predicate is something that can be evaluated on a device at any point of time, to return true or false. This is the conjunction (logical AND) of all the individual conditions defined here. An empty Predicate always evaluates to true. # Optional. The predicate of the rule, which can evaluate to true or false. See rules for how this is used. If not set, the predicate always evaluates to true.
+ "dateLowerBound": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: A full date, with non-zero year, month, and day values. A month and day, with a zero year (for example, an anniversary). A year on its own, with a zero month and a zero day. A year and month, with a zero day (for example, a credit card expiration date).Related types: google.type.TimeOfDay google.type.DateTime google.protobuf.Timestamp # Optional. A lower bound on the current date, in the device time zone. If not set, always evaluates to true.
+ "day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
+ "month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
+ "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
+ },
+ "dateUpperBound": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: A full date, with non-zero year, month, and day values. A month and day, with a zero year (for example, an anniversary). A year on its own, with a zero month and a zero day. A year and month, with a zero day (for example, a credit card expiration date).Related types: google.type.TimeOfDay google.type.DateTime google.protobuf.Timestamp # Optional. An upper bound on the current date, in the device time zone. If not set, always evaluates to true.
+ "day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
+ "month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
+ "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
+ },
+ "daysOfWeek": [ # Optional. Evaluates to true if this list is empty or if the current day of the week in the device's local time is in this list.
+ "A String",
+ ],
+ "timeOfDayLowerBound": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and google.protobuf.Timestamp. # Optional. A lower bound on the current time of the day, evaluated as hh:00:00 in the device time zone. Must specify only the hour (0-23). The policy will be rejected if minutes, seconds, or nanos are set. If not set, always evaluates to true.
+ "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
+ "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
+ "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
+ "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
+ },
+ "timeOfDayUpperBound": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and google.protobuf.Timestamp. # Optional. An upper bound on the current time of the day, evaluated as hh:00:00 in the device time zone. Must specify only the hour (0-23). The policy will be rejected if minutes, seconds, or nanos are set. If not set, always evaluates to true.The window closes at the specified hour (for example, a lower bound of 14 and an upper bound of 15 covers 14:00 to 15:00). When both bounds are set in the same rule, timeOfDayUpperBound must be strictly greater than timeOfDayLowerBound for the window to match; if timeOfDayUpperBound is less than or equal to timeOfDayLowerBound, the predicate evaluates to false. Setting timeOfDayUpperBound to 0 (00:00) evaluates to false for the entire day. To extend a window to the end of the day (24:00), omit timeOfDayUpperBound. To define an overnight window spanning midnight, use two rules: an evening rule with only timeOfDayLowerBound set and a morning rule with only timeOfDayUpperBound set (targeting the following day if daysOfWeek is set).
+ "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
+ "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
+ "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
+ "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
+ },
+ "updateAgeLowerBound": "A String", # Optional. A lower bound on the amount of time for which the update (that is, the specific build or version) has been available to the device. This must be a multiple of 24 hours.
+ "updateAgeUpperBound": "A String", # Optional. An upper bound on the amount of time for which the update has been available. If not set or set to zero, always evaluates to true. This must be a multiple of 24 hours.
+ },
+ "stages": [ # Optional. The stages at which the rule is evaluated. If this list is empty, the rule is evaluated at all stages. Specifying stages is supported only for OS_UPDATE_WITHOUT_API_LEVEL_CHANGE and OS_UPDATE_WITH_API_LEVEL_CHANGE. For SINGLE_APP, GOOGLE_SYSTEM_SERVICES, and GOOGLE_PLAY_SYSTEM_UPDATE, this field is ignored and the rule is evaluated at all stages.
+ "A String",
+ ],
+ "targets": [ # Required. Targets that this rule applies to. This can have multiple targets here for convenience, and that is equivalent to having multiple rules in sequence each having one target, in the same order in which targets are listed here. This list must not be empty and must not have duplicates.
+ { # A software component that can be updated.
+ "singleApp": { # Details of an app on Google System services. # Details of an app on Google System services.
+ "packageName": "A String", # Required. The package name of the app. This can only be an app which is a part of GOOGLE_SYSTEM_SERVICES.
+ },
+ "targetType": "A String", # Required. The type of software component that can be updated.
+ },
+ ],
+ },
+ ],
+ },
"uninstallAppsDisabled": True or False, # Whether user uninstallation of applications is disabled. This prevents apps from being uninstalled, even those removed using applications
"unmuteMicrophoneDisabled": True or False, # If microphone_access is set to any value other than MICROPHONE_ACCESS_UNSPECIFIED, this has no effect. Otherwise this field controls whether microphones are disabled: If true, all microphones are disabled, otherwise they are available. This is available only on fully managed devices.
"usageLog": { # Controls types of device activity logs collected from the device and reported via Pub/Sub notification (https://developers.google.com/android/management/notifications). # Optional. Configuration of device activity logging.
@@ -752,6 +805,9 @@ Method Details
"preferentialNetworkId": "A String", # Optional. ID of the preferential network the application uses. There must be a configuration for the specified network ID in preferentialNetworkServiceConfigs. If set to PREFERENTIAL_NETWORK_ID_UNSPECIFIED, the application will use the default network ID specified in defaultPreferentialNetworkId. See the documentation of defaultPreferentialNetworkId for the list of apps excluded from this defaulting. This applies on both work profiles and fully managed devices on Android 13 and above.
"roles": [ # Optional. Roles the app has.Apps having certain roles can be exempted from power and background execution restrictions, suspension and hibernation on Android 14 and above. The user control can also be disallowed for apps with certain roles on Android 11 and above. Refer to the documentation of each RoleType for more details.The app is notified about the roles that are set for it if the app has a notification receiver service with . The app is notified whenever its roles are updated or after the app is installed when it has nonempty list of roles. The app can use this notification to bootstrap itself after the installation. See Integrate with the AMAPI SDK (https://developers.google.com/android/management/sdk-integration) and Manage app roles (https://developers.google.com/android/management/app-roles) guides for more details on the requirements for the service.For the exemptions to be applied and the app to be notified about the roles, the signing key certificate fingerprint of the app on the device must match one of the signing key certificate fingerprints obtained from Play Store or one of the entries in ApplicationPolicy.signingKeyCerts. Otherwise, a NonComplianceDetail with APP_SIGNING_CERT_MISMATCH is reported.There must not be duplicate roles with the same roleType. Multiple apps cannot hold a role with the same roleType. A role with type ROLE_TYPE_UNSPECIFIED is not allowed.
{ # Role an app can have.
+ "extraCapabilities": { # Extra capabilities for a role. # Optional. Extra capabilities configured specifically for this role. Not all role types support or utilize extra capabilities.
+ "localDeviceWipeCommand": "A String", # Optional. Controls whether the companion app can perform local device wipe (https://developers.google.com/android/management/sdk-local-commands) using AMAPI SDK (https://developers.google.com/android/management/sdk-integration).
+ },
"roleType": "A String", # Required. The type of the role an app can have.
},
],
@@ -1165,6 +1221,56 @@ Method Details
"type": "A String", # The type of system update to configure.
},
"tetheringConfigDisabled": True or False, # Whether configuring tethering and portable hotspots is disabled. If tetheringSettings is set to anything other than TETHERING_SETTINGS_UNSPECIFIED, this setting is ignored.
+ "unifiedUpdatePolicy": { # The Unified Update Control policy, for controlling updates of software components on the device (see Target). Supported only on company-owned devices. # Optional. The Unified Update Control policy, for controlling updates of software components on the device. Supported only on company-owned devices.The targets OS_UPDATE_WITH_API_LEVEL_CHANGE and OS_UPDATE_WITHOUT_API_LEVEL_CHANGE are supported only on devices where the OEM has integrated with Unified Update Controls, and are ignored otherwise. If systemUpdate is set, then that policy takes precedence and the targets OS_UPDATE_WITH_API_LEVEL_CHANGE and OS_UPDATE_WITHOUT_API_LEVEL_CHANGE are ignored here.
+ "rules": [ # Optional. When the policy is evaluated for a given target, all rules which refer to that target are evaluated in sequence. The first rule for which the predicate evaluates to true is considered, and its outcome is used. If no rule matches, the default update behavior applies. In other words, this behaves like a chained if-else statement.However, if an update has been available for more than a certain amount of time, any outcome of BLOCK is automatically changed to the default update behavior. At most 100 rules are allowed.
+ { # A rule as a part of the Unified Update Control policy. See rules for how this is used.
+ "id": "A String", # Required. An EMM-defined identifier for this rule, of length at most 64 characters. This must not be empty. Within a UnifiedUpdatePolicy, different rules must have different ids.
+ "outcome": { # Determines how to proceed with the update. # Optional. Determines how to proceed with the update.
+ "outcomeType": "A String", # Optional. Determines how to proceed with the update.
+ },
+ "predicate": { # A predicate is something that can be evaluated on a device at any point of time, to return true or false. This is the conjunction (logical AND) of all the individual conditions defined here. An empty Predicate always evaluates to true. # Optional. The predicate of the rule, which can evaluate to true or false. See rules for how this is used. If not set, the predicate always evaluates to true.
+ "dateLowerBound": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: A full date, with non-zero year, month, and day values. A month and day, with a zero year (for example, an anniversary). A year on its own, with a zero month and a zero day. A year and month, with a zero day (for example, a credit card expiration date).Related types: google.type.TimeOfDay google.type.DateTime google.protobuf.Timestamp # Optional. A lower bound on the current date, in the device time zone. If not set, always evaluates to true.
+ "day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
+ "month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
+ "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
+ },
+ "dateUpperBound": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: A full date, with non-zero year, month, and day values. A month and day, with a zero year (for example, an anniversary). A year on its own, with a zero month and a zero day. A year and month, with a zero day (for example, a credit card expiration date).Related types: google.type.TimeOfDay google.type.DateTime google.protobuf.Timestamp # Optional. An upper bound on the current date, in the device time zone. If not set, always evaluates to true.
+ "day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
+ "month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
+ "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
+ },
+ "daysOfWeek": [ # Optional. Evaluates to true if this list is empty or if the current day of the week in the device's local time is in this list.
+ "A String",
+ ],
+ "timeOfDayLowerBound": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and google.protobuf.Timestamp. # Optional. A lower bound on the current time of the day, evaluated as hh:00:00 in the device time zone. Must specify only the hour (0-23). The policy will be rejected if minutes, seconds, or nanos are set. If not set, always evaluates to true.
+ "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
+ "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
+ "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
+ "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
+ },
+ "timeOfDayUpperBound": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and google.protobuf.Timestamp. # Optional. An upper bound on the current time of the day, evaluated as hh:00:00 in the device time zone. Must specify only the hour (0-23). The policy will be rejected if minutes, seconds, or nanos are set. If not set, always evaluates to true.The window closes at the specified hour (for example, a lower bound of 14 and an upper bound of 15 covers 14:00 to 15:00). When both bounds are set in the same rule, timeOfDayUpperBound must be strictly greater than timeOfDayLowerBound for the window to match; if timeOfDayUpperBound is less than or equal to timeOfDayLowerBound, the predicate evaluates to false. Setting timeOfDayUpperBound to 0 (00:00) evaluates to false for the entire day. To extend a window to the end of the day (24:00), omit timeOfDayUpperBound. To define an overnight window spanning midnight, use two rules: an evening rule with only timeOfDayLowerBound set and a morning rule with only timeOfDayUpperBound set (targeting the following day if daysOfWeek is set).
+ "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
+ "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
+ "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
+ "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
+ },
+ "updateAgeLowerBound": "A String", # Optional. A lower bound on the amount of time for which the update (that is, the specific build or version) has been available to the device. This must be a multiple of 24 hours.
+ "updateAgeUpperBound": "A String", # Optional. An upper bound on the amount of time for which the update has been available. If not set or set to zero, always evaluates to true. This must be a multiple of 24 hours.
+ },
+ "stages": [ # Optional. The stages at which the rule is evaluated. If this list is empty, the rule is evaluated at all stages. Specifying stages is supported only for OS_UPDATE_WITHOUT_API_LEVEL_CHANGE and OS_UPDATE_WITH_API_LEVEL_CHANGE. For SINGLE_APP, GOOGLE_SYSTEM_SERVICES, and GOOGLE_PLAY_SYSTEM_UPDATE, this field is ignored and the rule is evaluated at all stages.
+ "A String",
+ ],
+ "targets": [ # Required. Targets that this rule applies to. This can have multiple targets here for convenience, and that is equivalent to having multiple rules in sequence each having one target, in the same order in which targets are listed here. This list must not be empty and must not have duplicates.
+ { # A software component that can be updated.
+ "singleApp": { # Details of an app on Google System services. # Details of an app on Google System services.
+ "packageName": "A String", # Required. The package name of the app. This can only be an app which is a part of GOOGLE_SYSTEM_SERVICES.
+ },
+ "targetType": "A String", # Required. The type of software component that can be updated.
+ },
+ ],
+ },
+ ],
+ },
"uninstallAppsDisabled": True or False, # Whether user uninstallation of applications is disabled. This prevents apps from being uninstalled, even those removed using applications
"unmuteMicrophoneDisabled": True or False, # If microphone_access is set to any value other than MICROPHONE_ACCESS_UNSPECIFIED, this has no effect. Otherwise this field controls whether microphones are disabled: If true, all microphones are disabled, otherwise they are available. This is available only on fully managed devices.
"usageLog": { # Controls types of device activity logs collected from the device and reported via Pub/Sub notification (https://developers.google.com/android/management/notifications). # Optional. Configuration of device activity logging.
@@ -1271,6 +1377,9 @@ Method Details
"preferentialNetworkId": "A String", # Optional. ID of the preferential network the application uses. There must be a configuration for the specified network ID in preferentialNetworkServiceConfigs. If set to PREFERENTIAL_NETWORK_ID_UNSPECIFIED, the application will use the default network ID specified in defaultPreferentialNetworkId. See the documentation of defaultPreferentialNetworkId for the list of apps excluded from this defaulting. This applies on both work profiles and fully managed devices on Android 13 and above.
"roles": [ # Optional. Roles the app has.Apps having certain roles can be exempted from power and background execution restrictions, suspension and hibernation on Android 14 and above. The user control can also be disallowed for apps with certain roles on Android 11 and above. Refer to the documentation of each RoleType for more details.The app is notified about the roles that are set for it if the app has a notification receiver service with . The app is notified whenever its roles are updated or after the app is installed when it has nonempty list of roles. The app can use this notification to bootstrap itself after the installation. See Integrate with the AMAPI SDK (https://developers.google.com/android/management/sdk-integration) and Manage app roles (https://developers.google.com/android/management/app-roles) guides for more details on the requirements for the service.For the exemptions to be applied and the app to be notified about the roles, the signing key certificate fingerprint of the app on the device must match one of the signing key certificate fingerprints obtained from Play Store or one of the entries in ApplicationPolicy.signingKeyCerts. Otherwise, a NonComplianceDetail with APP_SIGNING_CERT_MISMATCH is reported.There must not be duplicate roles with the same roleType. Multiple apps cannot hold a role with the same roleType. A role with type ROLE_TYPE_UNSPECIFIED is not allowed.
{ # Role an app can have.
+ "extraCapabilities": { # Extra capabilities for a role. # Optional. Extra capabilities configured specifically for this role. Not all role types support or utilize extra capabilities.
+ "localDeviceWipeCommand": "A String", # Optional. Controls whether the companion app can perform local device wipe (https://developers.google.com/android/management/sdk-local-commands) using AMAPI SDK (https://developers.google.com/android/management/sdk-integration).
+ },
"roleType": "A String", # Required. The type of the role an app can have.
},
],
@@ -1375,6 +1484,9 @@ Method Details
"preferentialNetworkId": "A String", # Optional. ID of the preferential network the application uses. There must be a configuration for the specified network ID in preferentialNetworkServiceConfigs. If set to PREFERENTIAL_NETWORK_ID_UNSPECIFIED, the application will use the default network ID specified in defaultPreferentialNetworkId. See the documentation of defaultPreferentialNetworkId for the list of apps excluded from this defaulting. This applies on both work profiles and fully managed devices on Android 13 and above.
"roles": [ # Optional. Roles the app has.Apps having certain roles can be exempted from power and background execution restrictions, suspension and hibernation on Android 14 and above. The user control can also be disallowed for apps with certain roles on Android 11 and above. Refer to the documentation of each RoleType for more details.The app is notified about the roles that are set for it if the app has a notification receiver service with . The app is notified whenever its roles are updated or after the app is installed when it has nonempty list of roles. The app can use this notification to bootstrap itself after the installation. See Integrate with the AMAPI SDK (https://developers.google.com/android/management/sdk-integration) and Manage app roles (https://developers.google.com/android/management/app-roles) guides for more details on the requirements for the service.For the exemptions to be applied and the app to be notified about the roles, the signing key certificate fingerprint of the app on the device must match one of the signing key certificate fingerprints obtained from Play Store or one of the entries in ApplicationPolicy.signingKeyCerts. Otherwise, a NonComplianceDetail with APP_SIGNING_CERT_MISMATCH is reported.There must not be duplicate roles with the same roleType. Multiple apps cannot hold a role with the same roleType. A role with type ROLE_TYPE_UNSPECIFIED is not allowed.
{ # Role an app can have.
+ "extraCapabilities": { # Extra capabilities for a role. # Optional. Extra capabilities configured specifically for this role. Not all role types support or utilize extra capabilities.
+ "localDeviceWipeCommand": "A String", # Optional. Controls whether the companion app can perform local device wipe (https://developers.google.com/android/management/sdk-local-commands) using AMAPI SDK (https://developers.google.com/android/management/sdk-integration).
+ },
"roleType": "A String", # Required. The type of the role an app can have.
},
],
@@ -1788,6 +1900,56 @@ Method Details
"type": "A String", # The type of system update to configure.
},
"tetheringConfigDisabled": True or False, # Whether configuring tethering and portable hotspots is disabled. If tetheringSettings is set to anything other than TETHERING_SETTINGS_UNSPECIFIED, this setting is ignored.
+ "unifiedUpdatePolicy": { # The Unified Update Control policy, for controlling updates of software components on the device (see Target). Supported only on company-owned devices. # Optional. The Unified Update Control policy, for controlling updates of software components on the device. Supported only on company-owned devices.The targets OS_UPDATE_WITH_API_LEVEL_CHANGE and OS_UPDATE_WITHOUT_API_LEVEL_CHANGE are supported only on devices where the OEM has integrated with Unified Update Controls, and are ignored otherwise. If systemUpdate is set, then that policy takes precedence and the targets OS_UPDATE_WITH_API_LEVEL_CHANGE and OS_UPDATE_WITHOUT_API_LEVEL_CHANGE are ignored here.
+ "rules": [ # Optional. When the policy is evaluated for a given target, all rules which refer to that target are evaluated in sequence. The first rule for which the predicate evaluates to true is considered, and its outcome is used. If no rule matches, the default update behavior applies. In other words, this behaves like a chained if-else statement.However, if an update has been available for more than a certain amount of time, any outcome of BLOCK is automatically changed to the default update behavior. At most 100 rules are allowed.
+ { # A rule as a part of the Unified Update Control policy. See rules for how this is used.
+ "id": "A String", # Required. An EMM-defined identifier for this rule, of length at most 64 characters. This must not be empty. Within a UnifiedUpdatePolicy, different rules must have different ids.
+ "outcome": { # Determines how to proceed with the update. # Optional. Determines how to proceed with the update.
+ "outcomeType": "A String", # Optional. Determines how to proceed with the update.
+ },
+ "predicate": { # A predicate is something that can be evaluated on a device at any point of time, to return true or false. This is the conjunction (logical AND) of all the individual conditions defined here. An empty Predicate always evaluates to true. # Optional. The predicate of the rule, which can evaluate to true or false. See rules for how this is used. If not set, the predicate always evaluates to true.
+ "dateLowerBound": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: A full date, with non-zero year, month, and day values. A month and day, with a zero year (for example, an anniversary). A year on its own, with a zero month and a zero day. A year and month, with a zero day (for example, a credit card expiration date).Related types: google.type.TimeOfDay google.type.DateTime google.protobuf.Timestamp # Optional. A lower bound on the current date, in the device time zone. If not set, always evaluates to true.
+ "day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
+ "month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
+ "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
+ },
+ "dateUpperBound": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: A full date, with non-zero year, month, and day values. A month and day, with a zero year (for example, an anniversary). A year on its own, with a zero month and a zero day. A year and month, with a zero day (for example, a credit card expiration date).Related types: google.type.TimeOfDay google.type.DateTime google.protobuf.Timestamp # Optional. An upper bound on the current date, in the device time zone. If not set, always evaluates to true.
+ "day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
+ "month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
+ "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
+ },
+ "daysOfWeek": [ # Optional. Evaluates to true if this list is empty or if the current day of the week in the device's local time is in this list.
+ "A String",
+ ],
+ "timeOfDayLowerBound": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and google.protobuf.Timestamp. # Optional. A lower bound on the current time of the day, evaluated as hh:00:00 in the device time zone. Must specify only the hour (0-23). The policy will be rejected if minutes, seconds, or nanos are set. If not set, always evaluates to true.
+ "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
+ "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
+ "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
+ "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
+ },
+ "timeOfDayUpperBound": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and google.protobuf.Timestamp. # Optional. An upper bound on the current time of the day, evaluated as hh:00:00 in the device time zone. Must specify only the hour (0-23). The policy will be rejected if minutes, seconds, or nanos are set. If not set, always evaluates to true.The window closes at the specified hour (for example, a lower bound of 14 and an upper bound of 15 covers 14:00 to 15:00). When both bounds are set in the same rule, timeOfDayUpperBound must be strictly greater than timeOfDayLowerBound for the window to match; if timeOfDayUpperBound is less than or equal to timeOfDayLowerBound, the predicate evaluates to false. Setting timeOfDayUpperBound to 0 (00:00) evaluates to false for the entire day. To extend a window to the end of the day (24:00), omit timeOfDayUpperBound. To define an overnight window spanning midnight, use two rules: an evening rule with only timeOfDayLowerBound set and a morning rule with only timeOfDayUpperBound set (targeting the following day if daysOfWeek is set).
+ "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
+ "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
+ "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
+ "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
+ },
+ "updateAgeLowerBound": "A String", # Optional. A lower bound on the amount of time for which the update (that is, the specific build or version) has been available to the device. This must be a multiple of 24 hours.
+ "updateAgeUpperBound": "A String", # Optional. An upper bound on the amount of time for which the update has been available. If not set or set to zero, always evaluates to true. This must be a multiple of 24 hours.
+ },
+ "stages": [ # Optional. The stages at which the rule is evaluated. If this list is empty, the rule is evaluated at all stages. Specifying stages is supported only for OS_UPDATE_WITHOUT_API_LEVEL_CHANGE and OS_UPDATE_WITH_API_LEVEL_CHANGE. For SINGLE_APP, GOOGLE_SYSTEM_SERVICES, and GOOGLE_PLAY_SYSTEM_UPDATE, this field is ignored and the rule is evaluated at all stages.
+ "A String",
+ ],
+ "targets": [ # Required. Targets that this rule applies to. This can have multiple targets here for convenience, and that is equivalent to having multiple rules in sequence each having one target, in the same order in which targets are listed here. This list must not be empty and must not have duplicates.
+ { # A software component that can be updated.
+ "singleApp": { # Details of an app on Google System services. # Details of an app on Google System services.
+ "packageName": "A String", # Required. The package name of the app. This can only be an app which is a part of GOOGLE_SYSTEM_SERVICES.
+ },
+ "targetType": "A String", # Required. The type of software component that can be updated.
+ },
+ ],
+ },
+ ],
+ },
"uninstallAppsDisabled": True or False, # Whether user uninstallation of applications is disabled. This prevents apps from being uninstalled, even those removed using applications
"unmuteMicrophoneDisabled": True or False, # If microphone_access is set to any value other than MICROPHONE_ACCESS_UNSPECIFIED, this has no effect. Otherwise this field controls whether microphones are disabled: If true, all microphones are disabled, otherwise they are available. This is available only on fully managed devices.
"usageLog": { # Controls types of device activity logs collected from the device and reported via Pub/Sub notification (https://developers.google.com/android/management/notifications). # Optional. Configuration of device activity logging.
@@ -1903,6 +2065,9 @@ Method Details
"preferentialNetworkId": "A String", # Optional. ID of the preferential network the application uses. There must be a configuration for the specified network ID in preferentialNetworkServiceConfigs. If set to PREFERENTIAL_NETWORK_ID_UNSPECIFIED, the application will use the default network ID specified in defaultPreferentialNetworkId. See the documentation of defaultPreferentialNetworkId for the list of apps excluded from this defaulting. This applies on both work profiles and fully managed devices on Android 13 and above.
"roles": [ # Optional. Roles the app has.Apps having certain roles can be exempted from power and background execution restrictions, suspension and hibernation on Android 14 and above. The user control can also be disallowed for apps with certain roles on Android 11 and above. Refer to the documentation of each RoleType for more details.The app is notified about the roles that are set for it if the app has a notification receiver service with . The app is notified whenever its roles are updated or after the app is installed when it has nonempty list of roles. The app can use this notification to bootstrap itself after the installation. See Integrate with the AMAPI SDK (https://developers.google.com/android/management/sdk-integration) and Manage app roles (https://developers.google.com/android/management/app-roles) guides for more details on the requirements for the service.For the exemptions to be applied and the app to be notified about the roles, the signing key certificate fingerprint of the app on the device must match one of the signing key certificate fingerprints obtained from Play Store or one of the entries in ApplicationPolicy.signingKeyCerts. Otherwise, a NonComplianceDetail with APP_SIGNING_CERT_MISMATCH is reported.There must not be duplicate roles with the same roleType. Multiple apps cannot hold a role with the same roleType. A role with type ROLE_TYPE_UNSPECIFIED is not allowed.
{ # Role an app can have.
+ "extraCapabilities": { # Extra capabilities for a role. # Optional. Extra capabilities configured specifically for this role. Not all role types support or utilize extra capabilities.
+ "localDeviceWipeCommand": "A String", # Optional. Controls whether the companion app can perform local device wipe (https://developers.google.com/android/management/sdk-local-commands) using AMAPI SDK (https://developers.google.com/android/management/sdk-integration).
+ },
"roleType": "A String", # Required. The type of the role an app can have.
},
],
@@ -2316,6 +2481,56 @@ Method Details
"type": "A String", # The type of system update to configure.
},
"tetheringConfigDisabled": True or False, # Whether configuring tethering and portable hotspots is disabled. If tetheringSettings is set to anything other than TETHERING_SETTINGS_UNSPECIFIED, this setting is ignored.
+ "unifiedUpdatePolicy": { # The Unified Update Control policy, for controlling updates of software components on the device (see Target). Supported only on company-owned devices. # Optional. The Unified Update Control policy, for controlling updates of software components on the device. Supported only on company-owned devices.The targets OS_UPDATE_WITH_API_LEVEL_CHANGE and OS_UPDATE_WITHOUT_API_LEVEL_CHANGE are supported only on devices where the OEM has integrated with Unified Update Controls, and are ignored otherwise. If systemUpdate is set, then that policy takes precedence and the targets OS_UPDATE_WITH_API_LEVEL_CHANGE and OS_UPDATE_WITHOUT_API_LEVEL_CHANGE are ignored here.
+ "rules": [ # Optional. When the policy is evaluated for a given target, all rules which refer to that target are evaluated in sequence. The first rule for which the predicate evaluates to true is considered, and its outcome is used. If no rule matches, the default update behavior applies. In other words, this behaves like a chained if-else statement.However, if an update has been available for more than a certain amount of time, any outcome of BLOCK is automatically changed to the default update behavior. At most 100 rules are allowed.
+ { # A rule as a part of the Unified Update Control policy. See rules for how this is used.
+ "id": "A String", # Required. An EMM-defined identifier for this rule, of length at most 64 characters. This must not be empty. Within a UnifiedUpdatePolicy, different rules must have different ids.
+ "outcome": { # Determines how to proceed with the update. # Optional. Determines how to proceed with the update.
+ "outcomeType": "A String", # Optional. Determines how to proceed with the update.
+ },
+ "predicate": { # A predicate is something that can be evaluated on a device at any point of time, to return true or false. This is the conjunction (logical AND) of all the individual conditions defined here. An empty Predicate always evaluates to true. # Optional. The predicate of the rule, which can evaluate to true or false. See rules for how this is used. If not set, the predicate always evaluates to true.
+ "dateLowerBound": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: A full date, with non-zero year, month, and day values. A month and day, with a zero year (for example, an anniversary). A year on its own, with a zero month and a zero day. A year and month, with a zero day (for example, a credit card expiration date).Related types: google.type.TimeOfDay google.type.DateTime google.protobuf.Timestamp # Optional. A lower bound on the current date, in the device time zone. If not set, always evaluates to true.
+ "day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
+ "month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
+ "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
+ },
+ "dateUpperBound": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: A full date, with non-zero year, month, and day values. A month and day, with a zero year (for example, an anniversary). A year on its own, with a zero month and a zero day. A year and month, with a zero day (for example, a credit card expiration date).Related types: google.type.TimeOfDay google.type.DateTime google.protobuf.Timestamp # Optional. An upper bound on the current date, in the device time zone. If not set, always evaluates to true.
+ "day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
+ "month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
+ "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
+ },
+ "daysOfWeek": [ # Optional. Evaluates to true if this list is empty or if the current day of the week in the device's local time is in this list.
+ "A String",
+ ],
+ "timeOfDayLowerBound": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and google.protobuf.Timestamp. # Optional. A lower bound on the current time of the day, evaluated as hh:00:00 in the device time zone. Must specify only the hour (0-23). The policy will be rejected if minutes, seconds, or nanos are set. If not set, always evaluates to true.
+ "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
+ "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
+ "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
+ "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
+ },
+ "timeOfDayUpperBound": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and google.protobuf.Timestamp. # Optional. An upper bound on the current time of the day, evaluated as hh:00:00 in the device time zone. Must specify only the hour (0-23). The policy will be rejected if minutes, seconds, or nanos are set. If not set, always evaluates to true.The window closes at the specified hour (for example, a lower bound of 14 and an upper bound of 15 covers 14:00 to 15:00). When both bounds are set in the same rule, timeOfDayUpperBound must be strictly greater than timeOfDayLowerBound for the window to match; if timeOfDayUpperBound is less than or equal to timeOfDayLowerBound, the predicate evaluates to false. Setting timeOfDayUpperBound to 0 (00:00) evaluates to false for the entire day. To extend a window to the end of the day (24:00), omit timeOfDayUpperBound. To define an overnight window spanning midnight, use two rules: an evening rule with only timeOfDayLowerBound set and a morning rule with only timeOfDayUpperBound set (targeting the following day if daysOfWeek is set).
+ "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
+ "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
+ "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
+ "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
+ },
+ "updateAgeLowerBound": "A String", # Optional. A lower bound on the amount of time for which the update (that is, the specific build or version) has been available to the device. This must be a multiple of 24 hours.
+ "updateAgeUpperBound": "A String", # Optional. An upper bound on the amount of time for which the update has been available. If not set or set to zero, always evaluates to true. This must be a multiple of 24 hours.
+ },
+ "stages": [ # Optional. The stages at which the rule is evaluated. If this list is empty, the rule is evaluated at all stages. Specifying stages is supported only for OS_UPDATE_WITHOUT_API_LEVEL_CHANGE and OS_UPDATE_WITH_API_LEVEL_CHANGE. For SINGLE_APP, GOOGLE_SYSTEM_SERVICES, and GOOGLE_PLAY_SYSTEM_UPDATE, this field is ignored and the rule is evaluated at all stages.
+ "A String",
+ ],
+ "targets": [ # Required. Targets that this rule applies to. This can have multiple targets here for convenience, and that is equivalent to having multiple rules in sequence each having one target, in the same order in which targets are listed here. This list must not be empty and must not have duplicates.
+ { # A software component that can be updated.
+ "singleApp": { # Details of an app on Google System services. # Details of an app on Google System services.
+ "packageName": "A String", # Required. The package name of the app. This can only be an app which is a part of GOOGLE_SYSTEM_SERVICES.
+ },
+ "targetType": "A String", # Required. The type of software component that can be updated.
+ },
+ ],
+ },
+ ],
+ },
"uninstallAppsDisabled": True or False, # Whether user uninstallation of applications is disabled. This prevents apps from being uninstalled, even those removed using applications
"unmuteMicrophoneDisabled": True or False, # If microphone_access is set to any value other than MICROPHONE_ACCESS_UNSPECIFIED, this has no effect. Otherwise this field controls whether microphones are disabled: If true, all microphones are disabled, otherwise they are available. This is available only on fully managed devices.
"usageLog": { # Controls types of device activity logs collected from the device and reported via Pub/Sub notification (https://developers.google.com/android/management/notifications). # Optional. Configuration of device activity logging.
@@ -2429,6 +2644,9 @@ Method Details
"preferentialNetworkId": "A String", # Optional. ID of the preferential network the application uses. There must be a configuration for the specified network ID in preferentialNetworkServiceConfigs. If set to PREFERENTIAL_NETWORK_ID_UNSPECIFIED, the application will use the default network ID specified in defaultPreferentialNetworkId. See the documentation of defaultPreferentialNetworkId for the list of apps excluded from this defaulting. This applies on both work profiles and fully managed devices on Android 13 and above.
"roles": [ # Optional. Roles the app has.Apps having certain roles can be exempted from power and background execution restrictions, suspension and hibernation on Android 14 and above. The user control can also be disallowed for apps with certain roles on Android 11 and above. Refer to the documentation of each RoleType for more details.The app is notified about the roles that are set for it if the app has a notification receiver service with . The app is notified whenever its roles are updated or after the app is installed when it has nonempty list of roles. The app can use this notification to bootstrap itself after the installation. See Integrate with the AMAPI SDK (https://developers.google.com/android/management/sdk-integration) and Manage app roles (https://developers.google.com/android/management/app-roles) guides for more details on the requirements for the service.For the exemptions to be applied and the app to be notified about the roles, the signing key certificate fingerprint of the app on the device must match one of the signing key certificate fingerprints obtained from Play Store or one of the entries in ApplicationPolicy.signingKeyCerts. Otherwise, a NonComplianceDetail with APP_SIGNING_CERT_MISMATCH is reported.There must not be duplicate roles with the same roleType. Multiple apps cannot hold a role with the same roleType. A role with type ROLE_TYPE_UNSPECIFIED is not allowed.
{ # Role an app can have.
+ "extraCapabilities": { # Extra capabilities for a role. # Optional. Extra capabilities configured specifically for this role. Not all role types support or utilize extra capabilities.
+ "localDeviceWipeCommand": "A String", # Optional. Controls whether the companion app can perform local device wipe (https://developers.google.com/android/management/sdk-local-commands) using AMAPI SDK (https://developers.google.com/android/management/sdk-integration).
+ },
"roleType": "A String", # Required. The type of the role an app can have.
},
],
@@ -2842,6 +3060,56 @@ Method Details
"type": "A String", # The type of system update to configure.
},
"tetheringConfigDisabled": True or False, # Whether configuring tethering and portable hotspots is disabled. If tetheringSettings is set to anything other than TETHERING_SETTINGS_UNSPECIFIED, this setting is ignored.
+ "unifiedUpdatePolicy": { # The Unified Update Control policy, for controlling updates of software components on the device (see Target). Supported only on company-owned devices. # Optional. The Unified Update Control policy, for controlling updates of software components on the device. Supported only on company-owned devices.The targets OS_UPDATE_WITH_API_LEVEL_CHANGE and OS_UPDATE_WITHOUT_API_LEVEL_CHANGE are supported only on devices where the OEM has integrated with Unified Update Controls, and are ignored otherwise. If systemUpdate is set, then that policy takes precedence and the targets OS_UPDATE_WITH_API_LEVEL_CHANGE and OS_UPDATE_WITHOUT_API_LEVEL_CHANGE are ignored here.
+ "rules": [ # Optional. When the policy is evaluated for a given target, all rules which refer to that target are evaluated in sequence. The first rule for which the predicate evaluates to true is considered, and its outcome is used. If no rule matches, the default update behavior applies. In other words, this behaves like a chained if-else statement.However, if an update has been available for more than a certain amount of time, any outcome of BLOCK is automatically changed to the default update behavior. At most 100 rules are allowed.
+ { # A rule as a part of the Unified Update Control policy. See rules for how this is used.
+ "id": "A String", # Required. An EMM-defined identifier for this rule, of length at most 64 characters. This must not be empty. Within a UnifiedUpdatePolicy, different rules must have different ids.
+ "outcome": { # Determines how to proceed with the update. # Optional. Determines how to proceed with the update.
+ "outcomeType": "A String", # Optional. Determines how to proceed with the update.
+ },
+ "predicate": { # A predicate is something that can be evaluated on a device at any point of time, to return true or false. This is the conjunction (logical AND) of all the individual conditions defined here. An empty Predicate always evaluates to true. # Optional. The predicate of the rule, which can evaluate to true or false. See rules for how this is used. If not set, the predicate always evaluates to true.
+ "dateLowerBound": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: A full date, with non-zero year, month, and day values. A month and day, with a zero year (for example, an anniversary). A year on its own, with a zero month and a zero day. A year and month, with a zero day (for example, a credit card expiration date).Related types: google.type.TimeOfDay google.type.DateTime google.protobuf.Timestamp # Optional. A lower bound on the current date, in the device time zone. If not set, always evaluates to true.
+ "day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
+ "month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
+ "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
+ },
+ "dateUpperBound": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: A full date, with non-zero year, month, and day values. A month and day, with a zero year (for example, an anniversary). A year on its own, with a zero month and a zero day. A year and month, with a zero day (for example, a credit card expiration date).Related types: google.type.TimeOfDay google.type.DateTime google.protobuf.Timestamp # Optional. An upper bound on the current date, in the device time zone. If not set, always evaluates to true.
+ "day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
+ "month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
+ "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
+ },
+ "daysOfWeek": [ # Optional. Evaluates to true if this list is empty or if the current day of the week in the device's local time is in this list.
+ "A String",
+ ],
+ "timeOfDayLowerBound": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and google.protobuf.Timestamp. # Optional. A lower bound on the current time of the day, evaluated as hh:00:00 in the device time zone. Must specify only the hour (0-23). The policy will be rejected if minutes, seconds, or nanos are set. If not set, always evaluates to true.
+ "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
+ "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
+ "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
+ "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
+ },
+ "timeOfDayUpperBound": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and google.protobuf.Timestamp. # Optional. An upper bound on the current time of the day, evaluated as hh:00:00 in the device time zone. Must specify only the hour (0-23). The policy will be rejected if minutes, seconds, or nanos are set. If not set, always evaluates to true.The window closes at the specified hour (for example, a lower bound of 14 and an upper bound of 15 covers 14:00 to 15:00). When both bounds are set in the same rule, timeOfDayUpperBound must be strictly greater than timeOfDayLowerBound for the window to match; if timeOfDayUpperBound is less than or equal to timeOfDayLowerBound, the predicate evaluates to false. Setting timeOfDayUpperBound to 0 (00:00) evaluates to false for the entire day. To extend a window to the end of the day (24:00), omit timeOfDayUpperBound. To define an overnight window spanning midnight, use two rules: an evening rule with only timeOfDayLowerBound set and a morning rule with only timeOfDayUpperBound set (targeting the following day if daysOfWeek is set).
+ "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
+ "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
+ "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
+ "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
+ },
+ "updateAgeLowerBound": "A String", # Optional. A lower bound on the amount of time for which the update (that is, the specific build or version) has been available to the device. This must be a multiple of 24 hours.
+ "updateAgeUpperBound": "A String", # Optional. An upper bound on the amount of time for which the update has been available. If not set or set to zero, always evaluates to true. This must be a multiple of 24 hours.
+ },
+ "stages": [ # Optional. The stages at which the rule is evaluated. If this list is empty, the rule is evaluated at all stages. Specifying stages is supported only for OS_UPDATE_WITHOUT_API_LEVEL_CHANGE and OS_UPDATE_WITH_API_LEVEL_CHANGE. For SINGLE_APP, GOOGLE_SYSTEM_SERVICES, and GOOGLE_PLAY_SYSTEM_UPDATE, this field is ignored and the rule is evaluated at all stages.
+ "A String",
+ ],
+ "targets": [ # Required. Targets that this rule applies to. This can have multiple targets here for convenience, and that is equivalent to having multiple rules in sequence each having one target, in the same order in which targets are listed here. This list must not be empty and must not have duplicates.
+ { # A software component that can be updated.
+ "singleApp": { # Details of an app on Google System services. # Details of an app on Google System services.
+ "packageName": "A String", # Required. The package name of the app. This can only be an app which is a part of GOOGLE_SYSTEM_SERVICES.
+ },
+ "targetType": "A String", # Required. The type of software component that can be updated.
+ },
+ ],
+ },
+ ],
+ },
"uninstallAppsDisabled": True or False, # Whether user uninstallation of applications is disabled. This prevents apps from being uninstalled, even those removed using applications
"unmuteMicrophoneDisabled": True or False, # If microphone_access is set to any value other than MICROPHONE_ACCESS_UNSPECIFIED, this has no effect. Otherwise this field controls whether microphones are disabled: If true, all microphones are disabled, otherwise they are available. This is available only on fully managed devices.
"usageLog": { # Controls types of device activity logs collected from the device and reported via Pub/Sub notification (https://developers.google.com/android/management/notifications). # Optional. Configuration of device activity logging.
@@ -2971,6 +3239,9 @@ Method Details
"preferentialNetworkId": "A String", # Optional. ID of the preferential network the application uses. There must be a configuration for the specified network ID in preferentialNetworkServiceConfigs. If set to PREFERENTIAL_NETWORK_ID_UNSPECIFIED, the application will use the default network ID specified in defaultPreferentialNetworkId. See the documentation of defaultPreferentialNetworkId for the list of apps excluded from this defaulting. This applies on both work profiles and fully managed devices on Android 13 and above.
"roles": [ # Optional. Roles the app has.Apps having certain roles can be exempted from power and background execution restrictions, suspension and hibernation on Android 14 and above. The user control can also be disallowed for apps with certain roles on Android 11 and above. Refer to the documentation of each RoleType for more details.The app is notified about the roles that are set for it if the app has a notification receiver service with . The app is notified whenever its roles are updated or after the app is installed when it has nonempty list of roles. The app can use this notification to bootstrap itself after the installation. See Integrate with the AMAPI SDK (https://developers.google.com/android/management/sdk-integration) and Manage app roles (https://developers.google.com/android/management/app-roles) guides for more details on the requirements for the service.For the exemptions to be applied and the app to be notified about the roles, the signing key certificate fingerprint of the app on the device must match one of the signing key certificate fingerprints obtained from Play Store or one of the entries in ApplicationPolicy.signingKeyCerts. Otherwise, a NonComplianceDetail with APP_SIGNING_CERT_MISMATCH is reported.There must not be duplicate roles with the same roleType. Multiple apps cannot hold a role with the same roleType. A role with type ROLE_TYPE_UNSPECIFIED is not allowed.
{ # Role an app can have.
+ "extraCapabilities": { # Extra capabilities for a role. # Optional. Extra capabilities configured specifically for this role. Not all role types support or utilize extra capabilities.
+ "localDeviceWipeCommand": "A String", # Optional. Controls whether the companion app can perform local device wipe (https://developers.google.com/android/management/sdk-local-commands) using AMAPI SDK (https://developers.google.com/android/management/sdk-integration).
+ },
"roleType": "A String", # Required. The type of the role an app can have.
},
],
@@ -3384,6 +3655,56 @@ Method Details
"type": "A String", # The type of system update to configure.
},
"tetheringConfigDisabled": True or False, # Whether configuring tethering and portable hotspots is disabled. If tetheringSettings is set to anything other than TETHERING_SETTINGS_UNSPECIFIED, this setting is ignored.
+ "unifiedUpdatePolicy": { # The Unified Update Control policy, for controlling updates of software components on the device (see Target). Supported only on company-owned devices. # Optional. The Unified Update Control policy, for controlling updates of software components on the device. Supported only on company-owned devices.The targets OS_UPDATE_WITH_API_LEVEL_CHANGE and OS_UPDATE_WITHOUT_API_LEVEL_CHANGE are supported only on devices where the OEM has integrated with Unified Update Controls, and are ignored otherwise. If systemUpdate is set, then that policy takes precedence and the targets OS_UPDATE_WITH_API_LEVEL_CHANGE and OS_UPDATE_WITHOUT_API_LEVEL_CHANGE are ignored here.
+ "rules": [ # Optional. When the policy is evaluated for a given target, all rules which refer to that target are evaluated in sequence. The first rule for which the predicate evaluates to true is considered, and its outcome is used. If no rule matches, the default update behavior applies. In other words, this behaves like a chained if-else statement.However, if an update has been available for more than a certain amount of time, any outcome of BLOCK is automatically changed to the default update behavior. At most 100 rules are allowed.
+ { # A rule as a part of the Unified Update Control policy. See rules for how this is used.
+ "id": "A String", # Required. An EMM-defined identifier for this rule, of length at most 64 characters. This must not be empty. Within a UnifiedUpdatePolicy, different rules must have different ids.
+ "outcome": { # Determines how to proceed with the update. # Optional. Determines how to proceed with the update.
+ "outcomeType": "A String", # Optional. Determines how to proceed with the update.
+ },
+ "predicate": { # A predicate is something that can be evaluated on a device at any point of time, to return true or false. This is the conjunction (logical AND) of all the individual conditions defined here. An empty Predicate always evaluates to true. # Optional. The predicate of the rule, which can evaluate to true or false. See rules for how this is used. If not set, the predicate always evaluates to true.
+ "dateLowerBound": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: A full date, with non-zero year, month, and day values. A month and day, with a zero year (for example, an anniversary). A year on its own, with a zero month and a zero day. A year and month, with a zero day (for example, a credit card expiration date).Related types: google.type.TimeOfDay google.type.DateTime google.protobuf.Timestamp # Optional. A lower bound on the current date, in the device time zone. If not set, always evaluates to true.
+ "day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
+ "month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
+ "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
+ },
+ "dateUpperBound": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: A full date, with non-zero year, month, and day values. A month and day, with a zero year (for example, an anniversary). A year on its own, with a zero month and a zero day. A year and month, with a zero day (for example, a credit card expiration date).Related types: google.type.TimeOfDay google.type.DateTime google.protobuf.Timestamp # Optional. An upper bound on the current date, in the device time zone. If not set, always evaluates to true.
+ "day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
+ "month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
+ "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
+ },
+ "daysOfWeek": [ # Optional. Evaluates to true if this list is empty or if the current day of the week in the device's local time is in this list.
+ "A String",
+ ],
+ "timeOfDayLowerBound": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and google.protobuf.Timestamp. # Optional. A lower bound on the current time of the day, evaluated as hh:00:00 in the device time zone. Must specify only the hour (0-23). The policy will be rejected if minutes, seconds, or nanos are set. If not set, always evaluates to true.
+ "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
+ "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
+ "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
+ "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
+ },
+ "timeOfDayUpperBound": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and google.protobuf.Timestamp. # Optional. An upper bound on the current time of the day, evaluated as hh:00:00 in the device time zone. Must specify only the hour (0-23). The policy will be rejected if minutes, seconds, or nanos are set. If not set, always evaluates to true.The window closes at the specified hour (for example, a lower bound of 14 and an upper bound of 15 covers 14:00 to 15:00). When both bounds are set in the same rule, timeOfDayUpperBound must be strictly greater than timeOfDayLowerBound for the window to match; if timeOfDayUpperBound is less than or equal to timeOfDayLowerBound, the predicate evaluates to false. Setting timeOfDayUpperBound to 0 (00:00) evaluates to false for the entire day. To extend a window to the end of the day (24:00), omit timeOfDayUpperBound. To define an overnight window spanning midnight, use two rules: an evening rule with only timeOfDayLowerBound set and a morning rule with only timeOfDayUpperBound set (targeting the following day if daysOfWeek is set).
+ "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
+ "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
+ "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
+ "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
+ },
+ "updateAgeLowerBound": "A String", # Optional. A lower bound on the amount of time for which the update (that is, the specific build or version) has been available to the device. This must be a multiple of 24 hours.
+ "updateAgeUpperBound": "A String", # Optional. An upper bound on the amount of time for which the update has been available. If not set or set to zero, always evaluates to true. This must be a multiple of 24 hours.
+ },
+ "stages": [ # Optional. The stages at which the rule is evaluated. If this list is empty, the rule is evaluated at all stages. Specifying stages is supported only for OS_UPDATE_WITHOUT_API_LEVEL_CHANGE and OS_UPDATE_WITH_API_LEVEL_CHANGE. For SINGLE_APP, GOOGLE_SYSTEM_SERVICES, and GOOGLE_PLAY_SYSTEM_UPDATE, this field is ignored and the rule is evaluated at all stages.
+ "A String",
+ ],
+ "targets": [ # Required. Targets that this rule applies to. This can have multiple targets here for convenience, and that is equivalent to having multiple rules in sequence each having one target, in the same order in which targets are listed here. This list must not be empty and must not have duplicates.
+ { # A software component that can be updated.
+ "singleApp": { # Details of an app on Google System services. # Details of an app on Google System services.
+ "packageName": "A String", # Required. The package name of the app. This can only be an app which is a part of GOOGLE_SYSTEM_SERVICES.
+ },
+ "targetType": "A String", # Required. The type of software component that can be updated.
+ },
+ ],
+ },
+ ],
+ },
"uninstallAppsDisabled": True or False, # Whether user uninstallation of applications is disabled. This prevents apps from being uninstalled, even those removed using applications
"unmuteMicrophoneDisabled": True or False, # If microphone_access is set to any value other than MICROPHONE_ACCESS_UNSPECIFIED, this has no effect. Otherwise this field controls whether microphones are disabled: If true, all microphones are disabled, otherwise they are available. This is available only on fully managed devices.
"usageLog": { # Controls types of device activity logs collected from the device and reported via Pub/Sub notification (https://developers.google.com/android/management/notifications). # Optional. Configuration of device activity logging.
diff --git a/docs/dyn/androidpublisher_v3.monetization.onetimeproducts.html b/docs/dyn/androidpublisher_v3.monetization.onetimeproducts.html
index fc6fe2e7d2..340bd9c0e3 100644
--- a/docs/dyn/androidpublisher_v3.monetization.onetimeproducts.html
+++ b/docs/dyn/androidpublisher_v3.monetization.onetimeproducts.html
@@ -112,7 +112,7 @@ Method Details
Deletes one or more one-time products.
Args:
- packageName: string, Required. The parent app (package name) for which the one-time products should be deleted. Must be equal to the package_name field on all the OneTimeProduct resources. (required)
+ packageName: string, Required. The parent app (package name) for which the one-time products should be deleted. Must be equal to the package_name field on all the requests. (required)
body: object, The request body.
The object takes the form of:
@@ -138,7 +138,7 @@ Method Details
Reads one or more one-time products.
Args:
- packageName: string, Required. The parent app (package name) for which the products should be retrieved. Must be equal to the package_name field on all requests. (required)
+ packageName: string, Required. The parent app (package name) for which the products should be retrieved. (required)
productIds: string, Required. A list of up to 100 product IDs to retrieve. All IDs must be different. (repeated)
x__xgafv: string, V1 error format.
Allowed values
diff --git a/docs/dyn/androidpublisher_v3.monetization.onetimeproducts.purchaseOptions.offers.html b/docs/dyn/androidpublisher_v3.monetization.onetimeproducts.purchaseOptions.offers.html
index 9524caec84..25b0d3b9a5 100644
--- a/docs/dyn/androidpublisher_v3.monetization.onetimeproducts.purchaseOptions.offers.html
+++ b/docs/dyn/androidpublisher_v3.monetization.onetimeproducts.purchaseOptions.offers.html
@@ -183,14 +183,14 @@ Method Details
Deletes one or more one-time product offers.
Args:
- packageName: string, Required. The parent app (package name) of the offers to delete. Must be equal to the package_name field on all the OneTimeProductOffer resources. (required)
+ packageName: string, Required. The parent app (package name) of the offers to delete. Must be equal to the package_name field on all the requests. (required)
productId: string, Required. The product ID of the parent one-time product, if all offers to delete belong to the same product. If this request spans multiple one-time products, set this field to "-". (required)
- purchaseOptionId: string, Required. The parent purchase option (ID) for which the offers should be deleted. May be specified as '-' to update offers from multiple purchase options. (required)
+ purchaseOptionId: string, Required. The parent purchase option (ID) for which the offers should be deleted. May be specified as '-' to delete offers from multiple purchase options. (required)
body: object, The request body.
The object takes the form of:
{ # Request message for BatchDeleteOneTimeProductOffers.
- "requests": [ # Required. A list of update requests of up to 100 elements. All requests must correspond to different offers.
+ "requests": [ # Required. A list of delete requests of up to 100 elements. All requests must correspond to different offers.
{ # Request message for deleting an one-time product offer.
"latencyTolerance": "A String", # Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive.
"offerId": "A String", # Required. The unique offer ID of the offer to delete.
@@ -213,9 +213,9 @@ Method Details
Reads one or more one-time product offers.
Args:
- packageName: string, Required. The parent app (package name) of the updated offers. Must be equal to the package_name field on all the updated OneTimeProductOffer resources. (required)
- productId: string, Required. The product ID of the parent one-time product, if all updated offers belong to the same product. If this request spans multiple one-time products, set this field to "-". (required)
- purchaseOptionId: string, Required. The parent purchase option (ID) for which the offers should be updated. May be specified as '-' to update offers from multiple purchase options. (required)
+ packageName: string, Required. The parent app (package name) of the offers to retrieve. Must be equal to the package_name field on all the requests. (required)
+ productId: string, Required. The product ID of the parent one-time product, if all offers belong to the same product. If this request spans multiple one-time products, set this field to "-". (required)
+ purchaseOptionId: string, Required. The parent purchase option (ID) for which the offers should be retrieved. May be specified as '-' to retrieve offers from multiple purchase options. (required)
body: object, The request body.
The object takes the form of:
@@ -239,7 +239,7 @@ Method Details
An object of the form:
{ # Response message for the BatchGetOneTimeProductOffers endpoint.
- "oneTimeProductOffers": [ # The list of updated one-time product offers, in the same order as the request.
+ "oneTimeProductOffers": [ # The list of requested one-time product offers, in the same order as the request.
{ # A single offer for a one-time product.
"discountedOffer": { # Configuration specific to discounted offers. # A discounted offer.
"endTime": "A String", # Time when the offer will stop being available.
@@ -439,7 +439,7 @@ Method Details
"productId": "A String", # Required. The parent one-time product (ID) of the offer to cancel.
"purchaseOptionId": "A String", # Required. The parent purchase option (ID) of the offer to cancel.
},
- "deactivateOneTimeProductOfferRequest": { # Request message for DeactivateOneTimeProductOffer. # Deactivates an offer. Once deactivated, the offer is no longer available to users. This state transition is specific to discounted offers.
+ "deactivateOneTimeProductOfferRequest": { # Request message for DeactivateOneTimeProductOffer. # Deactivates an offer. Once deactivated, the offer is no longer available to users. This state transition is specific to discounted and game reward offers.
"latencyTolerance": "A String", # Optional. The latency tolerance for the propagation of this update. Defaults to latency-sensitive.
"offerId": "A String", # Required. The offer ID of the offer to deactivate.
"packageName": "A String", # Required. The parent app (package name) of the offer to deactivate.
@@ -667,7 +667,7 @@ Method Details
productId: string, Required. The parent one-time product (ID) for which the offers should be read. May be specified as '-' to read all offers under an app. (required)
purchaseOptionId: string, Required. The parent purchase option (ID) for which the offers should be read. May be specified as '-' to read all offers under a one-time product or an app. Must be specified as '-' if product_id is specified as '-'. (required)
pageSize: integer, Optional. The maximum number of offers to return. The service may return fewer than this value. If unspecified, at most 50 offers will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.
- pageToken: string, Optional. A page token, received from a previous `ListOneTimeProductsOffers` call. Provide this to retrieve the subsequent page. When paginating, product_id, package_name and purchase_option_id provided to `ListOneTimeProductsOffersRequest` must match the call that provided the page token.
+ pageToken: string, Optional. A page token, received from a previous `ListOneTimeProductOffers` call. Provide this to retrieve the subsequent page. When paginating, product_id, package_name and purchase_option_id provided to `ListOneTimeProductOffersRequest` must match the call that provided the page token.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
diff --git a/docs/dyn/appengine_v1.apps.services.versions.html b/docs/dyn/appengine_v1.apps.services.versions.html
index c6cc9e3fc9..e3d13d2bfd 100644
--- a/docs/dyn/appengine_v1.apps.services.versions.html
+++ b/docs/dyn/appengine_v1.apps.services.versions.html
@@ -329,6 +329,18 @@ Method Details
"threadsafe": True or False, # Whether multiple requests can be dispatched to this version at once.
"versionUrl": "A String", # Output only. Serving URL for this version. Example: "https://myversion-dot-myservice-dot-myapp.appspot.com"@OutputOnly
"vm": True or False, # Whether to deploy this version in a container on a virtual machine.
+ "vpcAccess": { # VPC Access settings # Enables VPC access connectivity for standard apps.
+ "networkInterfaces": [ # The Direct VPC configuration. Currently only single network interface is supported.
+ { # Network interface key message.
+ "network": "A String", # Optional. The VPC network that the App Engine resource will be able to send traffic to. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If network is not specified, it will be looked up from the subnetwork. Could be either a short name or a full path. e.g. {VPC_NETWORK} or projects/{HOST_PROJECT_ID}/global/networks/{VPC_NETWORK}
+ "subnet": "A String", # Optional. The VPC subnetwork that the App Engine resource will get IPs from. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If subnetwork is not specified, the subnetwork with the same name with the network will be used. Could be either a short name or a full path. e.g. {SUBNET_NAME} or projects/{HOST_PROJECT_ID}/regions/{REGION}/subnetworks/{SUBNET_NAME}
+ "tags": [ # Optional. The network tags that will be applied to this App Engine resource.
+ "A String",
+ ],
+ },
+ ],
+ "vpcEgress": "A String", # The traffic egress setting for the VPC network interface, controlling what traffic is diverted through it.
+ },
"vpcAccessConnector": { # VPC access connector specification. # Enables VPC connectivity for standard apps.
"egressSetting": "A String", # The egress setting for the connector, controlling what traffic is diverted through it.
"name": "A String", # Full Serverless VPC Access Connector name e.g. projects/my-project/locations/us-central1/connectors/c1.
@@ -678,6 +690,18 @@ Method Details
"threadsafe": True or False, # Whether multiple requests can be dispatched to this version at once.
"versionUrl": "A String", # Output only. Serving URL for this version. Example: "https://myversion-dot-myservice-dot-myapp.appspot.com"@OutputOnly
"vm": True or False, # Whether to deploy this version in a container on a virtual machine.
+ "vpcAccess": { # VPC Access settings # Enables VPC access connectivity for standard apps.
+ "networkInterfaces": [ # The Direct VPC configuration. Currently only single network interface is supported.
+ { # Network interface key message.
+ "network": "A String", # Optional. The VPC network that the App Engine resource will be able to send traffic to. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If network is not specified, it will be looked up from the subnetwork. Could be either a short name or a full path. e.g. {VPC_NETWORK} or projects/{HOST_PROJECT_ID}/global/networks/{VPC_NETWORK}
+ "subnet": "A String", # Optional. The VPC subnetwork that the App Engine resource will get IPs from. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If subnetwork is not specified, the subnetwork with the same name with the network will be used. Could be either a short name or a full path. e.g. {SUBNET_NAME} or projects/{HOST_PROJECT_ID}/regions/{REGION}/subnetworks/{SUBNET_NAME}
+ "tags": [ # Optional. The network tags that will be applied to this App Engine resource.
+ "A String",
+ ],
+ },
+ ],
+ "vpcEgress": "A String", # The traffic egress setting for the VPC network interface, controlling what traffic is diverted through it.
+ },
"vpcAccessConnector": { # VPC access connector specification. # Enables VPC connectivity for standard apps.
"egressSetting": "A String", # The egress setting for the connector, controlling what traffic is diverted through it.
"name": "A String", # Full Serverless VPC Access Connector name e.g. projects/my-project/locations/us-central1/connectors/c1.
@@ -922,6 +946,18 @@ Method Details
"threadsafe": True or False, # Whether multiple requests can be dispatched to this version at once.
"versionUrl": "A String", # Output only. Serving URL for this version. Example: "https://myversion-dot-myservice-dot-myapp.appspot.com"@OutputOnly
"vm": True or False, # Whether to deploy this version in a container on a virtual machine.
+ "vpcAccess": { # VPC Access settings # Enables VPC access connectivity for standard apps.
+ "networkInterfaces": [ # The Direct VPC configuration. Currently only single network interface is supported.
+ { # Network interface key message.
+ "network": "A String", # Optional. The VPC network that the App Engine resource will be able to send traffic to. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If network is not specified, it will be looked up from the subnetwork. Could be either a short name or a full path. e.g. {VPC_NETWORK} or projects/{HOST_PROJECT_ID}/global/networks/{VPC_NETWORK}
+ "subnet": "A String", # Optional. The VPC subnetwork that the App Engine resource will get IPs from. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If subnetwork is not specified, the subnetwork with the same name with the network will be used. Could be either a short name or a full path. e.g. {SUBNET_NAME} or projects/{HOST_PROJECT_ID}/regions/{REGION}/subnetworks/{SUBNET_NAME}
+ "tags": [ # Optional. The network tags that will be applied to this App Engine resource.
+ "A String",
+ ],
+ },
+ ],
+ "vpcEgress": "A String", # The traffic egress setting for the VPC network interface, controlling what traffic is diverted through it.
+ },
"vpcAccessConnector": { # VPC access connector specification. # Enables VPC connectivity for standard apps.
"egressSetting": "A String", # The egress setting for the connector, controlling what traffic is diverted through it.
"name": "A String", # Full Serverless VPC Access Connector name e.g. projects/my-project/locations/us-central1/connectors/c1.
@@ -1169,6 +1205,18 @@ Method Details
"threadsafe": True or False, # Whether multiple requests can be dispatched to this version at once.
"versionUrl": "A String", # Output only. Serving URL for this version. Example: "https://myversion-dot-myservice-dot-myapp.appspot.com"@OutputOnly
"vm": True or False, # Whether to deploy this version in a container on a virtual machine.
+ "vpcAccess": { # VPC Access settings # Enables VPC access connectivity for standard apps.
+ "networkInterfaces": [ # The Direct VPC configuration. Currently only single network interface is supported.
+ { # Network interface key message.
+ "network": "A String", # Optional. The VPC network that the App Engine resource will be able to send traffic to. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If network is not specified, it will be looked up from the subnetwork. Could be either a short name or a full path. e.g. {VPC_NETWORK} or projects/{HOST_PROJECT_ID}/global/networks/{VPC_NETWORK}
+ "subnet": "A String", # Optional. The VPC subnetwork that the App Engine resource will get IPs from. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If subnetwork is not specified, the subnetwork with the same name with the network will be used. Could be either a short name or a full path. e.g. {SUBNET_NAME} or projects/{HOST_PROJECT_ID}/regions/{REGION}/subnetworks/{SUBNET_NAME}
+ "tags": [ # Optional. The network tags that will be applied to this App Engine resource.
+ "A String",
+ ],
+ },
+ ],
+ "vpcEgress": "A String", # The traffic egress setting for the VPC network interface, controlling what traffic is diverted through it.
+ },
"vpcAccessConnector": { # VPC access connector specification. # Enables VPC connectivity for standard apps.
"egressSetting": "A String", # The egress setting for the connector, controlling what traffic is diverted through it.
"name": "A String", # Full Serverless VPC Access Connector name e.g. projects/my-project/locations/us-central1/connectors/c1.
diff --git a/docs/dyn/appengine_v1.projects.locations.applications.services.versions.html b/docs/dyn/appengine_v1.projects.locations.applications.services.versions.html
index ab9e2ebb50..83a5259a43 100644
--- a/docs/dyn/appengine_v1.projects.locations.applications.services.versions.html
+++ b/docs/dyn/appengine_v1.projects.locations.applications.services.versions.html
@@ -405,6 +405,18 @@ Method Details
"threadsafe": True or False, # Whether multiple requests can be dispatched to this version at once.
"versionUrl": "A String", # Output only. Serving URL for this version. Example: "https://myversion-dot-myservice-dot-myapp.appspot.com"@OutputOnly
"vm": True or False, # Whether to deploy this version in a container on a virtual machine.
+ "vpcAccess": { # VPC Access settings # Enables VPC access connectivity for standard apps.
+ "networkInterfaces": [ # The Direct VPC configuration. Currently only single network interface is supported.
+ { # Network interface key message.
+ "network": "A String", # Optional. The VPC network that the App Engine resource will be able to send traffic to. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If network is not specified, it will be looked up from the subnetwork. Could be either a short name or a full path. e.g. {VPC_NETWORK} or projects/{HOST_PROJECT_ID}/global/networks/{VPC_NETWORK}
+ "subnet": "A String", # Optional. The VPC subnetwork that the App Engine resource will get IPs from. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If subnetwork is not specified, the subnetwork with the same name with the network will be used. Could be either a short name or a full path. e.g. {SUBNET_NAME} or projects/{HOST_PROJECT_ID}/regions/{REGION}/subnetworks/{SUBNET_NAME}
+ "tags": [ # Optional. The network tags that will be applied to this App Engine resource.
+ "A String",
+ ],
+ },
+ ],
+ "vpcEgress": "A String", # The traffic egress setting for the VPC network interface, controlling what traffic is diverted through it.
+ },
"vpcAccessConnector": { # VPC access connector specification. # Enables VPC connectivity for standard apps.
"egressSetting": "A String", # The egress setting for the connector, controlling what traffic is diverted through it.
"name": "A String", # Full Serverless VPC Access Connector name e.g. projects/my-project/locations/us-central1/connectors/c1.
diff --git a/docs/dyn/assuredworkloads_v1.folders.locations.dbFindingSummaries.html b/docs/dyn/assuredworkloads_v1.folders.locations.dbFindingSummaries.html
index bfd4ae5c30..ce9e4c47cd 100644
--- a/docs/dyn/assuredworkloads_v1.folders.locations.dbFindingSummaries.html
+++ b/docs/dyn/assuredworkloads_v1.folders.locations.dbFindingSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
-Lists the finding summary by category for a given scope.
+Lists summaries of the active findings in a Data Boundary scope (an organization, folder, or project), with one summary for each finding category.
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,13 +91,13 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
- Lists the finding summary by category for a given scope.
+ Lists summaries of the active findings in a Data Boundary scope (an organization, folder, or project), with one summary for each finding category.
Args:
- parent: string, Required. The parent scope for the framework overview page. Formats: - projects/{project}/locations/{location} - folders/{folder}/locations/{location} - organizations/{organization}/locations/{location} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The parent scope to list finding summaries for. Formats: * `organizations/{organization}/locations/{location}` * `folders/{folder}/locations/{location}` * `projects/{project}/locations/{location}` (required)
+ filter: string, Optional. A filter expression that restricts the framework deployments whose findings are summarized. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, and `framework_revision` (the major revision ID of the framework).
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the server picks an appropriate default.
- pageToken: string, Optional. A token that identifies the page of results that the server should return.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -107,22 +107,22 @@ Method Details
An object of the form:
{ # The response message for ListDbFindingSummaries.
- "dbFindingSummaries": [ # List of finding summary by category.
- { # The details for a finding.
- "findingCategory": "A String", # Output only. The category of the finding.
- "findingClass": "A String", # Output only. The class of the finding.
- "findingCount": "A String", # Output only. The count of the finding.
- "name": "A String", # Identifier. The name of the finding summary.
- "organizationPolicyFindingCount": "A String", # Output only. Number of active organization policy findings for this category.
- "relatedFrameworks": [ # Optional. The list of compliance frameworks that the finding belongs to.
+ "dbFindingSummaries": [ # The list of finding summaries, one for each finding category.
+ { # A summary of the active findings for a finding category in a Data Boundary scope.
+ "findingCategory": "A String", # Output only. The category of the findings that are summarized.
+ "findingClass": "A String", # Output only. The class of the findings.
+ "findingCount": "A String", # Output only. The total number of active findings in the category.
+ "name": "A String", # Identifier. The resource name of the finding summary.
+ "organizationPolicyFindingCount": "A String", # Output only. The number of active organization policy findings in the category.
+ "relatedFrameworks": [ # Optional. The display names of the compliance frameworks that the findings are related to.
"A String",
],
- "resourceFindingCount": "A String", # Output only. Number of active resource findings for this category.
- "severity": "A String", # Output only. The severity of the finding.
- "updateTime": "A String", # Output only. The last updated time of the finding.
+ "resourceFindingCount": "A String", # Output only. The number of active resource findings in the category.
+ "severity": "A String", # Output only. The severity of the findings.
+ "updateTime": "A String", # Output only. The time when the findings in the category were last updated.
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1.folders.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html b/docs/dyn/assuredworkloads_v1.folders.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
index 5e4c8706b1..a7ea13d07f 100644
--- a/docs/dyn/assuredworkloads_v1.folders.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
+++ b/docs/dyn/assuredworkloads_v1.folders.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
-Lists the control compliance summary for a given scope.
+Lists the compliance summaries of the controls in a framework compliance report.
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,13 +91,13 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
- Lists the control compliance summary for a given scope.
+ Lists the compliance summaries of the controls in a framework compliance report.
Args:
- parent: string, Required. The parent scope for the framework overview page. Format: organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The framework compliance report to list control compliance summaries for. Formats: * `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ filter: string, Optional. A filter expression that restricts the results. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, `framework_revision` (the major revision ID of the framework), and `end_time`. The `end_time` field accepts a single equality comparison with an [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) timestamp, for example `end_time = "2026-01-01T00:00:00Z"`. Only findings that were updated at or after this time are counted.
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the default page size is 50. The maximum value is 1000.
- pageToken: string, Optional. A token that identifies the page of results that the server should return.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -106,9 +106,9 @@ Method Details
Returns:
An object of the form:
- { # The response message for ListDBControlComplianceSummaries.
- "dbControlComplianceSummaries": [ # The list of control compliance details.
- { # The details for control compliance.
+ { # The response message for ListDbControlComplianceSummaries.
+ "dbControlComplianceSummaries": [ # The list of control compliance summaries.
+ { # A summary of the compliance status of a control in a framework compliance report.
"cloudControlReports": [ # The list of cloud control reports.
{ # The cloud control report.
"categories": [ # The list of categories for the cloud control.
@@ -170,7 +170,7 @@ Method Details
"description": "A String", # The description of the control.
"displayName": "A String", # The display name of the control.
"isFakeControl": True or False, # Whether the control is a fake control. Fake controls are created and mapped to cloud controls that don't belong to a control group.
- "name": "A String", # Identifier. The name of the control compliance summary.
+ "name": "A String", # Identifier. The resource name of the control compliance summary. Format: `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}/dbControlComplianceSummaries/{db_control_compliance_summary}`
"orgPolicyFindingCount": "A String", # Output only. Number of organization policy findings for this control.
"overallEvaluationState": "A String", # Output only. The overall evaluation status of the control.
"resourceFindingCount": "A String", # Output only. Number of resource findings for this control.
@@ -183,7 +183,7 @@ Method Details
"totalFindingsCount": 42, # The total number of findings for the control.
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1.folders.locations.dbFrameworkComplianceReports.html b/docs/dyn/assuredworkloads_v1.folders.locations.dbFrameworkComplianceReports.html
index 167c6bc459..3fae08c725 100644
--- a/docs/dyn/assuredworkloads_v1.folders.locations.dbFrameworkComplianceReports.html
+++ b/docs/dyn/assuredworkloads_v1.folders.locations.dbFrameworkComplianceReports.html
@@ -81,21 +81,21 @@ Instance Methods
aggregate(name, filter=None, interval_endTime=None, interval_startTime=None, x__xgafv=None)
-Gets the aggregated compliance report over time for a given scope.
+Gets daily compliance reports over a time range for a framework that's deployed in a Data Boundary scope.
Close httplib2 connections.
fetch(name, endTime=None, filter=None, x__xgafv=None)
-Fetches the framework compliance report for a given scope.
+Fetches the current compliance report for a framework that's deployed in a Data Boundary scope (an organization, folder, or project). The report includes the number of passing, failing, and not assessed controls in the framework.
Method Details
aggregate(name, filter=None, interval_endTime=None, interval_startTime=None, x__xgafv=None)
- Gets the aggregated compliance report over time for a given scope.
+ Gets daily compliance reports over a time range for a framework that's deployed in a Data Boundary scope.
Args:
- name: string, Required. The name of the aggregated compliance report over time to retrieve. Format: `organizations/{organization_id}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
- filter: string, Optional. The filtering results.
+ name: string, Required. The name of the framework compliance report to aggregate over time. The report ID is the ID of the compliance framework, for example `builtin-fedramp-high`. Format: `organizations/{organization_id}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ filter: string, Optional. A filter expression that restricts the framework deployments that are included in the report. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, and `framework_revision` (the major revision ID of the framework).
interval_endTime: string, Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.
interval_startTime: string, Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.
x__xgafv: string, V1 error format.
@@ -107,9 +107,9 @@ Method Details
An object of the form:
{ # The response message for AggregateDbFrameworkComplianceReport.
- "aggregatedComplianceReports": [ # The list of aggregated compliance reports.
- { # The aggregated compliance report.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ "aggregatedComplianceReports": [ # The daily compliance reports for the requested time range.
+ { # A point-in-time compliance report for a framework.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework at `report_time`.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -127,7 +127,7 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "reportTime": "A String", # The report time of the aggregated compliance report.
+ "reportTime": "A String", # The time that the compliance report represents.
},
],
}
@@ -140,12 +140,12 @@ Method Details
fetch(name, endTime=None, filter=None, x__xgafv=None)
- Fetches the framework compliance report for a given scope.
+ Fetches the current compliance report for a framework that's deployed in a Data Boundary scope (an organization, folder, or project). The report includes the number of passing, failing, and not assessed controls in the framework.
Args:
- name: string, Required. The name of the framework compliance report to retrieve. (required)
- endTime: string, Optional. The end time of the report.
- filter: string, Optional. The filtering results.
+ name: string, Required. The name of the framework compliance report to retrieve. The report ID is the ID of the compliance framework, for example `builtin-fedramp-high`. Formats: * `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ endTime: string, Optional. The end time of the report. Reserved for future use. Currently, the report always reflects the current compliance state.
+ filter: string, Optional. A filter expression that restricts the results. Reserved for future use.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -155,7 +155,7 @@ Method Details
An object of the form:
{ # The response message for FetchDbFrameworkComplianceReport.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -173,20 +173,20 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "framework": "A String", # The name of the framework.
- "frameworkCategories": [ # The list of framework categories supported.
+ "framework": "A String", # The resource name of the compliance framework. For example, `organizations/{organization}/locations/{location}/frameworks/{framework_id}`.
+ "frameworkCategories": [ # The categories of the framework.
"A String",
],
"frameworkDescription": "A String", # The description of the framework.
- "frameworkDisplayName": "A String", # Optional. The display name for the framework.
+ "frameworkDisplayName": "A String", # Optional. The display name of the framework.
"frameworkType": "A String", # The type of the framework.
"majorRevisionId": "A String", # The latest major revision ID of the framework.
"minorRevisionId": "A String", # The latest minor revision ID of the latest major revision of the framework.
- "name": "A String", # The name of the framework compliance report.
- "supportedCloudProviders": [ # The list of cloud providers that are supported by the framework.
+ "name": "A String", # The resource name of the framework compliance report.
+ "supportedCloudProviders": [ # The cloud providers that are supported by the framework.
"A String",
],
- "targetResourceDetails": [ # The target resource details of the framework.
+ "targetResourceDetails": [ # The details of the target resources (organizations, folders, or projects) that the framework is deployed on.
{ # The details for a target resource.
"createTime": "A String", # The create time of the target resource.
"frameworkDeployment": "A String", # The framework deployment name for the target resource. For example, `organizations/{organization_id}/locations/{location}/frameworkDeployments/{framework_deployment_id}`
@@ -197,7 +197,7 @@ Method Details
"updateTime": "A String", # The update time of the target resource.
},
],
- "updateTime": "A String", # Output only. The last updated time of the report.
+ "updateTime": "A String", # Output only. The time when the report was last updated.
}
diff --git a/docs/dyn/assuredworkloads_v1.folders.locations.dbFrameworkComplianceSummaries.html b/docs/dyn/assuredworkloads_v1.folders.locations.dbFrameworkComplianceSummaries.html
index 973fea3fcc..b67f4644cf 100644
--- a/docs/dyn/assuredworkloads_v1.folders.locations.dbFrameworkComplianceSummaries.html
+++ b/docs/dyn/assuredworkloads_v1.folders.locations.dbFrameworkComplianceSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)
-Lists the framework compliance summary for a given scope.
+Lists the compliance summaries of the frameworks that are deployed in a Data Boundary scope (an organization, folder, or project).
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,14 +91,14 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)
- Lists the framework compliance summary for a given scope.
+ Lists the compliance summaries of the frameworks that are deployed in a Data Boundary scope (an organization, folder, or project).
Args:
- parent: string, Required. The parent scope for the framework compliance summary. Format: organizations/{organization}/locations/{location} folders/{folder}/locations/{location} projects/{project}/locations/{location} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The parent scope to list framework compliance summaries for. Formats: * `organizations/{organization}/locations/{location}` * `folders/{folder}/locations/{location}` * `projects/{project}/locations/{location}` (required)
+ filter: string, Optional. A filter expression that restricts the results. Reserved for future use.
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the default page size is 50. The maximum value is 1000.
- pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the next_page_token value from a previous result.
- view: string, Optional. Specifies the level of detail to return in the response.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
+ view: string, Optional. The level of detail to return for each summary. If not specified, `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_BASIC` is used.
Allowed values
FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_UNSPECIFIED - The default / unset value. The API will default to the BASIC view.
FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_BASIC - Includes basic compliance metadata, but omits trend data.
@@ -111,10 +111,10 @@ Method Details
Returns:
An object of the form:
- { # The response message for ListDbFrameworkComplianceSummariesResponse.
+ { # The response message for ListDbFrameworkComplianceSummaries.
"dbFrameworkComplianceSummaries": [ # The list of framework compliance summaries.
- { # The details for a framework compliance summary.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ { # A summary of the compliance status of a framework that's deployed in a Data Boundary scope.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -132,24 +132,24 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "controlsPassingTrend": { # The trend of a compliance metric. # Output only. The trend of controls that are passing for the given duration.
+ "controlsPassingTrend": { # The trend of a compliance metric. # Output only. The trend of passing controls over the trend duration. This field is only populated when using `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_FULL`.
"duration": "A String", # Output only. The duration for the trend.
"valuePercent": 3.14, # Output only. The trend value as a percentage. The value can be positive or negative.
},
- "findingCount": "A String", # Output only. The count of the findings generated against the framework.
- "framework": "A String", # The name of the framework.
- "frameworkCategories": [ # The list of framework categories supported by the framework.
+ "findingCount": "A String", # Output only. The number of findings that were generated against the framework. This field is only populated when using `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_FULL`.
+ "framework": "A String", # The resource name of the compliance framework.
+ "frameworkCategories": [ # The categories of the framework.
"A String",
],
- "frameworkDisplayName": "A String", # Optional. The display name for the framework.
- "frameworkType": "A String", # The type of framework.
+ "frameworkDisplayName": "A String", # Optional. The display name of the framework.
+ "frameworkType": "A String", # The type of the framework.
"majorRevisionId": "A String", # The major revision ID of the framework.
"minorRevisionId": "A String", # The minor revision ID of the framework.
- "name": "A String", # Identifier. The name of the framework compliance summary.
- "supportedCloudProviders": [ # The list of cloud providers supported by the framework.
+ "name": "A String", # Identifier. The resource name of the framework compliance summary.
+ "supportedCloudProviders": [ # The cloud providers that are supported by the framework.
"A String",
],
- "targetResourceDetails": [ # The target resource details for the framework.
+ "targetResourceDetails": [ # The details of the target resources (organizations, folders, or projects) that the framework is deployed on.
{ # The details for a target resource.
"createTime": "A String", # The create time of the target resource.
"frameworkDeployment": "A String", # The framework deployment name for the target resource. For example, `organizations/{organization_id}/locations/{location}/frameworkDeployments/{framework_deployment_id}`
@@ -162,7 +162,7 @@ Method Details
],
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1.organizations.locations.dbFindingSummaries.html b/docs/dyn/assuredworkloads_v1.organizations.locations.dbFindingSummaries.html
index c0118ce302..2e7de39591 100644
--- a/docs/dyn/assuredworkloads_v1.organizations.locations.dbFindingSummaries.html
+++ b/docs/dyn/assuredworkloads_v1.organizations.locations.dbFindingSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
-Lists the finding summary by category for a given scope.
+Lists summaries of the active findings in a Data Boundary scope (an organization, folder, or project), with one summary for each finding category.
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,13 +91,13 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
- Lists the finding summary by category for a given scope.
+ Lists summaries of the active findings in a Data Boundary scope (an organization, folder, or project), with one summary for each finding category.
Args:
- parent: string, Required. The parent scope for the framework overview page. Formats: - projects/{project}/locations/{location} - folders/{folder}/locations/{location} - organizations/{organization}/locations/{location} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The parent scope to list finding summaries for. Formats: * `organizations/{organization}/locations/{location}` * `folders/{folder}/locations/{location}` * `projects/{project}/locations/{location}` (required)
+ filter: string, Optional. A filter expression that restricts the framework deployments whose findings are summarized. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, and `framework_revision` (the major revision ID of the framework).
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the server picks an appropriate default.
- pageToken: string, Optional. A token that identifies the page of results that the server should return.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -107,22 +107,22 @@ Method Details
An object of the form:
{ # The response message for ListDbFindingSummaries.
- "dbFindingSummaries": [ # List of finding summary by category.
- { # The details for a finding.
- "findingCategory": "A String", # Output only. The category of the finding.
- "findingClass": "A String", # Output only. The class of the finding.
- "findingCount": "A String", # Output only. The count of the finding.
- "name": "A String", # Identifier. The name of the finding summary.
- "organizationPolicyFindingCount": "A String", # Output only. Number of active organization policy findings for this category.
- "relatedFrameworks": [ # Optional. The list of compliance frameworks that the finding belongs to.
+ "dbFindingSummaries": [ # The list of finding summaries, one for each finding category.
+ { # A summary of the active findings for a finding category in a Data Boundary scope.
+ "findingCategory": "A String", # Output only. The category of the findings that are summarized.
+ "findingClass": "A String", # Output only. The class of the findings.
+ "findingCount": "A String", # Output only. The total number of active findings in the category.
+ "name": "A String", # Identifier. The resource name of the finding summary.
+ "organizationPolicyFindingCount": "A String", # Output only. The number of active organization policy findings in the category.
+ "relatedFrameworks": [ # Optional. The display names of the compliance frameworks that the findings are related to.
"A String",
],
- "resourceFindingCount": "A String", # Output only. Number of active resource findings for this category.
- "severity": "A String", # Output only. The severity of the finding.
- "updateTime": "A String", # Output only. The last updated time of the finding.
+ "resourceFindingCount": "A String", # Output only. The number of active resource findings in the category.
+ "severity": "A String", # Output only. The severity of the findings.
+ "updateTime": "A String", # Output only. The time when the findings in the category were last updated.
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1.organizations.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html b/docs/dyn/assuredworkloads_v1.organizations.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
index b891bc7582..149f297515 100644
--- a/docs/dyn/assuredworkloads_v1.organizations.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
+++ b/docs/dyn/assuredworkloads_v1.organizations.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
-Lists the control compliance summary for a given scope.
+Lists the compliance summaries of the controls in a framework compliance report.
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,13 +91,13 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
- Lists the control compliance summary for a given scope.
+ Lists the compliance summaries of the controls in a framework compliance report.
Args:
- parent: string, Required. The parent scope for the framework overview page. Format: organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The framework compliance report to list control compliance summaries for. Formats: * `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ filter: string, Optional. A filter expression that restricts the results. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, `framework_revision` (the major revision ID of the framework), and `end_time`. The `end_time` field accepts a single equality comparison with an [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) timestamp, for example `end_time = "2026-01-01T00:00:00Z"`. Only findings that were updated at or after this time are counted.
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the default page size is 50. The maximum value is 1000.
- pageToken: string, Optional. A token that identifies the page of results that the server should return.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -106,9 +106,9 @@ Method Details
Returns:
An object of the form:
- { # The response message for ListDBControlComplianceSummaries.
- "dbControlComplianceSummaries": [ # The list of control compliance details.
- { # The details for control compliance.
+ { # The response message for ListDbControlComplianceSummaries.
+ "dbControlComplianceSummaries": [ # The list of control compliance summaries.
+ { # A summary of the compliance status of a control in a framework compliance report.
"cloudControlReports": [ # The list of cloud control reports.
{ # The cloud control report.
"categories": [ # The list of categories for the cloud control.
@@ -170,7 +170,7 @@ Method Details
"description": "A String", # The description of the control.
"displayName": "A String", # The display name of the control.
"isFakeControl": True or False, # Whether the control is a fake control. Fake controls are created and mapped to cloud controls that don't belong to a control group.
- "name": "A String", # Identifier. The name of the control compliance summary.
+ "name": "A String", # Identifier. The resource name of the control compliance summary. Format: `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}/dbControlComplianceSummaries/{db_control_compliance_summary}`
"orgPolicyFindingCount": "A String", # Output only. Number of organization policy findings for this control.
"overallEvaluationState": "A String", # Output only. The overall evaluation status of the control.
"resourceFindingCount": "A String", # Output only. Number of resource findings for this control.
@@ -183,7 +183,7 @@ Method Details
"totalFindingsCount": 42, # The total number of findings for the control.
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1.organizations.locations.dbFrameworkComplianceReports.html b/docs/dyn/assuredworkloads_v1.organizations.locations.dbFrameworkComplianceReports.html
index cf79e9a1fb..047457eac8 100644
--- a/docs/dyn/assuredworkloads_v1.organizations.locations.dbFrameworkComplianceReports.html
+++ b/docs/dyn/assuredworkloads_v1.organizations.locations.dbFrameworkComplianceReports.html
@@ -81,21 +81,21 @@ Instance Methods
aggregate(name, filter=None, interval_endTime=None, interval_startTime=None, x__xgafv=None)
-Gets the aggregated compliance report over time for a given scope.
+Gets daily compliance reports over a time range for a framework that's deployed in a Data Boundary scope.
Close httplib2 connections.
fetch(name, endTime=None, filter=None, x__xgafv=None)
-Fetches the framework compliance report for a given scope.
+Fetches the current compliance report for a framework that's deployed in a Data Boundary scope (an organization, folder, or project). The report includes the number of passing, failing, and not assessed controls in the framework.
Method Details
aggregate(name, filter=None, interval_endTime=None, interval_startTime=None, x__xgafv=None)
- Gets the aggregated compliance report over time for a given scope.
+ Gets daily compliance reports over a time range for a framework that's deployed in a Data Boundary scope.
Args:
- name: string, Required. The name of the aggregated compliance report over time to retrieve. Format: `organizations/{organization_id}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
- filter: string, Optional. The filtering results.
+ name: string, Required. The name of the framework compliance report to aggregate over time. The report ID is the ID of the compliance framework, for example `builtin-fedramp-high`. Format: `organizations/{organization_id}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ filter: string, Optional. A filter expression that restricts the framework deployments that are included in the report. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, and `framework_revision` (the major revision ID of the framework).
interval_endTime: string, Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.
interval_startTime: string, Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.
x__xgafv: string, V1 error format.
@@ -107,9 +107,9 @@ Method Details
An object of the form:
{ # The response message for AggregateDbFrameworkComplianceReport.
- "aggregatedComplianceReports": [ # The list of aggregated compliance reports.
- { # The aggregated compliance report.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ "aggregatedComplianceReports": [ # The daily compliance reports for the requested time range.
+ { # A point-in-time compliance report for a framework.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework at `report_time`.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -127,7 +127,7 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "reportTime": "A String", # The report time of the aggregated compliance report.
+ "reportTime": "A String", # The time that the compliance report represents.
},
],
}
@@ -140,12 +140,12 @@ Method Details
fetch(name, endTime=None, filter=None, x__xgafv=None)
- Fetches the framework compliance report for a given scope.
+ Fetches the current compliance report for a framework that's deployed in a Data Boundary scope (an organization, folder, or project). The report includes the number of passing, failing, and not assessed controls in the framework.
Args:
- name: string, Required. The name of the framework compliance report to retrieve. (required)
- endTime: string, Optional. The end time of the report.
- filter: string, Optional. The filtering results.
+ name: string, Required. The name of the framework compliance report to retrieve. The report ID is the ID of the compliance framework, for example `builtin-fedramp-high`. Formats: * `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ endTime: string, Optional. The end time of the report. Reserved for future use. Currently, the report always reflects the current compliance state.
+ filter: string, Optional. A filter expression that restricts the results. Reserved for future use.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -155,7 +155,7 @@ Method Details
An object of the form:
{ # The response message for FetchDbFrameworkComplianceReport.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -173,20 +173,20 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "framework": "A String", # The name of the framework.
- "frameworkCategories": [ # The list of framework categories supported.
+ "framework": "A String", # The resource name of the compliance framework. For example, `organizations/{organization}/locations/{location}/frameworks/{framework_id}`.
+ "frameworkCategories": [ # The categories of the framework.
"A String",
],
"frameworkDescription": "A String", # The description of the framework.
- "frameworkDisplayName": "A String", # Optional. The display name for the framework.
+ "frameworkDisplayName": "A String", # Optional. The display name of the framework.
"frameworkType": "A String", # The type of the framework.
"majorRevisionId": "A String", # The latest major revision ID of the framework.
"minorRevisionId": "A String", # The latest minor revision ID of the latest major revision of the framework.
- "name": "A String", # The name of the framework compliance report.
- "supportedCloudProviders": [ # The list of cloud providers that are supported by the framework.
+ "name": "A String", # The resource name of the framework compliance report.
+ "supportedCloudProviders": [ # The cloud providers that are supported by the framework.
"A String",
],
- "targetResourceDetails": [ # The target resource details of the framework.
+ "targetResourceDetails": [ # The details of the target resources (organizations, folders, or projects) that the framework is deployed on.
{ # The details for a target resource.
"createTime": "A String", # The create time of the target resource.
"frameworkDeployment": "A String", # The framework deployment name for the target resource. For example, `organizations/{organization_id}/locations/{location}/frameworkDeployments/{framework_deployment_id}`
@@ -197,7 +197,7 @@ Method Details
"updateTime": "A String", # The update time of the target resource.
},
],
- "updateTime": "A String", # Output only. The last updated time of the report.
+ "updateTime": "A String", # Output only. The time when the report was last updated.
}
diff --git a/docs/dyn/assuredworkloads_v1.organizations.locations.dbFrameworkComplianceSummaries.html b/docs/dyn/assuredworkloads_v1.organizations.locations.dbFrameworkComplianceSummaries.html
index 1d4348aac9..08f48a51d8 100644
--- a/docs/dyn/assuredworkloads_v1.organizations.locations.dbFrameworkComplianceSummaries.html
+++ b/docs/dyn/assuredworkloads_v1.organizations.locations.dbFrameworkComplianceSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)
-Lists the framework compliance summary for a given scope.
+Lists the compliance summaries of the frameworks that are deployed in a Data Boundary scope (an organization, folder, or project).
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,14 +91,14 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)
- Lists the framework compliance summary for a given scope.
+ Lists the compliance summaries of the frameworks that are deployed in a Data Boundary scope (an organization, folder, or project).
Args:
- parent: string, Required. The parent scope for the framework compliance summary. Format: organizations/{organization}/locations/{location} folders/{folder}/locations/{location} projects/{project}/locations/{location} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The parent scope to list framework compliance summaries for. Formats: * `organizations/{organization}/locations/{location}` * `folders/{folder}/locations/{location}` * `projects/{project}/locations/{location}` (required)
+ filter: string, Optional. A filter expression that restricts the results. Reserved for future use.
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the default page size is 50. The maximum value is 1000.
- pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the next_page_token value from a previous result.
- view: string, Optional. Specifies the level of detail to return in the response.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
+ view: string, Optional. The level of detail to return for each summary. If not specified, `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_BASIC` is used.
Allowed values
FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_UNSPECIFIED - The default / unset value. The API will default to the BASIC view.
FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_BASIC - Includes basic compliance metadata, but omits trend data.
@@ -111,10 +111,10 @@ Method Details
Returns:
An object of the form:
- { # The response message for ListDbFrameworkComplianceSummariesResponse.
+ { # The response message for ListDbFrameworkComplianceSummaries.
"dbFrameworkComplianceSummaries": [ # The list of framework compliance summaries.
- { # The details for a framework compliance summary.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ { # A summary of the compliance status of a framework that's deployed in a Data Boundary scope.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -132,24 +132,24 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "controlsPassingTrend": { # The trend of a compliance metric. # Output only. The trend of controls that are passing for the given duration.
+ "controlsPassingTrend": { # The trend of a compliance metric. # Output only. The trend of passing controls over the trend duration. This field is only populated when using `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_FULL`.
"duration": "A String", # Output only. The duration for the trend.
"valuePercent": 3.14, # Output only. The trend value as a percentage. The value can be positive or negative.
},
- "findingCount": "A String", # Output only. The count of the findings generated against the framework.
- "framework": "A String", # The name of the framework.
- "frameworkCategories": [ # The list of framework categories supported by the framework.
+ "findingCount": "A String", # Output only. The number of findings that were generated against the framework. This field is only populated when using `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_FULL`.
+ "framework": "A String", # The resource name of the compliance framework.
+ "frameworkCategories": [ # The categories of the framework.
"A String",
],
- "frameworkDisplayName": "A String", # Optional. The display name for the framework.
- "frameworkType": "A String", # The type of framework.
+ "frameworkDisplayName": "A String", # Optional. The display name of the framework.
+ "frameworkType": "A String", # The type of the framework.
"majorRevisionId": "A String", # The major revision ID of the framework.
"minorRevisionId": "A String", # The minor revision ID of the framework.
- "name": "A String", # Identifier. The name of the framework compliance summary.
- "supportedCloudProviders": [ # The list of cloud providers supported by the framework.
+ "name": "A String", # Identifier. The resource name of the framework compliance summary.
+ "supportedCloudProviders": [ # The cloud providers that are supported by the framework.
"A String",
],
- "targetResourceDetails": [ # The target resource details for the framework.
+ "targetResourceDetails": [ # The details of the target resources (organizations, folders, or projects) that the framework is deployed on.
{ # The details for a target resource.
"createTime": "A String", # The create time of the target resource.
"frameworkDeployment": "A String", # The framework deployment name for the target resource. For example, `organizations/{organization_id}/locations/{location}/frameworkDeployments/{framework_deployment_id}`
@@ -162,7 +162,7 @@ Method Details
],
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1.organizations.locations.workloads.violations.html b/docs/dyn/assuredworkloads_v1.organizations.locations.workloads.violations.html
index dbe1c7c64b..3893af2c2f 100644
--- a/docs/dyn/assuredworkloads_v1.organizations.locations.workloads.violations.html
+++ b/docs/dyn/assuredworkloads_v1.organizations.locations.workloads.violations.html
@@ -82,7 +82,7 @@ Instance Methods
Close httplib2 connections.
get(name, view=None, x__xgafv=None)
-Retrieves Assured Workload Violation based on ID.
+Retrieves an Assured Workloads violation by its resource name.
Lists the Violations in the AssuredWorkload Environment. Callers may also choose to read across multiple Workloads as per [AIP-159](https://google.aip.dev/159) by using '-' (the hyphen or dash character) as a wildcard character instead of workload-id in the parent. Format `organizations/{org_id}/locations/{location}/workloads/-`
@@ -95,15 +95,15 @@ Method Details
Acknowledges an existing violation. By acknowledging a violation, users acknowledge the existence of a compliance violation in their workload and decide to ignore it due to a valid business justification. Acknowledgement is a permanent operation and it cannot be reverted.
Args:
- name: string, Required. The resource name of the Violation to acknowledge. Format: organizations/{organization}/locations/{location}/workloads/{workload}/violations/{violation} (required)
+ name: string, Required. The resource name of the violation to acknowledge. Format: `organizations/{organization}/locations/{location}/workloads/{workload}/violations/{violation}` (required)
body: object, The request body.
The object takes the form of:
-{ # Request for acknowledging the violation
- "acknowledgeType": "A String", # Optional. Acknowledge type of specified violation.
- "comment": "A String", # Required. Business justification explaining the need for violation acknowledgement
- "nonCompliantOrgPolicy": "A String", # Optional. This field is deprecated and will be removed in future version of the API. Name of the OrgPolicy which was modified with non-compliant change and resulted in this violation. Format: projects/{project_number}/policies/{constraint_name} folders/{folder_id}/policies/{constraint_name} organizations/{organization_id}/policies/{constraint_name}
- "view": "A String", # Optional. Specifies the violation view (`AssuredWorkloads` or `DataBoundary`) for acknowledging violations.
+{ # Request message for acknowledging a violation.
+ "acknowledgeType": "A String", # Optional. The scope of the acknowledgement for the specified violation. If not specified, `SINGLE_VIOLATION` is used.
+ "comment": "A String", # Required. The business justification for acknowledging the violation. The comment can't be empty or contain only whitespace characters.
+ "nonCompliantOrgPolicy": "A String", # Optional. Deprecated: This field is deprecated and will be removed in a future version of the API. The service identifies the violation to acknowledge by `name`, and ignores this field. Don't set this field. The name of the organization policy that was modified with a non-compliant change and resulted in this violation. Formats: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}`
+ "view": "A String", # Optional. The violation view (`VIOLATION_VIEW_ASSURED_WORKLOADS` or `VIOLATION_VIEW_DATA_BOUNDARY`) that the violation belongs to. If not specified, `VIOLATION_VIEW_ASSURED_WORKLOADS` is used.
}
x__xgafv: string, V1 error format.
@@ -114,7 +114,7 @@ Method Details
Returns:
An object of the form:
- { # Response for violation acknowledgement
+ { # Response message for acknowledging a violation. This message is empty.
}
@@ -125,11 +125,11 @@ Method Details
get(name, view=None, x__xgafv=None)
- Retrieves Assured Workload Violation based on ID.
+ Retrieves an Assured Workloads violation by its resource name.
Args:
- name: string, Required. The resource name of the Violation to fetch (ie. Violation.name). Format: organizations/{organization}/locations/{location}/workloads/{workload}/violations/{violation} (required)
- view: string, Optional. Specifies the violation view (`AssuredWorkloads` or `DataBoundary`) for fetching violations.
+ name: string, Required. The resource name of the violation to retrieve (that is, the value of `Violation.name`). Format: `organizations/{organization}/locations/{location}/workloads/{workload}/violations/{violation}` (required)
+ view: string, Optional. The violation view (`VIOLATION_VIEW_ASSURED_WORKLOADS` or `VIOLATION_VIEW_DATA_BOUNDARY`) that the violation belongs to. If not specified, `VIOLATION_VIEW_ASSURED_WORKLOADS` is used.
Allowed values
VIOLATION_VIEW_UNSPECIFIED - Defaults to the ASSURED_WORKLOADS view.
VIOLATION_VIEW_ASSURED_WORKLOADS - Includes the basic metadata about the violation.
@@ -142,67 +142,67 @@ Method Details
Returns:
An object of the form:
- { # Workload monitoring Violation.
- "acknowledged": True or False, # A boolean that indicates if the violation is acknowledged
- "acknowledgementTime": "A String", # Optional. Timestamp when this violation was acknowledged first. Check exception_contexts to find the last time the violation was acknowledged when there are more than one violations. This field will be absent when acknowledged field is marked as false.
- "affectedFrameworks": [ # Output only. List of compliance frameworks that are affected by this violation. This field is only populated when using `VIOLATION_VIEW_DATA_BOUNDARY`. e.g. "FedRAMP High", "NIST 800-53".
+ { # A compliance violation that's detected by Assured Workloads monitoring. A violation is created when an organization policy or a resource in a workload (or a Data Boundary scope) changes in a way that doesn't comply with the controls of the applicable compliance regime or framework.
+ "acknowledged": True or False, # Whether the violation has been acknowledged.
+ "acknowledgementTime": "A String", # Optional. The time when the violation was first acknowledged. To find the most recent time that the violation was acknowledged, check `exception_contexts`. This field is absent when `acknowledged` is `false`.
+ "affectedFrameworks": [ # Output only. The IDs of the compliance frameworks that are affected by this violation. For example, `builtin-fedramp-high`. This field is only populated when using `VIOLATION_VIEW_DATA_BOUNDARY`.
"A String",
],
- "associatedOrgPolicyViolationId": "A String", # Optional. Output only. Violation Id of the org-policy violation due to which the resource violation is caused. Empty for org-policy violations.
- "auditLogLink": "A String", # Output only. Immutable. Audit Log Link for violated resource Format: https://console.cloud.google.com/logs/query;query={logName}{protoPayload.resourceName}{timeRange}{folder}
- "beginTime": "A String", # Output only. Time of the event which triggered the Violation.
- "category": "A String", # Output only. Category under which this violation is mapped. e.g. Location, Service Usage, Access, Encryption, etc.
- "childResourceViolationCount": 42, # Optional. Output only. The number of resource violations for particular org policy violation. This will be 0 in case of resource violation.
- "description": "A String", # Output only. Description for the Violation. e.g. OrgPolicy gcp.resourceLocations has non compliant value.
- "exceptionAuditLogLink": "A String", # Output only. Immutable. Audit Log link to find business justification provided for violation exception. Format: https://console.cloud.google.com/logs/query;query={logName}{protoPayload.resourceName}{protoPayload.methodName}{timeRange}{organization}
- "exceptionContexts": [ # Output only. List of all the exception detail added for the violation.
- { # Violation exception detail.
- "acknowledgementTime": "A String", # Timestamp when the violation was acknowledged.
- "comment": "A String", # Business justification provided towards the acknowledgement of the violation.
- "userName": "A String", # Name of the user (or service account) who acknowledged the violation.
+ "associatedOrgPolicyViolationId": "A String", # Optional. Output only. For resource violations, the ID of the organization policy violation that caused this resource violation. This field is empty for organization policy violations.
+ "auditLogLink": "A String", # Output only. Immutable. A link to the Cloud Audit Logs entries for the violated resource. Format: `https://console.cloud.google.com/logs/query;query={logName}{protoPayload.resourceName}{timeRange}{folder}`
+ "beginTime": "A String", # Output only. The time of the event that triggered the violation.
+ "category": "A String", # Output only. The category that the violation is mapped to. For example, `Location`, `Service Usage`, `Access`, or `Encryption`.
+ "childResourceViolationCount": 42, # Optional. Output only. For organization policy violations, the number of resource violations that are associated with this violation. This field is `0` for resource violations.
+ "description": "A String", # Output only. A description of the violation. For example, `OrgPolicy gcp.resourceLocations has non compliant value.`
+ "exceptionAuditLogLink": "A String", # Output only. Immutable. A link to the Cloud Audit Logs entries that contain the business justification that was provided when the violation was acknowledged. Format: `https://console.cloud.google.com/logs/query;query={logName}{protoPayload.resourceName}{protoPayload.methodName}{timeRange}{organization}`
+ "exceptionContexts": [ # Output only. The details of all of the acknowledgements (exceptions) for the violation.
+ { # Details about an acknowledgement (exception) of a violation.
+ "acknowledgementTime": "A String", # The time when the violation was acknowledged.
+ "comment": "A String", # The business justification that was provided when the violation was acknowledged.
+ "userName": "A String", # The name of the user (or service account) who acknowledged the violation.
},
],
- "name": "A String", # Output only. Immutable. Name of the Violation. Format: organizations/{organization}/locations/{location}/workloads/{workload_id}/violations/{violations_id}
- "nonCompliantOrgPolicy": "A String", # Output only. Immutable. Name of the OrgPolicy which was modified with non-compliant change and resulted this violation. Format: projects/{project_number}/policies/{constraint_name} folders/{folder_id}/policies/{constraint_name} organizations/{organization_id}/policies/{constraint_name}
- "orgPolicyConstraint": "A String", # Output only. Immutable. The org-policy-constraint that was incorrectly changed, which resulted in this violation.
- "parentProjectNumber": "A String", # Optional. Output only. Parent project number where resource is present. Empty for org-policy violations.
- "remediation": { # Represents remediation guidance to resolve compliance violation for AssuredWorkload # Output only. Compliance violation remediation
- "compliantValues": [ # Values that can resolve the violation For example: for list org policy violations, this will either be the list of allowed or denied values
+ "name": "A String", # Output only. Immutable. The resource name of the violation. Format: `organizations/{organization}/locations/{location}/workloads/{workload_id}/violations/{violations_id}`
+ "nonCompliantOrgPolicy": "A String", # Output only. Immutable. The name of the organization policy that was modified with a non-compliant change and resulted in this violation. Formats: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}`
+ "orgPolicyConstraint": "A String", # Output only. Immutable. Deprecated: This field is deprecated and might be removed in a future version of the API. Use `non_compliant_org_policy` instead, which contains the full resource name of the organization policy, including the constraint name. The organization policy constraint that was changed in a non-compliant way, which resulted in this violation.
+ "parentProjectNumber": "A String", # Optional. Output only. For resource violations, the number of the project that contains the non-compliant resource. This field is empty for organization policy violations.
+ "remediation": { # Remediation guidance to resolve a compliance violation. # Output only. The remediation guidance for the violation.
+ "compliantValues": [ # The values that can resolve the violation. For example, for list organization policy violations, this field contains the list of allowed or denied values.
"A String",
],
- "instructions": { # Instructions to remediate violation # Required. Remediation instructions to resolve violations
- "consoleInstructions": { # Remediation instructions to resolve violation via cloud console # Remediation instructions to resolve violation via cloud console
- "additionalLinks": [ # Additional urls for more information about steps
+ "instructions": { # Instructions to remediate a violation. # Required. The instructions to resolve the violation.
+ "consoleInstructions": { # Instructions to remediate a violation by using the Google Cloud console. # Instructions to resolve the violation by using the Google Cloud console.
+ "additionalLinks": [ # Additional URLs with more information about the steps.
"A String",
],
- "consoleUris": [ # Link to console page where violations can be resolved
+ "consoleUris": [ # Links to the Google Cloud console pages where the violation can be resolved.
"A String",
],
- "steps": [ # Steps to resolve violation via cloud console
+ "steps": [ # The steps to resolve the violation by using the Google Cloud console.
"A String",
],
},
- "gcloudInstructions": { # Remediation instructions to resolve violation via gcloud cli # Remediation instructions to resolve violation via gcloud cli
- "additionalLinks": [ # Additional urls for more information about steps
+ "gcloudInstructions": { # Instructions to remediate a violation by using the Google Cloud CLI. # Instructions to resolve the violation by using the gcloud CLI.
+ "additionalLinks": [ # Additional URLs with more information about the steps.
"A String",
],
- "gcloudCommands": [ # Gcloud command to resolve violation
+ "gcloudCommands": [ # The gcloud CLI commands that resolve the violation.
"A String",
],
- "steps": [ # Steps to resolve violation via gcloud cli
+ "steps": [ # The steps to resolve the violation by using the gcloud CLI.
"A String",
],
},
},
- "remediationType": "A String", # Output only. Reemediation type based on the type of org policy values violated
+ "remediationType": "A String", # Output only. The remediation type, which is based on the type of organization policy values that were violated.
},
- "remediationMarkdown": "A String", # Output only. Contains the remediation instructions for the violation in markdown format.
- "resolveTime": "A String", # Output only. Time of the event which fixed the Violation. If the violation is ACTIVE this will be empty.
- "resourceName": "A String", # Optional. Output only. Name of the resource like //storage.googleapis.com/myprojectxyz-testbucket. Empty for org-policy violations.
- "resourceType": "A String", # Optional. Output only. Type of the resource like compute.googleapis.com/Disk, etc. Empty for org-policy violations.
- "state": "A String", # Output only. State of the violation
- "updateTime": "A String", # Output only. The last time when the Violation record was updated.
- "violationType": "A String", # Output only. Type of the violation
+ "remediationMarkdown": "A String", # Output only. The remediation instructions for the violation, in Markdown format. This field is only populated by `GetViolation` when using `VIOLATION_VIEW_DATA_BOUNDARY`. When this field isn't populated, see `remediation` instead.
+ "resolveTime": "A String", # Output only. The time of the event that resolved the violation. This field is empty if the violation is unresolved.
+ "resourceName": "A String", # Optional. Output only. For resource violations, the full resource name of the non-compliant resource. For example, `//storage.googleapis.com/myprojectxyz-testbucket`. This field is empty for organization policy violations.
+ "resourceType": "A String", # Optional. Output only. For resource violations, the type of the non-compliant resource. For example, `compute.googleapis.com/Disk`. This field is empty for organization policy violations.
+ "state": "A String", # Output only. The state of the violation.
+ "updateTime": "A String", # Output only. The time when the violation record was last updated.
+ "violationType": "A String", # Output only. The type of the violation.
}
@@ -211,14 +211,14 @@ Method Details
Lists the Violations in the AssuredWorkload Environment. Callers may also choose to read across multiple Workloads as per [AIP-159](https://google.aip.dev/159) by using '-' (the hyphen or dash character) as a wildcard character instead of workload-id in the parent. Format `organizations/{org_id}/locations/{location}/workloads/-`
Args:
- parent: string, Required. The Workload name. Format `organizations/{org_id}/locations/{location}/workloads/{workload}`. (required)
- filter: string, Optional. A custom filter for filtering by the Violations properties.
+ parent: string, Required. The workload to list violations for. To list violations across all workloads in an organization, use `-` as the workload ID. When `view` is `VIOLATION_VIEW_DATA_BOUNDARY`, violations are listed for the entire organization and location, and the workload ID is ignored. Format: `organizations/{organization}/locations/{location}/workloads/{workload}` (required)
+ filter: string, Optional. A filter expression that restricts the violations that are returned. The syntax follows [AIP-160](https://google.aip.dev/160). Only the equality operator (`=`) is supported, and expressions can be combined with `AND`, `OR`, and `NOT`. When `view` is `VIOLATION_VIEW_DATA_BOUNDARY`, the following fields are supported: `violationId`, `category`, `state` (`UNRESOLVED`, `RESOLVED`, or `EXCEPTION`), `violationType` (`ORG_POLICY` or `RESOURCE`), `resourceType`, `resourceName`, `project`, `associatedOrgPolicyViolationId`, `cloudControlName`, `workloadDisplayName`, and `complianceType` (a framework ID). Example: `state = "UNRESOLVED" AND complianceType = "builtin-fedramp-high"`
interval_endTime: string, The end of the time window.
interval_startTime: string, The start of the time window.
- orderBy: string, Optional. Actionable sorting delegation.
- pageSize: integer, Optional. Page size.
- pageToken: string, Optional. Page token returned from previous request.
- view: string, Optional. Specifies the violation view(AssuredWorkloads or DataBoundary) for fetching violations.
+ orderBy: string, Optional. A comma-separated list of fields to sort the results by. The default sort order is ascending; to sort in descending order, append ` desc` to the field name. For example, `update_time desc,category`. When `view` is `VIOLATION_VIEW_DATA_BOUNDARY`, the following fields are supported: `begin_time`, `update_time`, `resource_type`, `state`, and `category`. If not specified, results are sorted by `begin_time` in descending order.
+ pageSize: integer, Optional. The maximum number of violations to return. The service might return fewer violations than this value. If unspecified, at most 100 violations are returned. The maximum value is 1000; values above 1000 are coerced to 1000.
+ pageToken: string, Optional. A page token, received from a previous `ListViolations` call. Provide this token to retrieve the subsequent page. When paginating, all other parameters that are provided to `ListViolations` must match the call that provided the page token.
+ view: string, Optional. The violation view (`VIOLATION_VIEW_ASSURED_WORKLOADS` or `VIOLATION_VIEW_DATA_BOUNDARY`) to list violations for. If not specified, `VIOLATION_VIEW_ASSURED_WORKLOADS` is used.
Allowed values
VIOLATION_VIEW_UNSPECIFIED - Defaults to the ASSURED_WORKLOADS view.
VIOLATION_VIEW_ASSURED_WORKLOADS - Includes the basic metadata about the violation.
@@ -231,71 +231,71 @@ Method Details
Returns:
An object of the form:
- { # Response of ListViolations endpoint.
- "nextPageToken": "A String", # The next page token. Returns empty if reached the last page.
- "totalSize": 42, # The total number of violations.
- "violations": [ # List of Violations under a Workload.
- { # Workload monitoring Violation.
- "acknowledged": True or False, # A boolean that indicates if the violation is acknowledged
- "acknowledgementTime": "A String", # Optional. Timestamp when this violation was acknowledged first. Check exception_contexts to find the last time the violation was acknowledged when there are more than one violations. This field will be absent when acknowledged field is marked as false.
- "affectedFrameworks": [ # Output only. List of compliance frameworks that are affected by this violation. This field is only populated when using `VIOLATION_VIEW_DATA_BOUNDARY`. e.g. "FedRAMP High", "NIST 800-53".
+ { # Response message for the `ListViolations` method.
+ "nextPageToken": "A String", # A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
+ "totalSize": 42, # The total number of violations that match the request, across all pages. This field might not be populated for all requests; when it's not populated, its value is `0`.
+ "violations": [ # The list of violations.
+ { # A compliance violation that's detected by Assured Workloads monitoring. A violation is created when an organization policy or a resource in a workload (or a Data Boundary scope) changes in a way that doesn't comply with the controls of the applicable compliance regime or framework.
+ "acknowledged": True or False, # Whether the violation has been acknowledged.
+ "acknowledgementTime": "A String", # Optional. The time when the violation was first acknowledged. To find the most recent time that the violation was acknowledged, check `exception_contexts`. This field is absent when `acknowledged` is `false`.
+ "affectedFrameworks": [ # Output only. The IDs of the compliance frameworks that are affected by this violation. For example, `builtin-fedramp-high`. This field is only populated when using `VIOLATION_VIEW_DATA_BOUNDARY`.
"A String",
],
- "associatedOrgPolicyViolationId": "A String", # Optional. Output only. Violation Id of the org-policy violation due to which the resource violation is caused. Empty for org-policy violations.
- "auditLogLink": "A String", # Output only. Immutable. Audit Log Link for violated resource Format: https://console.cloud.google.com/logs/query;query={logName}{protoPayload.resourceName}{timeRange}{folder}
- "beginTime": "A String", # Output only. Time of the event which triggered the Violation.
- "category": "A String", # Output only. Category under which this violation is mapped. e.g. Location, Service Usage, Access, Encryption, etc.
- "childResourceViolationCount": 42, # Optional. Output only. The number of resource violations for particular org policy violation. This will be 0 in case of resource violation.
- "description": "A String", # Output only. Description for the Violation. e.g. OrgPolicy gcp.resourceLocations has non compliant value.
- "exceptionAuditLogLink": "A String", # Output only. Immutable. Audit Log link to find business justification provided for violation exception. Format: https://console.cloud.google.com/logs/query;query={logName}{protoPayload.resourceName}{protoPayload.methodName}{timeRange}{organization}
- "exceptionContexts": [ # Output only. List of all the exception detail added for the violation.
- { # Violation exception detail.
- "acknowledgementTime": "A String", # Timestamp when the violation was acknowledged.
- "comment": "A String", # Business justification provided towards the acknowledgement of the violation.
- "userName": "A String", # Name of the user (or service account) who acknowledged the violation.
+ "associatedOrgPolicyViolationId": "A String", # Optional. Output only. For resource violations, the ID of the organization policy violation that caused this resource violation. This field is empty for organization policy violations.
+ "auditLogLink": "A String", # Output only. Immutable. A link to the Cloud Audit Logs entries for the violated resource. Format: `https://console.cloud.google.com/logs/query;query={logName}{protoPayload.resourceName}{timeRange}{folder}`
+ "beginTime": "A String", # Output only. The time of the event that triggered the violation.
+ "category": "A String", # Output only. The category that the violation is mapped to. For example, `Location`, `Service Usage`, `Access`, or `Encryption`.
+ "childResourceViolationCount": 42, # Optional. Output only. For organization policy violations, the number of resource violations that are associated with this violation. This field is `0` for resource violations.
+ "description": "A String", # Output only. A description of the violation. For example, `OrgPolicy gcp.resourceLocations has non compliant value.`
+ "exceptionAuditLogLink": "A String", # Output only. Immutable. A link to the Cloud Audit Logs entries that contain the business justification that was provided when the violation was acknowledged. Format: `https://console.cloud.google.com/logs/query;query={logName}{protoPayload.resourceName}{protoPayload.methodName}{timeRange}{organization}`
+ "exceptionContexts": [ # Output only. The details of all of the acknowledgements (exceptions) for the violation.
+ { # Details about an acknowledgement (exception) of a violation.
+ "acknowledgementTime": "A String", # The time when the violation was acknowledged.
+ "comment": "A String", # The business justification that was provided when the violation was acknowledged.
+ "userName": "A String", # The name of the user (or service account) who acknowledged the violation.
},
],
- "name": "A String", # Output only. Immutable. Name of the Violation. Format: organizations/{organization}/locations/{location}/workloads/{workload_id}/violations/{violations_id}
- "nonCompliantOrgPolicy": "A String", # Output only. Immutable. Name of the OrgPolicy which was modified with non-compliant change and resulted this violation. Format: projects/{project_number}/policies/{constraint_name} folders/{folder_id}/policies/{constraint_name} organizations/{organization_id}/policies/{constraint_name}
- "orgPolicyConstraint": "A String", # Output only. Immutable. The org-policy-constraint that was incorrectly changed, which resulted in this violation.
- "parentProjectNumber": "A String", # Optional. Output only. Parent project number where resource is present. Empty for org-policy violations.
- "remediation": { # Represents remediation guidance to resolve compliance violation for AssuredWorkload # Output only. Compliance violation remediation
- "compliantValues": [ # Values that can resolve the violation For example: for list org policy violations, this will either be the list of allowed or denied values
+ "name": "A String", # Output only. Immutable. The resource name of the violation. Format: `organizations/{organization}/locations/{location}/workloads/{workload_id}/violations/{violations_id}`
+ "nonCompliantOrgPolicy": "A String", # Output only. Immutable. The name of the organization policy that was modified with a non-compliant change and resulted in this violation. Formats: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}`
+ "orgPolicyConstraint": "A String", # Output only. Immutable. Deprecated: This field is deprecated and might be removed in a future version of the API. Use `non_compliant_org_policy` instead, which contains the full resource name of the organization policy, including the constraint name. The organization policy constraint that was changed in a non-compliant way, which resulted in this violation.
+ "parentProjectNumber": "A String", # Optional. Output only. For resource violations, the number of the project that contains the non-compliant resource. This field is empty for organization policy violations.
+ "remediation": { # Remediation guidance to resolve a compliance violation. # Output only. The remediation guidance for the violation.
+ "compliantValues": [ # The values that can resolve the violation. For example, for list organization policy violations, this field contains the list of allowed or denied values.
"A String",
],
- "instructions": { # Instructions to remediate violation # Required. Remediation instructions to resolve violations
- "consoleInstructions": { # Remediation instructions to resolve violation via cloud console # Remediation instructions to resolve violation via cloud console
- "additionalLinks": [ # Additional urls for more information about steps
+ "instructions": { # Instructions to remediate a violation. # Required. The instructions to resolve the violation.
+ "consoleInstructions": { # Instructions to remediate a violation by using the Google Cloud console. # Instructions to resolve the violation by using the Google Cloud console.
+ "additionalLinks": [ # Additional URLs with more information about the steps.
"A String",
],
- "consoleUris": [ # Link to console page where violations can be resolved
+ "consoleUris": [ # Links to the Google Cloud console pages where the violation can be resolved.
"A String",
],
- "steps": [ # Steps to resolve violation via cloud console
+ "steps": [ # The steps to resolve the violation by using the Google Cloud console.
"A String",
],
},
- "gcloudInstructions": { # Remediation instructions to resolve violation via gcloud cli # Remediation instructions to resolve violation via gcloud cli
- "additionalLinks": [ # Additional urls for more information about steps
+ "gcloudInstructions": { # Instructions to remediate a violation by using the Google Cloud CLI. # Instructions to resolve the violation by using the gcloud CLI.
+ "additionalLinks": [ # Additional URLs with more information about the steps.
"A String",
],
- "gcloudCommands": [ # Gcloud command to resolve violation
+ "gcloudCommands": [ # The gcloud CLI commands that resolve the violation.
"A String",
],
- "steps": [ # Steps to resolve violation via gcloud cli
+ "steps": [ # The steps to resolve the violation by using the gcloud CLI.
"A String",
],
},
},
- "remediationType": "A String", # Output only. Reemediation type based on the type of org policy values violated
+ "remediationType": "A String", # Output only. The remediation type, which is based on the type of organization policy values that were violated.
},
- "remediationMarkdown": "A String", # Output only. Contains the remediation instructions for the violation in markdown format.
- "resolveTime": "A String", # Output only. Time of the event which fixed the Violation. If the violation is ACTIVE this will be empty.
- "resourceName": "A String", # Optional. Output only. Name of the resource like //storage.googleapis.com/myprojectxyz-testbucket. Empty for org-policy violations.
- "resourceType": "A String", # Optional. Output only. Type of the resource like compute.googleapis.com/Disk, etc. Empty for org-policy violations.
- "state": "A String", # Output only. State of the violation
- "updateTime": "A String", # Output only. The last time when the Violation record was updated.
- "violationType": "A String", # Output only. Type of the violation
+ "remediationMarkdown": "A String", # Output only. The remediation instructions for the violation, in Markdown format. This field is only populated by `GetViolation` when using `VIOLATION_VIEW_DATA_BOUNDARY`. When this field isn't populated, see `remediation` instead.
+ "resolveTime": "A String", # Output only. The time of the event that resolved the violation. This field is empty if the violation is unresolved.
+ "resourceName": "A String", # Optional. Output only. For resource violations, the full resource name of the non-compliant resource. For example, `//storage.googleapis.com/myprojectxyz-testbucket`. This field is empty for organization policy violations.
+ "resourceType": "A String", # Optional. Output only. For resource violations, the type of the non-compliant resource. For example, `compute.googleapis.com/Disk`. This field is empty for organization policy violations.
+ "state": "A String", # Output only. The state of the violation.
+ "updateTime": "A String", # Output only. The time when the violation record was last updated.
+ "violationType": "A String", # Output only. The type of the violation.
},
],
}
diff --git a/docs/dyn/assuredworkloads_v1.projects.locations.dbFindingSummaries.html b/docs/dyn/assuredworkloads_v1.projects.locations.dbFindingSummaries.html
index e18362887b..e6f2fde809 100644
--- a/docs/dyn/assuredworkloads_v1.projects.locations.dbFindingSummaries.html
+++ b/docs/dyn/assuredworkloads_v1.projects.locations.dbFindingSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
-Lists the finding summary by category for a given scope.
+Lists summaries of the active findings in a Data Boundary scope (an organization, folder, or project), with one summary for each finding category.
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,13 +91,13 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
- Lists the finding summary by category for a given scope.
+ Lists summaries of the active findings in a Data Boundary scope (an organization, folder, or project), with one summary for each finding category.
Args:
- parent: string, Required. The parent scope for the framework overview page. Formats: - projects/{project}/locations/{location} - folders/{folder}/locations/{location} - organizations/{organization}/locations/{location} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The parent scope to list finding summaries for. Formats: * `organizations/{organization}/locations/{location}` * `folders/{folder}/locations/{location}` * `projects/{project}/locations/{location}` (required)
+ filter: string, Optional. A filter expression that restricts the framework deployments whose findings are summarized. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, and `framework_revision` (the major revision ID of the framework).
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the server picks an appropriate default.
- pageToken: string, Optional. A token that identifies the page of results that the server should return.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -107,22 +107,22 @@ Method Details
An object of the form:
{ # The response message for ListDbFindingSummaries.
- "dbFindingSummaries": [ # List of finding summary by category.
- { # The details for a finding.
- "findingCategory": "A String", # Output only. The category of the finding.
- "findingClass": "A String", # Output only. The class of the finding.
- "findingCount": "A String", # Output only. The count of the finding.
- "name": "A String", # Identifier. The name of the finding summary.
- "organizationPolicyFindingCount": "A String", # Output only. Number of active organization policy findings for this category.
- "relatedFrameworks": [ # Optional. The list of compliance frameworks that the finding belongs to.
+ "dbFindingSummaries": [ # The list of finding summaries, one for each finding category.
+ { # A summary of the active findings for a finding category in a Data Boundary scope.
+ "findingCategory": "A String", # Output only. The category of the findings that are summarized.
+ "findingClass": "A String", # Output only. The class of the findings.
+ "findingCount": "A String", # Output only. The total number of active findings in the category.
+ "name": "A String", # Identifier. The resource name of the finding summary.
+ "organizationPolicyFindingCount": "A String", # Output only. The number of active organization policy findings in the category.
+ "relatedFrameworks": [ # Optional. The display names of the compliance frameworks that the findings are related to.
"A String",
],
- "resourceFindingCount": "A String", # Output only. Number of active resource findings for this category.
- "severity": "A String", # Output only. The severity of the finding.
- "updateTime": "A String", # Output only. The last updated time of the finding.
+ "resourceFindingCount": "A String", # Output only. The number of active resource findings in the category.
+ "severity": "A String", # Output only. The severity of the findings.
+ "updateTime": "A String", # Output only. The time when the findings in the category were last updated.
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1.projects.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html b/docs/dyn/assuredworkloads_v1.projects.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
index 55b0102930..0810ca38ac 100644
--- a/docs/dyn/assuredworkloads_v1.projects.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
+++ b/docs/dyn/assuredworkloads_v1.projects.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
-Lists the control compliance summary for a given scope.
+Lists the compliance summaries of the controls in a framework compliance report.
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,13 +91,13 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
- Lists the control compliance summary for a given scope.
+ Lists the compliance summaries of the controls in a framework compliance report.
Args:
- parent: string, Required. The parent scope for the framework overview page. Format: organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The framework compliance report to list control compliance summaries for. Formats: * `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ filter: string, Optional. A filter expression that restricts the results. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, `framework_revision` (the major revision ID of the framework), and `end_time`. The `end_time` field accepts a single equality comparison with an [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) timestamp, for example `end_time = "2026-01-01T00:00:00Z"`. Only findings that were updated at or after this time are counted.
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the default page size is 50. The maximum value is 1000.
- pageToken: string, Optional. A token that identifies the page of results that the server should return.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -106,9 +106,9 @@ Method Details
Returns:
An object of the form:
- { # The response message for ListDBControlComplianceSummaries.
- "dbControlComplianceSummaries": [ # The list of control compliance details.
- { # The details for control compliance.
+ { # The response message for ListDbControlComplianceSummaries.
+ "dbControlComplianceSummaries": [ # The list of control compliance summaries.
+ { # A summary of the compliance status of a control in a framework compliance report.
"cloudControlReports": [ # The list of cloud control reports.
{ # The cloud control report.
"categories": [ # The list of categories for the cloud control.
@@ -170,7 +170,7 @@ Method Details
"description": "A String", # The description of the control.
"displayName": "A String", # The display name of the control.
"isFakeControl": True or False, # Whether the control is a fake control. Fake controls are created and mapped to cloud controls that don't belong to a control group.
- "name": "A String", # Identifier. The name of the control compliance summary.
+ "name": "A String", # Identifier. The resource name of the control compliance summary. Format: `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}/dbControlComplianceSummaries/{db_control_compliance_summary}`
"orgPolicyFindingCount": "A String", # Output only. Number of organization policy findings for this control.
"overallEvaluationState": "A String", # Output only. The overall evaluation status of the control.
"resourceFindingCount": "A String", # Output only. Number of resource findings for this control.
@@ -183,7 +183,7 @@ Method Details
"totalFindingsCount": 42, # The total number of findings for the control.
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1.projects.locations.dbFrameworkComplianceReports.html b/docs/dyn/assuredworkloads_v1.projects.locations.dbFrameworkComplianceReports.html
index 6a2a2fd97a..5f07618fab 100644
--- a/docs/dyn/assuredworkloads_v1.projects.locations.dbFrameworkComplianceReports.html
+++ b/docs/dyn/assuredworkloads_v1.projects.locations.dbFrameworkComplianceReports.html
@@ -81,21 +81,21 @@ Instance Methods
aggregate(name, filter=None, interval_endTime=None, interval_startTime=None, x__xgafv=None)
-Gets the aggregated compliance report over time for a given scope.
+Gets daily compliance reports over a time range for a framework that's deployed in a Data Boundary scope.
Close httplib2 connections.
fetch(name, endTime=None, filter=None, x__xgafv=None)
-Fetches the framework compliance report for a given scope.
+Fetches the current compliance report for a framework that's deployed in a Data Boundary scope (an organization, folder, or project). The report includes the number of passing, failing, and not assessed controls in the framework.
Method Details
aggregate(name, filter=None, interval_endTime=None, interval_startTime=None, x__xgafv=None)
- Gets the aggregated compliance report over time for a given scope.
+ Gets daily compliance reports over a time range for a framework that's deployed in a Data Boundary scope.
Args:
- name: string, Required. The name of the aggregated compliance report over time to retrieve. Format: `organizations/{organization_id}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
- filter: string, Optional. The filtering results.
+ name: string, Required. The name of the framework compliance report to aggregate over time. The report ID is the ID of the compliance framework, for example `builtin-fedramp-high`. Format: `organizations/{organization_id}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ filter: string, Optional. A filter expression that restricts the framework deployments that are included in the report. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, and `framework_revision` (the major revision ID of the framework).
interval_endTime: string, Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.
interval_startTime: string, Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.
x__xgafv: string, V1 error format.
@@ -107,9 +107,9 @@ Method Details
An object of the form:
{ # The response message for AggregateDbFrameworkComplianceReport.
- "aggregatedComplianceReports": [ # The list of aggregated compliance reports.
- { # The aggregated compliance report.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ "aggregatedComplianceReports": [ # The daily compliance reports for the requested time range.
+ { # A point-in-time compliance report for a framework.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework at `report_time`.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -127,7 +127,7 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "reportTime": "A String", # The report time of the aggregated compliance report.
+ "reportTime": "A String", # The time that the compliance report represents.
},
],
}
@@ -140,12 +140,12 @@ Method Details
fetch(name, endTime=None, filter=None, x__xgafv=None)
- Fetches the framework compliance report for a given scope.
+ Fetches the current compliance report for a framework that's deployed in a Data Boundary scope (an organization, folder, or project). The report includes the number of passing, failing, and not assessed controls in the framework.
Args:
- name: string, Required. The name of the framework compliance report to retrieve. (required)
- endTime: string, Optional. The end time of the report.
- filter: string, Optional. The filtering results.
+ name: string, Required. The name of the framework compliance report to retrieve. The report ID is the ID of the compliance framework, for example `builtin-fedramp-high`. Formats: * `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ endTime: string, Optional. The end time of the report. Reserved for future use. Currently, the report always reflects the current compliance state.
+ filter: string, Optional. A filter expression that restricts the results. Reserved for future use.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -155,7 +155,7 @@ Method Details
An object of the form:
{ # The response message for FetchDbFrameworkComplianceReport.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -173,20 +173,20 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "framework": "A String", # The name of the framework.
- "frameworkCategories": [ # The list of framework categories supported.
+ "framework": "A String", # The resource name of the compliance framework. For example, `organizations/{organization}/locations/{location}/frameworks/{framework_id}`.
+ "frameworkCategories": [ # The categories of the framework.
"A String",
],
"frameworkDescription": "A String", # The description of the framework.
- "frameworkDisplayName": "A String", # Optional. The display name for the framework.
+ "frameworkDisplayName": "A String", # Optional. The display name of the framework.
"frameworkType": "A String", # The type of the framework.
"majorRevisionId": "A String", # The latest major revision ID of the framework.
"minorRevisionId": "A String", # The latest minor revision ID of the latest major revision of the framework.
- "name": "A String", # The name of the framework compliance report.
- "supportedCloudProviders": [ # The list of cloud providers that are supported by the framework.
+ "name": "A String", # The resource name of the framework compliance report.
+ "supportedCloudProviders": [ # The cloud providers that are supported by the framework.
"A String",
],
- "targetResourceDetails": [ # The target resource details of the framework.
+ "targetResourceDetails": [ # The details of the target resources (organizations, folders, or projects) that the framework is deployed on.
{ # The details for a target resource.
"createTime": "A String", # The create time of the target resource.
"frameworkDeployment": "A String", # The framework deployment name for the target resource. For example, `organizations/{organization_id}/locations/{location}/frameworkDeployments/{framework_deployment_id}`
@@ -197,7 +197,7 @@ Method Details
"updateTime": "A String", # The update time of the target resource.
},
],
- "updateTime": "A String", # Output only. The last updated time of the report.
+ "updateTime": "A String", # Output only. The time when the report was last updated.
}
diff --git a/docs/dyn/assuredworkloads_v1.projects.locations.dbFrameworkComplianceSummaries.html b/docs/dyn/assuredworkloads_v1.projects.locations.dbFrameworkComplianceSummaries.html
index 2b237d1059..69f81139e3 100644
--- a/docs/dyn/assuredworkloads_v1.projects.locations.dbFrameworkComplianceSummaries.html
+++ b/docs/dyn/assuredworkloads_v1.projects.locations.dbFrameworkComplianceSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)
-Lists the framework compliance summary for a given scope.
+Lists the compliance summaries of the frameworks that are deployed in a Data Boundary scope (an organization, folder, or project).
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,14 +91,14 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)
- Lists the framework compliance summary for a given scope.
+ Lists the compliance summaries of the frameworks that are deployed in a Data Boundary scope (an organization, folder, or project).
Args:
- parent: string, Required. The parent scope for the framework compliance summary. Format: organizations/{organization}/locations/{location} folders/{folder}/locations/{location} projects/{project}/locations/{location} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The parent scope to list framework compliance summaries for. Formats: * `organizations/{organization}/locations/{location}` * `folders/{folder}/locations/{location}` * `projects/{project}/locations/{location}` (required)
+ filter: string, Optional. A filter expression that restricts the results. Reserved for future use.
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the default page size is 50. The maximum value is 1000.
- pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the next_page_token value from a previous result.
- view: string, Optional. Specifies the level of detail to return in the response.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
+ view: string, Optional. The level of detail to return for each summary. If not specified, `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_BASIC` is used.
Allowed values
FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_UNSPECIFIED - The default / unset value. The API will default to the BASIC view.
FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_BASIC - Includes basic compliance metadata, but omits trend data.
@@ -111,10 +111,10 @@ Method Details
Returns:
An object of the form:
- { # The response message for ListDbFrameworkComplianceSummariesResponse.
+ { # The response message for ListDbFrameworkComplianceSummaries.
"dbFrameworkComplianceSummaries": [ # The list of framework compliance summaries.
- { # The details for a framework compliance summary.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ { # A summary of the compliance status of a framework that's deployed in a Data Boundary scope.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -132,24 +132,24 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "controlsPassingTrend": { # The trend of a compliance metric. # Output only. The trend of controls that are passing for the given duration.
+ "controlsPassingTrend": { # The trend of a compliance metric. # Output only. The trend of passing controls over the trend duration. This field is only populated when using `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_FULL`.
"duration": "A String", # Output only. The duration for the trend.
"valuePercent": 3.14, # Output only. The trend value as a percentage. The value can be positive or negative.
},
- "findingCount": "A String", # Output only. The count of the findings generated against the framework.
- "framework": "A String", # The name of the framework.
- "frameworkCategories": [ # The list of framework categories supported by the framework.
+ "findingCount": "A String", # Output only. The number of findings that were generated against the framework. This field is only populated when using `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_FULL`.
+ "framework": "A String", # The resource name of the compliance framework.
+ "frameworkCategories": [ # The categories of the framework.
"A String",
],
- "frameworkDisplayName": "A String", # Optional. The display name for the framework.
- "frameworkType": "A String", # The type of framework.
+ "frameworkDisplayName": "A String", # Optional. The display name of the framework.
+ "frameworkType": "A String", # The type of the framework.
"majorRevisionId": "A String", # The major revision ID of the framework.
"minorRevisionId": "A String", # The minor revision ID of the framework.
- "name": "A String", # Identifier. The name of the framework compliance summary.
- "supportedCloudProviders": [ # The list of cloud providers supported by the framework.
+ "name": "A String", # Identifier. The resource name of the framework compliance summary.
+ "supportedCloudProviders": [ # The cloud providers that are supported by the framework.
"A String",
],
- "targetResourceDetails": [ # The target resource details for the framework.
+ "targetResourceDetails": [ # The details of the target resources (organizations, folders, or projects) that the framework is deployed on.
{ # The details for a target resource.
"createTime": "A String", # The create time of the target resource.
"frameworkDeployment": "A String", # The framework deployment name for the target resource. For example, `organizations/{organization_id}/locations/{location}/frameworkDeployments/{framework_deployment_id}`
@@ -162,7 +162,7 @@ Method Details
],
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1beta1.folders.locations.dbFindingSummaries.html b/docs/dyn/assuredworkloads_v1beta1.folders.locations.dbFindingSummaries.html
index 7a38fc8f7a..53671ca8c6 100644
--- a/docs/dyn/assuredworkloads_v1beta1.folders.locations.dbFindingSummaries.html
+++ b/docs/dyn/assuredworkloads_v1beta1.folders.locations.dbFindingSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
-Lists the finding summary by category for a given scope.
+Lists summaries of the active findings in a Data Boundary scope (an organization, folder, or project), with one summary for each finding category.
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,13 +91,13 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
- Lists the finding summary by category for a given scope.
+ Lists summaries of the active findings in a Data Boundary scope (an organization, folder, or project), with one summary for each finding category.
Args:
- parent: string, Required. The parent scope for the framework overview page. Formats: - projects/{project}/locations/{location} - folders/{folder}/locations/{location} - organizations/{organization}/locations/{location} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The parent scope to list finding summaries for. Formats: * `organizations/{organization}/locations/{location}` * `folders/{folder}/locations/{location}` * `projects/{project}/locations/{location}` (required)
+ filter: string, Optional. A filter expression that restricts the framework deployments whose findings are summarized. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, and `framework_revision` (the major revision ID of the framework).
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the server picks an appropriate default.
- pageToken: string, Optional. A token that identifies the page of results that the server should return.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -107,22 +107,22 @@ Method Details
An object of the form:
{ # The response message for ListDbFindingSummaries.
- "dbFindingSummaries": [ # List of finding summary by category.
- { # The details for a finding.
- "findingCategory": "A String", # Output only. The category of the finding.
- "findingClass": "A String", # Output only. The class of the finding.
- "findingCount": "A String", # Output only. The count of the finding.
- "name": "A String", # Identifier. The name of the finding summary.
- "organizationPolicyFindingCount": "A String", # Output only. Number of active organization policy findings for this category.
- "relatedFrameworks": [ # Optional. The list of compliance frameworks that the finding belongs to.
+ "dbFindingSummaries": [ # The list of finding summaries, one for each finding category.
+ { # A summary of the active findings for a finding category in a Data Boundary scope.
+ "findingCategory": "A String", # Output only. The category of the findings that are summarized.
+ "findingClass": "A String", # Output only. The class of the findings.
+ "findingCount": "A String", # Output only. The total number of active findings in the category.
+ "name": "A String", # Identifier. The resource name of the finding summary.
+ "organizationPolicyFindingCount": "A String", # Output only. The number of active organization policy findings in the category.
+ "relatedFrameworks": [ # Optional. The display names of the compliance frameworks that the findings are related to.
"A String",
],
- "resourceFindingCount": "A String", # Output only. Number of active resource findings for this category.
- "severity": "A String", # Output only. The severity of the finding.
- "updateTime": "A String", # Output only. The last updated time of the finding.
+ "resourceFindingCount": "A String", # Output only. The number of active resource findings in the category.
+ "severity": "A String", # Output only. The severity of the findings.
+ "updateTime": "A String", # Output only. The time when the findings in the category were last updated.
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1beta1.folders.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html b/docs/dyn/assuredworkloads_v1beta1.folders.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
index 2dd0cd3e9a..89463c7b87 100644
--- a/docs/dyn/assuredworkloads_v1beta1.folders.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
+++ b/docs/dyn/assuredworkloads_v1beta1.folders.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
-Lists the control compliance summary for a given scope.
+Lists the compliance summaries of the controls in a framework compliance report.
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,13 +91,13 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
- Lists the control compliance summary for a given scope.
+ Lists the compliance summaries of the controls in a framework compliance report.
Args:
- parent: string, Required. The parent scope for the framework overview page. Format: organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The framework compliance report to list control compliance summaries for. Formats: * `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ filter: string, Optional. A filter expression that restricts the results. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, `framework_revision` (the major revision ID of the framework), and `end_time`. The `end_time` field accepts a single equality comparison with an [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) timestamp, for example `end_time = "2026-01-01T00:00:00Z"`. Only findings that were updated at or after this time are counted.
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the default page size is 50. The maximum value is 1000.
- pageToken: string, Optional. A token that identifies the page of results that the server should return.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -106,9 +106,9 @@ Method Details
Returns:
An object of the form:
- { # The response message for ListDBControlComplianceSummaries.
- "dbControlComplianceSummaries": [ # The list of control compliance details.
- { # The details for control compliance.
+ { # The response message for ListDbControlComplianceSummaries.
+ "dbControlComplianceSummaries": [ # The list of control compliance summaries.
+ { # A summary of the compliance status of a control in a framework compliance report.
"cloudControlReports": [ # The list of cloud control reports.
{ # The cloud control report.
"categories": [ # The list of categories for the cloud control.
@@ -170,7 +170,7 @@ Method Details
"description": "A String", # The description of the control.
"displayName": "A String", # The display name of the control.
"isFakeControl": True or False, # Whether the control is a fake control. Fake controls are created and mapped to cloud controls that don't belong to a control group.
- "name": "A String", # Identifier. The name of the control compliance summary.
+ "name": "A String", # Identifier. The resource name of the control compliance summary. Format: `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}/dbControlComplianceSummaries/{db_control_compliance_summary}`
"orgPolicyFindingCount": "A String", # Output only. Number of organization policy findings for this control.
"overallEvaluationState": "A String", # Output only. The overall evaluation status of the control.
"resourceFindingCount": "A String", # Output only. Number of resource findings for this control.
@@ -183,7 +183,7 @@ Method Details
"totalFindingsCount": 42, # The total number of findings for the control.
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1beta1.folders.locations.dbFrameworkComplianceReports.html b/docs/dyn/assuredworkloads_v1beta1.folders.locations.dbFrameworkComplianceReports.html
index e915af25a6..d0bca89df3 100644
--- a/docs/dyn/assuredworkloads_v1beta1.folders.locations.dbFrameworkComplianceReports.html
+++ b/docs/dyn/assuredworkloads_v1beta1.folders.locations.dbFrameworkComplianceReports.html
@@ -81,21 +81,21 @@ Instance Methods
aggregate(name, filter=None, interval_endTime=None, interval_startTime=None, x__xgafv=None)
-Gets the aggregated compliance report over time for a given scope.
+Gets daily compliance reports over a time range for a framework that's deployed in a Data Boundary scope.
Close httplib2 connections.
fetch(name, endTime=None, filter=None, x__xgafv=None)
-Fetches the framework compliance report for a given scope.
+Fetches the current compliance report for a framework that's deployed in a Data Boundary scope (an organization, folder, or project). The report includes the number of passing, failing, and not assessed controls in the framework.
Method Details
aggregate(name, filter=None, interval_endTime=None, interval_startTime=None, x__xgafv=None)
- Gets the aggregated compliance report over time for a given scope.
+ Gets daily compliance reports over a time range for a framework that's deployed in a Data Boundary scope.
Args:
- name: string, Required. The name of the aggregated compliance report over time to retrieve. Format: `organizations/{organization_id}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
- filter: string, Optional. The filtering results.
+ name: string, Required. The name of the framework compliance report to aggregate over time. The report ID is the ID of the compliance framework, for example `builtin-fedramp-high`. Format: `organizations/{organization_id}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ filter: string, Optional. A filter expression that restricts the framework deployments that are included in the report. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, and `framework_revision` (the major revision ID of the framework).
interval_endTime: string, Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.
interval_startTime: string, Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.
x__xgafv: string, V1 error format.
@@ -107,9 +107,9 @@ Method Details
An object of the form:
{ # The response message for AggregateDbFrameworkComplianceReport.
- "aggregatedComplianceReports": [ # The list of aggregated compliance reports.
- { # The aggregated compliance report.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ "aggregatedComplianceReports": [ # The daily compliance reports for the requested time range.
+ { # A point-in-time compliance report for a framework.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework at `report_time`.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -127,7 +127,7 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "reportTime": "A String", # The report time of the aggregated compliance report.
+ "reportTime": "A String", # The time that the compliance report represents.
},
],
}
@@ -140,12 +140,12 @@ Method Details
fetch(name, endTime=None, filter=None, x__xgafv=None)
- Fetches the framework compliance report for a given scope.
+ Fetches the current compliance report for a framework that's deployed in a Data Boundary scope (an organization, folder, or project). The report includes the number of passing, failing, and not assessed controls in the framework.
Args:
- name: string, Required. The name of the framework compliance report to retrieve. (required)
- endTime: string, Optional. The end time of the report.
- filter: string, Optional. The filtering results.
+ name: string, Required. The name of the framework compliance report to retrieve. The report ID is the ID of the compliance framework, for example `builtin-fedramp-high`. Formats: * `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ endTime: string, Optional. The end time of the report. Reserved for future use. Currently, the report always reflects the current compliance state.
+ filter: string, Optional. A filter expression that restricts the results. Reserved for future use.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -155,7 +155,7 @@ Method Details
An object of the form:
{ # The response message for FetchDbFrameworkComplianceReport.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -173,20 +173,20 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "framework": "A String", # The name of the framework.
- "frameworkCategories": [ # The list of framework categories supported.
+ "framework": "A String", # The resource name of the compliance framework. For example, `organizations/{organization}/locations/{location}/frameworks/{framework_id}`.
+ "frameworkCategories": [ # The categories of the framework.
"A String",
],
"frameworkDescription": "A String", # The description of the framework.
- "frameworkDisplayName": "A String", # Optional. The display name for the framework.
+ "frameworkDisplayName": "A String", # Optional. The display name of the framework.
"frameworkType": "A String", # The type of the framework.
"majorRevisionId": "A String", # The latest major revision ID of the framework.
"minorRevisionId": "A String", # The latest minor revision ID of the latest major revision of the framework.
- "name": "A String", # The name of the framework compliance report.
- "supportedCloudProviders": [ # The list of cloud providers that are supported by the framework.
+ "name": "A String", # The resource name of the framework compliance report.
+ "supportedCloudProviders": [ # The cloud providers that are supported by the framework.
"A String",
],
- "targetResourceDetails": [ # The target resource details of the framework.
+ "targetResourceDetails": [ # The details of the target resources (organizations, folders, or projects) that the framework is deployed on.
{ # The details for a target resource.
"createTime": "A String", # The create time of the target resource.
"frameworkDeployment": "A String", # The framework deployment name for the target resource. For example, `organizations/{organization_id}/locations/{location}/frameworkDeployments/{framework_deployment_id}`
@@ -197,7 +197,7 @@ Method Details
"updateTime": "A String", # The update time of the target resource.
},
],
- "updateTime": "A String", # Output only. The last updated time of the report.
+ "updateTime": "A String", # Output only. The time when the report was last updated.
}
diff --git a/docs/dyn/assuredworkloads_v1beta1.folders.locations.dbFrameworkComplianceSummaries.html b/docs/dyn/assuredworkloads_v1beta1.folders.locations.dbFrameworkComplianceSummaries.html
index 6dda30d278..022c41aa9e 100644
--- a/docs/dyn/assuredworkloads_v1beta1.folders.locations.dbFrameworkComplianceSummaries.html
+++ b/docs/dyn/assuredworkloads_v1beta1.folders.locations.dbFrameworkComplianceSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)
-Lists the framework compliance summary for a given scope.
+Lists the compliance summaries of the frameworks that are deployed in a Data Boundary scope (an organization, folder, or project).
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,14 +91,14 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)
- Lists the framework compliance summary for a given scope.
+ Lists the compliance summaries of the frameworks that are deployed in a Data Boundary scope (an organization, folder, or project).
Args:
- parent: string, Required. The parent scope for the framework compliance summary. Format: organizations/{organization}/locations/{location} folders/{folder}/locations/{location} projects/{project}/locations/{location} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The parent scope to list framework compliance summaries for. Formats: * `organizations/{organization}/locations/{location}` * `folders/{folder}/locations/{location}` * `projects/{project}/locations/{location}` (required)
+ filter: string, Optional. A filter expression that restricts the results. Reserved for future use.
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the default page size is 50. The maximum value is 1000.
- pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the next_page_token value from a previous result.
- view: string, Optional. Specifies the level of detail to return in the response.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
+ view: string, Optional. The level of detail to return for each summary. If not specified, `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_BASIC` is used.
Allowed values
FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_UNSPECIFIED - The default / unset value. The API will default to the BASIC view.
FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_BASIC - Includes basic compliance metadata, but omits trend data.
@@ -111,10 +111,10 @@ Method Details
Returns:
An object of the form:
- { # The response message for ListDbFrameworkComplianceSummariesResponse.
+ { # The response message for ListDbFrameworkComplianceSummaries.
"dbFrameworkComplianceSummaries": [ # The list of framework compliance summaries.
- { # The details for a framework compliance summary.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ { # A summary of the compliance status of a framework that's deployed in a Data Boundary scope.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -132,24 +132,24 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "controlsPassingTrend": { # The trend of a compliance metric. # Output only. The trend of controls that are passing for the given duration.
+ "controlsPassingTrend": { # The trend of a compliance metric. # Output only. The trend of passing controls over the trend duration. This field is only populated when using `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_FULL`.
"duration": "A String", # Output only. The duration for the trend.
"valuePercent": 3.14, # Output only. The trend value as a percentage. The value can be positive or negative.
},
- "findingCount": "A String", # Output only. The count of the findings generated against the framework.
- "framework": "A String", # The name of the framework.
- "frameworkCategories": [ # The list of framework categories supported by the framework.
+ "findingCount": "A String", # Output only. The number of findings that were generated against the framework. This field is only populated when using `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_FULL`.
+ "framework": "A String", # The resource name of the compliance framework.
+ "frameworkCategories": [ # The categories of the framework.
"A String",
],
- "frameworkDisplayName": "A String", # Optional. The display name for the framework.
- "frameworkType": "A String", # The type of framework.
+ "frameworkDisplayName": "A String", # Optional. The display name of the framework.
+ "frameworkType": "A String", # The type of the framework.
"majorRevisionId": "A String", # The major revision ID of the framework.
"minorRevisionId": "A String", # The minor revision ID of the framework.
- "name": "A String", # Identifier. The name of the framework compliance summary.
- "supportedCloudProviders": [ # The list of cloud providers supported by the framework.
+ "name": "A String", # Identifier. The resource name of the framework compliance summary.
+ "supportedCloudProviders": [ # The cloud providers that are supported by the framework.
"A String",
],
- "targetResourceDetails": [ # The target resource details for the framework.
+ "targetResourceDetails": [ # The details of the target resources (organizations, folders, or projects) that the framework is deployed on.
{ # The details for a target resource.
"createTime": "A String", # The create time of the target resource.
"frameworkDeployment": "A String", # The framework deployment name for the target resource. For example, `organizations/{organization_id}/locations/{location}/frameworkDeployments/{framework_deployment_id}`
@@ -162,7 +162,7 @@ Method Details
],
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1beta1.organizations.locations.dbFindingSummaries.html b/docs/dyn/assuredworkloads_v1beta1.organizations.locations.dbFindingSummaries.html
index 9cef6ea61d..ba933dd108 100644
--- a/docs/dyn/assuredworkloads_v1beta1.organizations.locations.dbFindingSummaries.html
+++ b/docs/dyn/assuredworkloads_v1beta1.organizations.locations.dbFindingSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
-Lists the finding summary by category for a given scope.
+Lists summaries of the active findings in a Data Boundary scope (an organization, folder, or project), with one summary for each finding category.
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,13 +91,13 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
- Lists the finding summary by category for a given scope.
+ Lists summaries of the active findings in a Data Boundary scope (an organization, folder, or project), with one summary for each finding category.
Args:
- parent: string, Required. The parent scope for the framework overview page. Formats: - projects/{project}/locations/{location} - folders/{folder}/locations/{location} - organizations/{organization}/locations/{location} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The parent scope to list finding summaries for. Formats: * `organizations/{organization}/locations/{location}` * `folders/{folder}/locations/{location}` * `projects/{project}/locations/{location}` (required)
+ filter: string, Optional. A filter expression that restricts the framework deployments whose findings are summarized. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, and `framework_revision` (the major revision ID of the framework).
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the server picks an appropriate default.
- pageToken: string, Optional. A token that identifies the page of results that the server should return.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -107,22 +107,22 @@ Method Details
An object of the form:
{ # The response message for ListDbFindingSummaries.
- "dbFindingSummaries": [ # List of finding summary by category.
- { # The details for a finding.
- "findingCategory": "A String", # Output only. The category of the finding.
- "findingClass": "A String", # Output only. The class of the finding.
- "findingCount": "A String", # Output only. The count of the finding.
- "name": "A String", # Identifier. The name of the finding summary.
- "organizationPolicyFindingCount": "A String", # Output only. Number of active organization policy findings for this category.
- "relatedFrameworks": [ # Optional. The list of compliance frameworks that the finding belongs to.
+ "dbFindingSummaries": [ # The list of finding summaries, one for each finding category.
+ { # A summary of the active findings for a finding category in a Data Boundary scope.
+ "findingCategory": "A String", # Output only. The category of the findings that are summarized.
+ "findingClass": "A String", # Output only. The class of the findings.
+ "findingCount": "A String", # Output only. The total number of active findings in the category.
+ "name": "A String", # Identifier. The resource name of the finding summary.
+ "organizationPolicyFindingCount": "A String", # Output only. The number of active organization policy findings in the category.
+ "relatedFrameworks": [ # Optional. The display names of the compliance frameworks that the findings are related to.
"A String",
],
- "resourceFindingCount": "A String", # Output only. Number of active resource findings for this category.
- "severity": "A String", # Output only. The severity of the finding.
- "updateTime": "A String", # Output only. The last updated time of the finding.
+ "resourceFindingCount": "A String", # Output only. The number of active resource findings in the category.
+ "severity": "A String", # Output only. The severity of the findings.
+ "updateTime": "A String", # Output only. The time when the findings in the category were last updated.
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1beta1.organizations.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html b/docs/dyn/assuredworkloads_v1beta1.organizations.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
index e0d55aed54..7463c77aa8 100644
--- a/docs/dyn/assuredworkloads_v1beta1.organizations.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
+++ b/docs/dyn/assuredworkloads_v1beta1.organizations.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
-Lists the control compliance summary for a given scope.
+Lists the compliance summaries of the controls in a framework compliance report.
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,13 +91,13 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
- Lists the control compliance summary for a given scope.
+ Lists the compliance summaries of the controls in a framework compliance report.
Args:
- parent: string, Required. The parent scope for the framework overview page. Format: organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The framework compliance report to list control compliance summaries for. Formats: * `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ filter: string, Optional. A filter expression that restricts the results. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, `framework_revision` (the major revision ID of the framework), and `end_time`. The `end_time` field accepts a single equality comparison with an [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) timestamp, for example `end_time = "2026-01-01T00:00:00Z"`. Only findings that were updated at or after this time are counted.
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the default page size is 50. The maximum value is 1000.
- pageToken: string, Optional. A token that identifies the page of results that the server should return.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -106,9 +106,9 @@ Method Details
Returns:
An object of the form:
- { # The response message for ListDBControlComplianceSummaries.
- "dbControlComplianceSummaries": [ # The list of control compliance details.
- { # The details for control compliance.
+ { # The response message for ListDbControlComplianceSummaries.
+ "dbControlComplianceSummaries": [ # The list of control compliance summaries.
+ { # A summary of the compliance status of a control in a framework compliance report.
"cloudControlReports": [ # The list of cloud control reports.
{ # The cloud control report.
"categories": [ # The list of categories for the cloud control.
@@ -170,7 +170,7 @@ Method Details
"description": "A String", # The description of the control.
"displayName": "A String", # The display name of the control.
"isFakeControl": True or False, # Whether the control is a fake control. Fake controls are created and mapped to cloud controls that don't belong to a control group.
- "name": "A String", # Identifier. The name of the control compliance summary.
+ "name": "A String", # Identifier. The resource name of the control compliance summary. Format: `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}/dbControlComplianceSummaries/{db_control_compliance_summary}`
"orgPolicyFindingCount": "A String", # Output only. Number of organization policy findings for this control.
"overallEvaluationState": "A String", # Output only. The overall evaluation status of the control.
"resourceFindingCount": "A String", # Output only. Number of resource findings for this control.
@@ -183,7 +183,7 @@ Method Details
"totalFindingsCount": 42, # The total number of findings for the control.
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1beta1.organizations.locations.dbFrameworkComplianceReports.html b/docs/dyn/assuredworkloads_v1beta1.organizations.locations.dbFrameworkComplianceReports.html
index 0de86bb011..558a24582c 100644
--- a/docs/dyn/assuredworkloads_v1beta1.organizations.locations.dbFrameworkComplianceReports.html
+++ b/docs/dyn/assuredworkloads_v1beta1.organizations.locations.dbFrameworkComplianceReports.html
@@ -81,21 +81,21 @@ Instance Methods
aggregate(name, filter=None, interval_endTime=None, interval_startTime=None, x__xgafv=None)
-Gets the aggregated compliance report over time for a given scope.
+Gets daily compliance reports over a time range for a framework that's deployed in a Data Boundary scope.
Close httplib2 connections.
fetch(name, endTime=None, filter=None, x__xgafv=None)
-Fetches the framework compliance report for a given scope.
+Fetches the current compliance report for a framework that's deployed in a Data Boundary scope (an organization, folder, or project). The report includes the number of passing, failing, and not assessed controls in the framework.
Method Details
aggregate(name, filter=None, interval_endTime=None, interval_startTime=None, x__xgafv=None)
- Gets the aggregated compliance report over time for a given scope.
+ Gets daily compliance reports over a time range for a framework that's deployed in a Data Boundary scope.
Args:
- name: string, Required. The name of the aggregated compliance report over time to retrieve. Format: `organizations/{organization_id}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
- filter: string, Optional. The filtering results.
+ name: string, Required. The name of the framework compliance report to aggregate over time. The report ID is the ID of the compliance framework, for example `builtin-fedramp-high`. Format: `organizations/{organization_id}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ filter: string, Optional. A filter expression that restricts the framework deployments that are included in the report. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, and `framework_revision` (the major revision ID of the framework).
interval_endTime: string, Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.
interval_startTime: string, Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.
x__xgafv: string, V1 error format.
@@ -107,9 +107,9 @@ Method Details
An object of the form:
{ # The response message for AggregateDbFrameworkComplianceReport.
- "aggregatedComplianceReports": [ # The list of aggregated compliance reports.
- { # The aggregated compliance report.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ "aggregatedComplianceReports": [ # The daily compliance reports for the requested time range.
+ { # A point-in-time compliance report for a framework.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework at `report_time`.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -127,7 +127,7 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "reportTime": "A String", # The report time of the aggregated compliance report.
+ "reportTime": "A String", # The time that the compliance report represents.
},
],
}
@@ -140,12 +140,12 @@ Method Details
fetch(name, endTime=None, filter=None, x__xgafv=None)
- Fetches the framework compliance report for a given scope.
+ Fetches the current compliance report for a framework that's deployed in a Data Boundary scope (an organization, folder, or project). The report includes the number of passing, failing, and not assessed controls in the framework.
Args:
- name: string, Required. The name of the framework compliance report to retrieve. (required)
- endTime: string, Optional. The end time of the report.
- filter: string, Optional. The filtering results.
+ name: string, Required. The name of the framework compliance report to retrieve. The report ID is the ID of the compliance framework, for example `builtin-fedramp-high`. Formats: * `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ endTime: string, Optional. The end time of the report. Reserved for future use. Currently, the report always reflects the current compliance state.
+ filter: string, Optional. A filter expression that restricts the results. Reserved for future use.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -155,7 +155,7 @@ Method Details
An object of the form:
{ # The response message for FetchDbFrameworkComplianceReport.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -173,20 +173,20 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "framework": "A String", # The name of the framework.
- "frameworkCategories": [ # The list of framework categories supported.
+ "framework": "A String", # The resource name of the compliance framework. For example, `organizations/{organization}/locations/{location}/frameworks/{framework_id}`.
+ "frameworkCategories": [ # The categories of the framework.
"A String",
],
"frameworkDescription": "A String", # The description of the framework.
- "frameworkDisplayName": "A String", # Optional. The display name for the framework.
+ "frameworkDisplayName": "A String", # Optional. The display name of the framework.
"frameworkType": "A String", # The type of the framework.
"majorRevisionId": "A String", # The latest major revision ID of the framework.
"minorRevisionId": "A String", # The latest minor revision ID of the latest major revision of the framework.
- "name": "A String", # The name of the framework compliance report.
- "supportedCloudProviders": [ # The list of cloud providers that are supported by the framework.
+ "name": "A String", # The resource name of the framework compliance report.
+ "supportedCloudProviders": [ # The cloud providers that are supported by the framework.
"A String",
],
- "targetResourceDetails": [ # The target resource details of the framework.
+ "targetResourceDetails": [ # The details of the target resources (organizations, folders, or projects) that the framework is deployed on.
{ # The details for a target resource.
"createTime": "A String", # The create time of the target resource.
"frameworkDeployment": "A String", # The framework deployment name for the target resource. For example, `organizations/{organization_id}/locations/{location}/frameworkDeployments/{framework_deployment_id}`
@@ -197,7 +197,7 @@ Method Details
"updateTime": "A String", # The update time of the target resource.
},
],
- "updateTime": "A String", # Output only. The last updated time of the report.
+ "updateTime": "A String", # Output only. The time when the report was last updated.
}
diff --git a/docs/dyn/assuredworkloads_v1beta1.organizations.locations.dbFrameworkComplianceSummaries.html b/docs/dyn/assuredworkloads_v1beta1.organizations.locations.dbFrameworkComplianceSummaries.html
index a033e2ae8b..7dac2d4512 100644
--- a/docs/dyn/assuredworkloads_v1beta1.organizations.locations.dbFrameworkComplianceSummaries.html
+++ b/docs/dyn/assuredworkloads_v1beta1.organizations.locations.dbFrameworkComplianceSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)
-Lists the framework compliance summary for a given scope.
+Lists the compliance summaries of the frameworks that are deployed in a Data Boundary scope (an organization, folder, or project).
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,14 +91,14 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)
- Lists the framework compliance summary for a given scope.
+ Lists the compliance summaries of the frameworks that are deployed in a Data Boundary scope (an organization, folder, or project).
Args:
- parent: string, Required. The parent scope for the framework compliance summary. Format: organizations/{organization}/locations/{location} folders/{folder}/locations/{location} projects/{project}/locations/{location} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The parent scope to list framework compliance summaries for. Formats: * `organizations/{organization}/locations/{location}` * `folders/{folder}/locations/{location}` * `projects/{project}/locations/{location}` (required)
+ filter: string, Optional. A filter expression that restricts the results. Reserved for future use.
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the default page size is 50. The maximum value is 1000.
- pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the next_page_token value from a previous result.
- view: string, Optional. Specifies the level of detail to return in the response.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
+ view: string, Optional. The level of detail to return for each summary. If not specified, `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_BASIC` is used.
Allowed values
FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_UNSPECIFIED - The default / unset value. The API will default to the BASIC view.
FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_BASIC - Includes basic compliance metadata, but omits trend data.
@@ -111,10 +111,10 @@ Method Details
Returns:
An object of the form:
- { # The response message for ListDbFrameworkComplianceSummariesResponse.
+ { # The response message for ListDbFrameworkComplianceSummaries.
"dbFrameworkComplianceSummaries": [ # The list of framework compliance summaries.
- { # The details for a framework compliance summary.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ { # A summary of the compliance status of a framework that's deployed in a Data Boundary scope.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -132,24 +132,24 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "controlsPassingTrend": { # The trend of a compliance metric. # Output only. The trend of controls that are passing for the given duration.
+ "controlsPassingTrend": { # The trend of a compliance metric. # Output only. The trend of passing controls over the trend duration. This field is only populated when using `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_FULL`.
"duration": "A String", # Output only. The duration for the trend.
"valuePercent": 3.14, # Output only. The trend value as a percentage. The value can be positive or negative.
},
- "findingCount": "A String", # Output only. The count of the findings generated against the framework.
- "framework": "A String", # The name of the framework.
- "frameworkCategories": [ # The list of framework categories supported by the framework.
+ "findingCount": "A String", # Output only. The number of findings that were generated against the framework. This field is only populated when using `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_FULL`.
+ "framework": "A String", # The resource name of the compliance framework.
+ "frameworkCategories": [ # The categories of the framework.
"A String",
],
- "frameworkDisplayName": "A String", # Optional. The display name for the framework.
- "frameworkType": "A String", # The type of framework.
+ "frameworkDisplayName": "A String", # Optional. The display name of the framework.
+ "frameworkType": "A String", # The type of the framework.
"majorRevisionId": "A String", # The major revision ID of the framework.
"minorRevisionId": "A String", # The minor revision ID of the framework.
- "name": "A String", # Identifier. The name of the framework compliance summary.
- "supportedCloudProviders": [ # The list of cloud providers supported by the framework.
+ "name": "A String", # Identifier. The resource name of the framework compliance summary.
+ "supportedCloudProviders": [ # The cloud providers that are supported by the framework.
"A String",
],
- "targetResourceDetails": [ # The target resource details for the framework.
+ "targetResourceDetails": [ # The details of the target resources (organizations, folders, or projects) that the framework is deployed on.
{ # The details for a target resource.
"createTime": "A String", # The create time of the target resource.
"frameworkDeployment": "A String", # The framework deployment name for the target resource. For example, `organizations/{organization_id}/locations/{location}/frameworkDeployments/{framework_deployment_id}`
@@ -162,7 +162,7 @@ Method Details
],
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1beta1.organizations.locations.workloads.violations.html b/docs/dyn/assuredworkloads_v1beta1.organizations.locations.workloads.violations.html
index b2cd9b33a5..5e50004d32 100644
--- a/docs/dyn/assuredworkloads_v1beta1.organizations.locations.workloads.violations.html
+++ b/docs/dyn/assuredworkloads_v1beta1.organizations.locations.workloads.violations.html
@@ -82,7 +82,7 @@ Instance Methods
Close httplib2 connections.
get(name, view=None, x__xgafv=None)
-Retrieves Assured Workload Violation based on ID.
+Retrieves an Assured Workloads violation by its resource name.
Lists the Violations in the AssuredWorkload Environment. Callers may also choose to read across multiple Workloads as per [AIP-159](https://google.aip.dev/159) by using '-' (the hyphen or dash character) as a wildcard character instead of workload-id in the parent. Format `organizations/{org_id}/locations/{location}/workloads/-`
@@ -95,15 +95,15 @@ Method Details
Acknowledges an existing violation. By acknowledging a violation, users acknowledge the existence of a compliance violation in their workload and decide to ignore it due to a valid business justification. Acknowledgement is a permanent operation and it cannot be reverted.
Args:
- name: string, Required. The resource name of the Violation to acknowledge. Format: organizations/{organization}/locations/{location}/workloads/{workload}/violations/{violation} (required)
+ name: string, Required. The resource name of the violation to acknowledge. Format: `organizations/{organization}/locations/{location}/workloads/{workload}/violations/{violation}` (required)
body: object, The request body.
The object takes the form of:
-{ # Request for acknowledging the violation
- "acknowledgeType": "A String", # Optional. Acknowledge type of specified violation.
- "comment": "A String", # Required. Business justification explaining the need for violation acknowledgement
- "nonCompliantOrgPolicy": "A String", # Optional. This field is deprecated and will be removed in future version of the API. Name of the OrgPolicy which was modified with non-compliant change and resulted in this violation. Format: projects/{project_number}/policies/{constraint_name} folders/{folder_id}/policies/{constraint_name} organizations/{organization_id}/policies/{constraint_name}
- "view": "A String", # Optional. Specifies the violation view (`AssuredWorkloads` or `DataBoundary`) for acknowledging violations.
+{ # Request message for acknowledging a violation.
+ "acknowledgeType": "A String", # Optional. The scope of the acknowledgement for the specified violation. If not specified, `SINGLE_VIOLATION` is used.
+ "comment": "A String", # Required. The business justification for acknowledging the violation. The comment can't be empty or contain only whitespace characters.
+ "nonCompliantOrgPolicy": "A String", # Optional. Deprecated: This field is deprecated and will be removed in a future version of the API. The service identifies the violation to acknowledge by `name`, and ignores this field. Don't set this field. The name of the organization policy that was modified with a non-compliant change and resulted in this violation. Formats: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}`
+ "view": "A String", # Optional. The violation view (`VIOLATION_VIEW_ASSURED_WORKLOADS` or `VIOLATION_VIEW_DATA_BOUNDARY`) that the violation belongs to. If not specified, `VIOLATION_VIEW_ASSURED_WORKLOADS` is used.
}
x__xgafv: string, V1 error format.
@@ -114,7 +114,7 @@ Method Details
Returns:
An object of the form:
- { # Response for violation acknowledgement
+ { # Response message for acknowledging a violation. This message is empty.
}
@@ -125,11 +125,11 @@ Method Details
get(name, view=None, x__xgafv=None)
- Retrieves Assured Workload Violation based on ID.
+ Retrieves an Assured Workloads violation by its resource name.
Args:
- name: string, Required. The resource name of the Violation to fetch (ie. Violation.name). Format: organizations/{organization}/locations/{location}/workloads/{workload}/violations/{violation} (required)
- view: string, Optional. Specifies the violation view (`AssuredWorkloads` or `DataBoundary`) for fetching violations.
+ name: string, Required. The resource name of the violation to retrieve (that is, the value of `Violation.name`). Format: `organizations/{organization}/locations/{location}/workloads/{workload}/violations/{violation}` (required)
+ view: string, Optional. The violation view (`VIOLATION_VIEW_ASSURED_WORKLOADS` or `VIOLATION_VIEW_DATA_BOUNDARY`) that the violation belongs to. If not specified, `VIOLATION_VIEW_ASSURED_WORKLOADS` is used.
Allowed values
VIOLATION_VIEW_UNSPECIFIED - Defaults to the ASSURED_WORKLOADS view.
VIOLATION_VIEW_ASSURED_WORKLOADS - Includes the basic metadata about the violation.
@@ -142,67 +142,67 @@ Method Details
Returns:
An object of the form:
- { # Workload monitoring Violation.
- "acknowledged": True or False, # A boolean that indicates if the violation is acknowledged
- "acknowledgementTime": "A String", # Optional. Timestamp when this violation was acknowledged first. Check exception_contexts to find the last time the violation was acknowledged when there are more than one violations. This field will be absent when acknowledged field is marked as false.
- "affectedFrameworks": [ # Output only. List of compliance frameworks that are affected by this violation. This field is only populated when using `VIOLATION_VIEW_DATA_BOUNDARY`. e.g. "FedRAMP High", "NIST 800-53".
+ { # A compliance violation that's detected by Assured Workloads monitoring. A violation is created when an organization policy or a resource in a workload (or a Data Boundary scope) changes in a way that doesn't comply with the controls of the applicable compliance regime or framework.
+ "acknowledged": True or False, # Whether the violation has been acknowledged.
+ "acknowledgementTime": "A String", # Optional. The time when the violation was first acknowledged. To find the most recent time that the violation was acknowledged, check `exception_contexts`. This field is absent when `acknowledged` is `false`.
+ "affectedFrameworks": [ # Output only. The IDs of the compliance frameworks that are affected by this violation. For example, `builtin-fedramp-high`. This field is only populated when using `VIOLATION_VIEW_DATA_BOUNDARY`.
"A String",
],
- "associatedOrgPolicyViolationId": "A String", # Optional. Output only. Violation Id of the org-policy violation due to which the resource violation is caused. Empty for org-policy violations.
- "auditLogLink": "A String", # Output only. Immutable. Audit Log Link for violated resource Format: https://console.cloud.google.com/logs/query;query={logName}{protoPayload.resourceName}{timeRange}{folder}
- "beginTime": "A String", # Output only. Time of the event which triggered the Violation.
- "category": "A String", # Output only. Category under which this violation is mapped. e.g. Location, Service Usage, Access, Encryption, etc.
- "childResourceViolationCount": 42, # Optional. Output only. The number of resource violations for particular org policy violation. This will be 0 in case of resource violation.
- "description": "A String", # Output only. Description for the Violation. e.g. OrgPolicy gcp.resourceLocations has non compliant value.
- "exceptionAuditLogLink": "A String", # Output only. Immutable. Audit Log link to find business justification provided for violation exception. Format: https://console.cloud.google.com/logs/query;query={logName}{protoPayload.resourceName}{protoPayload.methodName}{timeRange}{organization}
- "exceptionContexts": [ # Output only. List of all the exception detail added for the violation.
- { # Violation exception detail.
- "acknowledgementTime": "A String", # Timestamp when the violation was acknowledged.
- "comment": "A String", # Business justification provided towards the acknowledgement of the violation.
- "userName": "A String", # Name of the user (or service account) who acknowledged the violation.
+ "associatedOrgPolicyViolationId": "A String", # Optional. Output only. For resource violations, the ID of the organization policy violation that caused this resource violation. This field is empty for organization policy violations.
+ "auditLogLink": "A String", # Output only. Immutable. A link to the Cloud Audit Logs entries for the violated resource. Format: `https://console.cloud.google.com/logs/query;query={logName}{protoPayload.resourceName}{timeRange}{folder}`
+ "beginTime": "A String", # Output only. The time of the event that triggered the violation.
+ "category": "A String", # Output only. The category that the violation is mapped to. For example, `Location`, `Service Usage`, `Access`, or `Encryption`.
+ "childResourceViolationCount": 42, # Optional. Output only. For organization policy violations, the number of resource violations that are associated with this violation. This field is `0` for resource violations.
+ "description": "A String", # Output only. A description of the violation. For example, `OrgPolicy gcp.resourceLocations has non compliant value.`
+ "exceptionAuditLogLink": "A String", # Output only. Immutable. A link to the Cloud Audit Logs entries that contain the business justification that was provided when the violation was acknowledged. Format: `https://console.cloud.google.com/logs/query;query={logName}{protoPayload.resourceName}{protoPayload.methodName}{timeRange}{organization}`
+ "exceptionContexts": [ # Output only. The details of all of the acknowledgements (exceptions) for the violation.
+ { # Details about an acknowledgement (exception) of a violation.
+ "acknowledgementTime": "A String", # The time when the violation was acknowledged.
+ "comment": "A String", # The business justification that was provided when the violation was acknowledged.
+ "userName": "A String", # The name of the user (or service account) who acknowledged the violation.
},
],
- "name": "A String", # Output only. Immutable. Name of the Violation. Format: organizations/{organization}/locations/{location}/workloads/{workload_id}/violations/{violations_id}
- "nonCompliantOrgPolicy": "A String", # Output only. Immutable. Name of the OrgPolicy which was modified with non-compliant change and resulted this violation. Format: projects/{project_number}/policies/{constraint_name} folders/{folder_id}/policies/{constraint_name} organizations/{organization_id}/policies/{constraint_name}
- "orgPolicyConstraint": "A String", # Output only. Immutable. The org-policy-constraint that was incorrectly changed, which resulted in this violation.
- "parentProjectNumber": "A String", # Optional. Output only. Parent project number where resource is present. Empty for org-policy violations.
- "remediation": { # Represents remediation guidance to resolve compliance violation for AssuredWorkload # Output only. Compliance violation remediation
- "compliantValues": [ # Values that can resolve the violation For example: for list org policy violations, this will either be the list of allowed or denied values
+ "name": "A String", # Output only. Immutable. The resource name of the violation. Format: `organizations/{organization}/locations/{location}/workloads/{workload_id}/violations/{violations_id}`
+ "nonCompliantOrgPolicy": "A String", # Output only. Immutable. The name of the organization policy that was modified with a non-compliant change and resulted in this violation. Formats: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}`
+ "orgPolicyConstraint": "A String", # Output only. Immutable. Deprecated: This field is deprecated and might be removed in a future version of the API. Use `non_compliant_org_policy` instead, which contains the full resource name of the organization policy, including the constraint name. The organization policy constraint that was changed in a non-compliant way, which resulted in this violation.
+ "parentProjectNumber": "A String", # Optional. Output only. For resource violations, the number of the project that contains the non-compliant resource. This field is empty for organization policy violations.
+ "remediation": { # Remediation guidance to resolve a compliance violation. # Output only. The remediation guidance for the violation.
+ "compliantValues": [ # The values that can resolve the violation. For example, for list organization policy violations, this field contains the list of allowed or denied values.
"A String",
],
- "instructions": { # Instructions to remediate violation # Required. Remediation instructions to resolve violations
- "consoleInstructions": { # Remediation instructions to resolve violation via cloud console # Remediation instructions to resolve violation via cloud console
- "additionalLinks": [ # Additional urls for more information about steps
+ "instructions": { # Instructions to remediate a violation. # Required. The instructions to resolve the violation.
+ "consoleInstructions": { # Instructions to remediate a violation by using the Google Cloud console. # Instructions to resolve the violation by using the Google Cloud console.
+ "additionalLinks": [ # Additional URLs with more information about the steps.
"A String",
],
- "consoleUris": [ # Link to console page where violations can be resolved
+ "consoleUris": [ # Links to the Google Cloud console pages where the violation can be resolved.
"A String",
],
- "steps": [ # Steps to resolve violation via cloud console
+ "steps": [ # The steps to resolve the violation by using the Google Cloud console.
"A String",
],
},
- "gcloudInstructions": { # Remediation instructions to resolve violation via gcloud cli # Remediation instructions to resolve violation via gcloud cli
- "additionalLinks": [ # Additional urls for more information about steps
+ "gcloudInstructions": { # Instructions to remediate a violation by using the Google Cloud CLI. # Instructions to resolve the violation by using the gcloud CLI.
+ "additionalLinks": [ # Additional URLs with more information about the steps.
"A String",
],
- "gcloudCommands": [ # Gcloud command to resolve violation
+ "gcloudCommands": [ # The gcloud CLI commands that resolve the violation.
"A String",
],
- "steps": [ # Steps to resolve violation via gcloud cli
+ "steps": [ # The steps to resolve the violation by using the gcloud CLI.
"A String",
],
},
},
- "remediationType": "A String", # Output only. Reemediation type based on the type of org policy values violated
+ "remediationType": "A String", # Output only. The remediation type, which is based on the type of organization policy values that were violated.
},
- "remediationMarkdown": "A String", # Output only. Contains the remediation instructions for the violation in markdown format.
- "resolveTime": "A String", # Output only. Time of the event which fixed the Violation. If the violation is ACTIVE this will be empty.
- "resourceName": "A String", # Optional. Output only. Name of the resource like //storage.googleapis.com/myprojectxyz-testbucket. Empty for org-policy violations.
- "resourceType": "A String", # Optional. Output only. Type of the resource like compute.googleapis.com/Disk, etc. Empty for org-policy violations.
- "state": "A String", # Output only. State of the violation
- "updateTime": "A String", # Output only. The last time when the Violation record was updated.
- "violationType": "A String", # Output only. Type of the violation
+ "remediationMarkdown": "A String", # Output only. The remediation instructions for the violation, in Markdown format. This field is only populated by `GetViolation` when using `VIOLATION_VIEW_DATA_BOUNDARY`. When this field isn't populated, see `remediation` instead.
+ "resolveTime": "A String", # Output only. The time of the event that resolved the violation. This field is empty if the violation is unresolved.
+ "resourceName": "A String", # Optional. Output only. For resource violations, the full resource name of the non-compliant resource. For example, `//storage.googleapis.com/myprojectxyz-testbucket`. This field is empty for organization policy violations.
+ "resourceType": "A String", # Optional. Output only. For resource violations, the type of the non-compliant resource. For example, `compute.googleapis.com/Disk`. This field is empty for organization policy violations.
+ "state": "A String", # Output only. The state of the violation.
+ "updateTime": "A String", # Output only. The time when the violation record was last updated.
+ "violationType": "A String", # Output only. The type of the violation.
}
@@ -211,14 +211,14 @@ Method Details
Lists the Violations in the AssuredWorkload Environment. Callers may also choose to read across multiple Workloads as per [AIP-159](https://google.aip.dev/159) by using '-' (the hyphen or dash character) as a wildcard character instead of workload-id in the parent. Format `organizations/{org_id}/locations/{location}/workloads/-`
Args:
- parent: string, Required. The Workload name. Format `organizations/{org_id}/locations/{location}/workloads/{workload}`. (required)
- filter: string, Optional. A custom filter for filtering by the Violations properties.
+ parent: string, Required. The workload to list violations for. To list violations across all workloads in an organization, use `-` as the workload ID. When `view` is `VIOLATION_VIEW_DATA_BOUNDARY`, violations are listed for the entire organization and location, and the workload ID is ignored. Format: `organizations/{organization}/locations/{location}/workloads/{workload}` (required)
+ filter: string, Optional. A filter expression that restricts the violations that are returned. The syntax follows [AIP-160](https://google.aip.dev/160). Only the equality operator (`=`) is supported, and expressions can be combined with `AND`, `OR`, and `NOT`. When `view` is `VIOLATION_VIEW_DATA_BOUNDARY`, the following fields are supported: `violationId`, `category`, `state` (`UNRESOLVED`, `RESOLVED`, or `EXCEPTION`), `violationType` (`ORG_POLICY` or `RESOURCE`), `resourceType`, `resourceName`, `project`, `associatedOrgPolicyViolationId`, `cloudControlName`, `workloadDisplayName`, and `complianceType` (a framework ID). Example: `state = "UNRESOLVED" AND complianceType = "builtin-fedramp-high"`
interval_endTime: string, The end of the time window.
interval_startTime: string, The start of the time window.
- orderBy: string, Optional. Actionable sorting delegation.
- pageSize: integer, Optional. Page size.
- pageToken: string, Optional. Page token returned from previous request.
- view: string, Optional. Specifies the violation view(AssuredWorkloads or DataBoundary) for fetching violations.
+ orderBy: string, Optional. A comma-separated list of fields to sort the results by. The default sort order is ascending; to sort in descending order, append ` desc` to the field name. For example, `update_time desc,category`. When `view` is `VIOLATION_VIEW_DATA_BOUNDARY`, the following fields are supported: `begin_time`, `update_time`, `resource_type`, `state`, and `category`. If not specified, results are sorted by `begin_time` in descending order.
+ pageSize: integer, Optional. The maximum number of violations to return. The service might return fewer violations than this value. If unspecified, at most 100 violations are returned. The maximum value is 1000; values above 1000 are coerced to 1000.
+ pageToken: string, Optional. A page token, received from a previous `ListViolations` call. Provide this token to retrieve the subsequent page. When paginating, all other parameters that are provided to `ListViolations` must match the call that provided the page token.
+ view: string, Optional. The violation view (`VIOLATION_VIEW_ASSURED_WORKLOADS` or `VIOLATION_VIEW_DATA_BOUNDARY`) to list violations for. If not specified, `VIOLATION_VIEW_ASSURED_WORKLOADS` is used.
Allowed values
VIOLATION_VIEW_UNSPECIFIED - Defaults to the ASSURED_WORKLOADS view.
VIOLATION_VIEW_ASSURED_WORKLOADS - Includes the basic metadata about the violation.
@@ -231,71 +231,71 @@ Method Details
Returns:
An object of the form:
- { # Response of ListViolations endpoint.
- "nextPageToken": "A String", # The next page token. Returns empty if reached the last page.
- "totalSize": 42, # The total number of violations.
- "violations": [ # List of Violations under a Workload.
- { # Workload monitoring Violation.
- "acknowledged": True or False, # A boolean that indicates if the violation is acknowledged
- "acknowledgementTime": "A String", # Optional. Timestamp when this violation was acknowledged first. Check exception_contexts to find the last time the violation was acknowledged when there are more than one violations. This field will be absent when acknowledged field is marked as false.
- "affectedFrameworks": [ # Output only. List of compliance frameworks that are affected by this violation. This field is only populated when using `VIOLATION_VIEW_DATA_BOUNDARY`. e.g. "FedRAMP High", "NIST 800-53".
+ { # Response message for the `ListViolations` method.
+ "nextPageToken": "A String", # A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
+ "totalSize": 42, # The total number of violations that match the request, across all pages. This field might not be populated for all requests; when it's not populated, its value is `0`.
+ "violations": [ # The list of violations.
+ { # A compliance violation that's detected by Assured Workloads monitoring. A violation is created when an organization policy or a resource in a workload (or a Data Boundary scope) changes in a way that doesn't comply with the controls of the applicable compliance regime or framework.
+ "acknowledged": True or False, # Whether the violation has been acknowledged.
+ "acknowledgementTime": "A String", # Optional. The time when the violation was first acknowledged. To find the most recent time that the violation was acknowledged, check `exception_contexts`. This field is absent when `acknowledged` is `false`.
+ "affectedFrameworks": [ # Output only. The IDs of the compliance frameworks that are affected by this violation. For example, `builtin-fedramp-high`. This field is only populated when using `VIOLATION_VIEW_DATA_BOUNDARY`.
"A String",
],
- "associatedOrgPolicyViolationId": "A String", # Optional. Output only. Violation Id of the org-policy violation due to which the resource violation is caused. Empty for org-policy violations.
- "auditLogLink": "A String", # Output only. Immutable. Audit Log Link for violated resource Format: https://console.cloud.google.com/logs/query;query={logName}{protoPayload.resourceName}{timeRange}{folder}
- "beginTime": "A String", # Output only. Time of the event which triggered the Violation.
- "category": "A String", # Output only. Category under which this violation is mapped. e.g. Location, Service Usage, Access, Encryption, etc.
- "childResourceViolationCount": 42, # Optional. Output only. The number of resource violations for particular org policy violation. This will be 0 in case of resource violation.
- "description": "A String", # Output only. Description for the Violation. e.g. OrgPolicy gcp.resourceLocations has non compliant value.
- "exceptionAuditLogLink": "A String", # Output only. Immutable. Audit Log link to find business justification provided for violation exception. Format: https://console.cloud.google.com/logs/query;query={logName}{protoPayload.resourceName}{protoPayload.methodName}{timeRange}{organization}
- "exceptionContexts": [ # Output only. List of all the exception detail added for the violation.
- { # Violation exception detail.
- "acknowledgementTime": "A String", # Timestamp when the violation was acknowledged.
- "comment": "A String", # Business justification provided towards the acknowledgement of the violation.
- "userName": "A String", # Name of the user (or service account) who acknowledged the violation.
+ "associatedOrgPolicyViolationId": "A String", # Optional. Output only. For resource violations, the ID of the organization policy violation that caused this resource violation. This field is empty for organization policy violations.
+ "auditLogLink": "A String", # Output only. Immutable. A link to the Cloud Audit Logs entries for the violated resource. Format: `https://console.cloud.google.com/logs/query;query={logName}{protoPayload.resourceName}{timeRange}{folder}`
+ "beginTime": "A String", # Output only. The time of the event that triggered the violation.
+ "category": "A String", # Output only. The category that the violation is mapped to. For example, `Location`, `Service Usage`, `Access`, or `Encryption`.
+ "childResourceViolationCount": 42, # Optional. Output only. For organization policy violations, the number of resource violations that are associated with this violation. This field is `0` for resource violations.
+ "description": "A String", # Output only. A description of the violation. For example, `OrgPolicy gcp.resourceLocations has non compliant value.`
+ "exceptionAuditLogLink": "A String", # Output only. Immutable. A link to the Cloud Audit Logs entries that contain the business justification that was provided when the violation was acknowledged. Format: `https://console.cloud.google.com/logs/query;query={logName}{protoPayload.resourceName}{protoPayload.methodName}{timeRange}{organization}`
+ "exceptionContexts": [ # Output only. The details of all of the acknowledgements (exceptions) for the violation.
+ { # Details about an acknowledgement (exception) of a violation.
+ "acknowledgementTime": "A String", # The time when the violation was acknowledged.
+ "comment": "A String", # The business justification that was provided when the violation was acknowledged.
+ "userName": "A String", # The name of the user (or service account) who acknowledged the violation.
},
],
- "name": "A String", # Output only. Immutable. Name of the Violation. Format: organizations/{organization}/locations/{location}/workloads/{workload_id}/violations/{violations_id}
- "nonCompliantOrgPolicy": "A String", # Output only. Immutable. Name of the OrgPolicy which was modified with non-compliant change and resulted this violation. Format: projects/{project_number}/policies/{constraint_name} folders/{folder_id}/policies/{constraint_name} organizations/{organization_id}/policies/{constraint_name}
- "orgPolicyConstraint": "A String", # Output only. Immutable. The org-policy-constraint that was incorrectly changed, which resulted in this violation.
- "parentProjectNumber": "A String", # Optional. Output only. Parent project number where resource is present. Empty for org-policy violations.
- "remediation": { # Represents remediation guidance to resolve compliance violation for AssuredWorkload # Output only. Compliance violation remediation
- "compliantValues": [ # Values that can resolve the violation For example: for list org policy violations, this will either be the list of allowed or denied values
+ "name": "A String", # Output only. Immutable. The resource name of the violation. Format: `organizations/{organization}/locations/{location}/workloads/{workload_id}/violations/{violations_id}`
+ "nonCompliantOrgPolicy": "A String", # Output only. Immutable. The name of the organization policy that was modified with a non-compliant change and resulted in this violation. Formats: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}`
+ "orgPolicyConstraint": "A String", # Output only. Immutable. Deprecated: This field is deprecated and might be removed in a future version of the API. Use `non_compliant_org_policy` instead, which contains the full resource name of the organization policy, including the constraint name. The organization policy constraint that was changed in a non-compliant way, which resulted in this violation.
+ "parentProjectNumber": "A String", # Optional. Output only. For resource violations, the number of the project that contains the non-compliant resource. This field is empty for organization policy violations.
+ "remediation": { # Remediation guidance to resolve a compliance violation. # Output only. The remediation guidance for the violation.
+ "compliantValues": [ # The values that can resolve the violation. For example, for list organization policy violations, this field contains the list of allowed or denied values.
"A String",
],
- "instructions": { # Instructions to remediate violation # Required. Remediation instructions to resolve violations
- "consoleInstructions": { # Remediation instructions to resolve violation via cloud console # Remediation instructions to resolve violation via cloud console
- "additionalLinks": [ # Additional urls for more information about steps
+ "instructions": { # Instructions to remediate a violation. # Required. The instructions to resolve the violation.
+ "consoleInstructions": { # Instructions to remediate a violation by using the Google Cloud console. # Instructions to resolve the violation by using the Google Cloud console.
+ "additionalLinks": [ # Additional URLs with more information about the steps.
"A String",
],
- "consoleUris": [ # Link to console page where violations can be resolved
+ "consoleUris": [ # Links to the Google Cloud console pages where the violation can be resolved.
"A String",
],
- "steps": [ # Steps to resolve violation via cloud console
+ "steps": [ # The steps to resolve the violation by using the Google Cloud console.
"A String",
],
},
- "gcloudInstructions": { # Remediation instructions to resolve violation via gcloud cli # Remediation instructions to resolve violation via gcloud cli
- "additionalLinks": [ # Additional urls for more information about steps
+ "gcloudInstructions": { # Instructions to remediate a violation by using the Google Cloud CLI. # Instructions to resolve the violation by using the gcloud CLI.
+ "additionalLinks": [ # Additional URLs with more information about the steps.
"A String",
],
- "gcloudCommands": [ # Gcloud command to resolve violation
+ "gcloudCommands": [ # The gcloud CLI commands that resolve the violation.
"A String",
],
- "steps": [ # Steps to resolve violation via gcloud cli
+ "steps": [ # The steps to resolve the violation by using the gcloud CLI.
"A String",
],
},
},
- "remediationType": "A String", # Output only. Reemediation type based on the type of org policy values violated
+ "remediationType": "A String", # Output only. The remediation type, which is based on the type of organization policy values that were violated.
},
- "remediationMarkdown": "A String", # Output only. Contains the remediation instructions for the violation in markdown format.
- "resolveTime": "A String", # Output only. Time of the event which fixed the Violation. If the violation is ACTIVE this will be empty.
- "resourceName": "A String", # Optional. Output only. Name of the resource like //storage.googleapis.com/myprojectxyz-testbucket. Empty for org-policy violations.
- "resourceType": "A String", # Optional. Output only. Type of the resource like compute.googleapis.com/Disk, etc. Empty for org-policy violations.
- "state": "A String", # Output only. State of the violation
- "updateTime": "A String", # Output only. The last time when the Violation record was updated.
- "violationType": "A String", # Output only. Type of the violation
+ "remediationMarkdown": "A String", # Output only. The remediation instructions for the violation, in Markdown format. This field is only populated by `GetViolation` when using `VIOLATION_VIEW_DATA_BOUNDARY`. When this field isn't populated, see `remediation` instead.
+ "resolveTime": "A String", # Output only. The time of the event that resolved the violation. This field is empty if the violation is unresolved.
+ "resourceName": "A String", # Optional. Output only. For resource violations, the full resource name of the non-compliant resource. For example, `//storage.googleapis.com/myprojectxyz-testbucket`. This field is empty for organization policy violations.
+ "resourceType": "A String", # Optional. Output only. For resource violations, the type of the non-compliant resource. For example, `compute.googleapis.com/Disk`. This field is empty for organization policy violations.
+ "state": "A String", # Output only. The state of the violation.
+ "updateTime": "A String", # Output only. The time when the violation record was last updated.
+ "violationType": "A String", # Output only. The type of the violation.
},
],
}
diff --git a/docs/dyn/assuredworkloads_v1beta1.projects.locations.dbFindingSummaries.html b/docs/dyn/assuredworkloads_v1beta1.projects.locations.dbFindingSummaries.html
index 63f8ffd200..4dc8524b19 100644
--- a/docs/dyn/assuredworkloads_v1beta1.projects.locations.dbFindingSummaries.html
+++ b/docs/dyn/assuredworkloads_v1beta1.projects.locations.dbFindingSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
-Lists the finding summary by category for a given scope.
+Lists summaries of the active findings in a Data Boundary scope (an organization, folder, or project), with one summary for each finding category.
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,13 +91,13 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
- Lists the finding summary by category for a given scope.
+ Lists summaries of the active findings in a Data Boundary scope (an organization, folder, or project), with one summary for each finding category.
Args:
- parent: string, Required. The parent scope for the framework overview page. Formats: - projects/{project}/locations/{location} - folders/{folder}/locations/{location} - organizations/{organization}/locations/{location} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The parent scope to list finding summaries for. Formats: * `organizations/{organization}/locations/{location}` * `folders/{folder}/locations/{location}` * `projects/{project}/locations/{location}` (required)
+ filter: string, Optional. A filter expression that restricts the framework deployments whose findings are summarized. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, and `framework_revision` (the major revision ID of the framework).
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the server picks an appropriate default.
- pageToken: string, Optional. A token that identifies the page of results that the server should return.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -107,22 +107,22 @@ Method Details
An object of the form:
{ # The response message for ListDbFindingSummaries.
- "dbFindingSummaries": [ # List of finding summary by category.
- { # The details for a finding.
- "findingCategory": "A String", # Output only. The category of the finding.
- "findingClass": "A String", # Output only. The class of the finding.
- "findingCount": "A String", # Output only. The count of the finding.
- "name": "A String", # Identifier. The name of the finding summary.
- "organizationPolicyFindingCount": "A String", # Output only. Number of active organization policy findings for this category.
- "relatedFrameworks": [ # Optional. The list of compliance frameworks that the finding belongs to.
+ "dbFindingSummaries": [ # The list of finding summaries, one for each finding category.
+ { # A summary of the active findings for a finding category in a Data Boundary scope.
+ "findingCategory": "A String", # Output only. The category of the findings that are summarized.
+ "findingClass": "A String", # Output only. The class of the findings.
+ "findingCount": "A String", # Output only. The total number of active findings in the category.
+ "name": "A String", # Identifier. The resource name of the finding summary.
+ "organizationPolicyFindingCount": "A String", # Output only. The number of active organization policy findings in the category.
+ "relatedFrameworks": [ # Optional. The display names of the compliance frameworks that the findings are related to.
"A String",
],
- "resourceFindingCount": "A String", # Output only. Number of active resource findings for this category.
- "severity": "A String", # Output only. The severity of the finding.
- "updateTime": "A String", # Output only. The last updated time of the finding.
+ "resourceFindingCount": "A String", # Output only. The number of active resource findings in the category.
+ "severity": "A String", # Output only. The severity of the findings.
+ "updateTime": "A String", # Output only. The time when the findings in the category were last updated.
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1beta1.projects.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html b/docs/dyn/assuredworkloads_v1beta1.projects.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
index 3abeed4c21..f66555bb6a 100644
--- a/docs/dyn/assuredworkloads_v1beta1.projects.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
+++ b/docs/dyn/assuredworkloads_v1beta1.projects.locations.dbFrameworkComplianceReports.dbControlComplianceSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
-Lists the control compliance summary for a given scope.
+Lists the compliance summaries of the controls in a framework compliance report.
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,13 +91,13 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
- Lists the control compliance summary for a given scope.
+ Lists the compliance summaries of the controls in a framework compliance report.
Args:
- parent: string, Required. The parent scope for the framework overview page. Format: organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The framework compliance report to list control compliance summaries for. Formats: * `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ filter: string, Optional. A filter expression that restricts the results. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, `framework_revision` (the major revision ID of the framework), and `end_time`. The `end_time` field accepts a single equality comparison with an [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) timestamp, for example `end_time = "2026-01-01T00:00:00Z"`. Only findings that were updated at or after this time are counted.
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the default page size is 50. The maximum value is 1000.
- pageToken: string, Optional. A token that identifies the page of results that the server should return.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -106,9 +106,9 @@ Method Details
Returns:
An object of the form:
- { # The response message for ListDBControlComplianceSummaries.
- "dbControlComplianceSummaries": [ # The list of control compliance details.
- { # The details for control compliance.
+ { # The response message for ListDbControlComplianceSummaries.
+ "dbControlComplianceSummaries": [ # The list of control compliance summaries.
+ { # A summary of the compliance status of a control in a framework compliance report.
"cloudControlReports": [ # The list of cloud control reports.
{ # The cloud control report.
"categories": [ # The list of categories for the cloud control.
@@ -170,7 +170,7 @@ Method Details
"description": "A String", # The description of the control.
"displayName": "A String", # The display name of the control.
"isFakeControl": True or False, # Whether the control is a fake control. Fake controls are created and mapped to cloud controls that don't belong to a control group.
- "name": "A String", # Identifier. The name of the control compliance summary.
+ "name": "A String", # Identifier. The resource name of the control compliance summary. Format: `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}/dbControlComplianceSummaries/{db_control_compliance_summary}`
"orgPolicyFindingCount": "A String", # Output only. Number of organization policy findings for this control.
"overallEvaluationState": "A String", # Output only. The overall evaluation status of the control.
"resourceFindingCount": "A String", # Output only. Number of resource findings for this control.
@@ -183,7 +183,7 @@ Method Details
"totalFindingsCount": 42, # The total number of findings for the control.
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/assuredworkloads_v1beta1.projects.locations.dbFrameworkComplianceReports.html b/docs/dyn/assuredworkloads_v1beta1.projects.locations.dbFrameworkComplianceReports.html
index 16a2d4de7e..af08da0791 100644
--- a/docs/dyn/assuredworkloads_v1beta1.projects.locations.dbFrameworkComplianceReports.html
+++ b/docs/dyn/assuredworkloads_v1beta1.projects.locations.dbFrameworkComplianceReports.html
@@ -81,21 +81,21 @@ Instance Methods
aggregate(name, filter=None, interval_endTime=None, interval_startTime=None, x__xgafv=None)
-Gets the aggregated compliance report over time for a given scope.
+Gets daily compliance reports over a time range for a framework that's deployed in a Data Boundary scope.
Close httplib2 connections.
fetch(name, endTime=None, filter=None, x__xgafv=None)
-Fetches the framework compliance report for a given scope.
+Fetches the current compliance report for a framework that's deployed in a Data Boundary scope (an organization, folder, or project). The report includes the number of passing, failing, and not assessed controls in the framework.
Method Details
aggregate(name, filter=None, interval_endTime=None, interval_startTime=None, x__xgafv=None)
- Gets the aggregated compliance report over time for a given scope.
+ Gets daily compliance reports over a time range for a framework that's deployed in a Data Boundary scope.
Args:
- name: string, Required. The name of the aggregated compliance report over time to retrieve. Format: `organizations/{organization_id}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
- filter: string, Optional. The filtering results.
+ name: string, Required. The name of the framework compliance report to aggregate over time. The report ID is the ID of the compliance framework, for example `builtin-fedramp-high`. Format: `organizations/{organization_id}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ filter: string, Optional. A filter expression that restricts the framework deployments that are included in the report. The syntax follows [AIP-160](https://google.aip.dev/160). Supported fields are `framework_deployment`, `framework_name`, and `framework_revision` (the major revision ID of the framework).
interval_endTime: string, Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.
interval_startTime: string, Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.
x__xgafv: string, V1 error format.
@@ -107,9 +107,9 @@ Method Details
An object of the form:
{ # The response message for AggregateDbFrameworkComplianceReport.
- "aggregatedComplianceReports": [ # The list of aggregated compliance reports.
- { # The aggregated compliance report.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ "aggregatedComplianceReports": [ # The daily compliance reports for the requested time range.
+ { # A point-in-time compliance report for a framework.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework at `report_time`.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -127,7 +127,7 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "reportTime": "A String", # The report time of the aggregated compliance report.
+ "reportTime": "A String", # The time that the compliance report represents.
},
],
}
@@ -140,12 +140,12 @@ Method Details
fetch(name, endTime=None, filter=None, x__xgafv=None)
- Fetches the framework compliance report for a given scope.
+ Fetches the current compliance report for a framework that's deployed in a Data Boundary scope (an organization, folder, or project). The report includes the number of passing, failing, and not assessed controls in the framework.
Args:
- name: string, Required. The name of the framework compliance report to retrieve. (required)
- endTime: string, Optional. The end time of the report.
- filter: string, Optional. The filtering results.
+ name: string, Required. The name of the framework compliance report to retrieve. The report ID is the ID of the compliance framework, for example `builtin-fedramp-high`. Formats: * `organizations/{organization}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `folders/{folder}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` * `projects/{project}/locations/{location}/dbFrameworkComplianceReports/{db_framework_compliance_report}` (required)
+ endTime: string, Optional. The end time of the report. Reserved for future use. Currently, the report always reflects the current compliance state.
+ filter: string, Optional. A filter expression that restricts the results. Reserved for future use.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -155,7 +155,7 @@ Method Details
An object of the form:
{ # The response message for FetchDbFrameworkComplianceReport.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -173,20 +173,20 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "framework": "A String", # The name of the framework.
- "frameworkCategories": [ # The list of framework categories supported.
+ "framework": "A String", # The resource name of the compliance framework. For example, `organizations/{organization}/locations/{location}/frameworks/{framework_id}`.
+ "frameworkCategories": [ # The categories of the framework.
"A String",
],
"frameworkDescription": "A String", # The description of the framework.
- "frameworkDisplayName": "A String", # Optional. The display name for the framework.
+ "frameworkDisplayName": "A String", # Optional. The display name of the framework.
"frameworkType": "A String", # The type of the framework.
"majorRevisionId": "A String", # The latest major revision ID of the framework.
"minorRevisionId": "A String", # The latest minor revision ID of the latest major revision of the framework.
- "name": "A String", # The name of the framework compliance report.
- "supportedCloudProviders": [ # The list of cloud providers that are supported by the framework.
+ "name": "A String", # The resource name of the framework compliance report.
+ "supportedCloudProviders": [ # The cloud providers that are supported by the framework.
"A String",
],
- "targetResourceDetails": [ # The target resource details of the framework.
+ "targetResourceDetails": [ # The details of the target resources (organizations, folders, or projects) that the framework is deployed on.
{ # The details for a target resource.
"createTime": "A String", # The create time of the target resource.
"frameworkDeployment": "A String", # The framework deployment name for the target resource. For example, `organizations/{organization_id}/locations/{location}/frameworkDeployments/{framework_deployment_id}`
@@ -197,7 +197,7 @@ Method Details
"updateTime": "A String", # The update time of the target resource.
},
],
- "updateTime": "A String", # Output only. The last updated time of the report.
+ "updateTime": "A String", # Output only. The time when the report was last updated.
}
diff --git a/docs/dyn/assuredworkloads_v1beta1.projects.locations.dbFrameworkComplianceSummaries.html b/docs/dyn/assuredworkloads_v1beta1.projects.locations.dbFrameworkComplianceSummaries.html
index 82e927b188..142d0a271b 100644
--- a/docs/dyn/assuredworkloads_v1beta1.projects.locations.dbFrameworkComplianceSummaries.html
+++ b/docs/dyn/assuredworkloads_v1beta1.projects.locations.dbFrameworkComplianceSummaries.html
@@ -79,7 +79,7 @@ Instance Methods
Close httplib2 connections.
list(parent, filter=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)
-Lists the framework compliance summary for a given scope.
+Lists the compliance summaries of the frameworks that are deployed in a Data Boundary scope (an organization, folder, or project).
list_next(previous_request, previous_response)
Retrieves the next page of results.
@@ -91,14 +91,14 @@ Method Details
list(parent, filter=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)
- Lists the framework compliance summary for a given scope.
+ Lists the compliance summaries of the frameworks that are deployed in a Data Boundary scope (an organization, folder, or project).
Args:
- parent: string, Required. The parent scope for the framework compliance summary. Format: organizations/{organization}/locations/{location} folders/{folder}/locations/{location} projects/{project}/locations/{location} (required)
- filter: string, Optional. The filtering results.
+ parent: string, Required. The parent scope to list framework compliance summaries for. Formats: * `organizations/{organization}/locations/{location}` * `folders/{folder}/locations/{location}` * `projects/{project}/locations/{location}` (required)
+ filter: string, Optional. A filter expression that restricts the results. Reserved for future use.
pageSize: integer, Optional. The requested page size. The server might return fewer items than requested. If unspecified, the default page size is 50. The maximum value is 1000.
- pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the next_page_token value from a previous result.
- view: string, Optional. Specifies the level of detail to return in the response.
+ pageToken: string, Optional. A token that identifies the page of results that the server should return. Pass the `next_page_token` value from a previous result.
+ view: string, Optional. The level of detail to return for each summary. If not specified, `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_BASIC` is used.
Allowed values
FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_UNSPECIFIED - The default / unset value. The API will default to the BASIC view.
FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_BASIC - Includes basic compliance metadata, but omits trend data.
@@ -111,10 +111,10 @@ Method Details
Returns:
An object of the form:
- { # The response message for ListDbFrameworkComplianceSummariesResponse.
+ { # The response message for ListDbFrameworkComplianceSummaries.
"dbFrameworkComplianceSummaries": [ # The list of framework compliance summaries.
- { # The details for a framework compliance summary.
- "controlAssessmentDetails": { # The details for a control assessment. # The control assessment details of the framework.
+ { # A summary of the compliance status of a framework that's deployed in a Data Boundary scope.
+ "controlAssessmentDetails": { # The details for a control assessment. # The number of passing, failing, and not assessed controls in the framework.
"assessedPassingControlIds": [ # The list of controls that were assessed and are passing.
"A String",
],
@@ -132,24 +132,24 @@ Method Details
],
"passingControls": 42, # The number of controls that are passing or not assessed.
},
- "controlsPassingTrend": { # The trend of a compliance metric. # Output only. The trend of controls that are passing for the given duration.
+ "controlsPassingTrend": { # The trend of a compliance metric. # Output only. The trend of passing controls over the trend duration. This field is only populated when using `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_FULL`.
"duration": "A String", # Output only. The duration for the trend.
"valuePercent": 3.14, # Output only. The trend value as a percentage. The value can be positive or negative.
},
- "findingCount": "A String", # Output only. The count of the findings generated against the framework.
- "framework": "A String", # The name of the framework.
- "frameworkCategories": [ # The list of framework categories supported by the framework.
+ "findingCount": "A String", # Output only. The number of findings that were generated against the framework. This field is only populated when using `FRAMEWORK_COMPLIANCE_SUMMARY_VIEW_FULL`.
+ "framework": "A String", # The resource name of the compliance framework.
+ "frameworkCategories": [ # The categories of the framework.
"A String",
],
- "frameworkDisplayName": "A String", # Optional. The display name for the framework.
- "frameworkType": "A String", # The type of framework.
+ "frameworkDisplayName": "A String", # Optional. The display name of the framework.
+ "frameworkType": "A String", # The type of the framework.
"majorRevisionId": "A String", # The major revision ID of the framework.
"minorRevisionId": "A String", # The minor revision ID of the framework.
- "name": "A String", # Identifier. The name of the framework compliance summary.
- "supportedCloudProviders": [ # The list of cloud providers supported by the framework.
+ "name": "A String", # Identifier. The resource name of the framework compliance summary.
+ "supportedCloudProviders": [ # The cloud providers that are supported by the framework.
"A String",
],
- "targetResourceDetails": [ # The target resource details for the framework.
+ "targetResourceDetails": [ # The details of the target resources (organizations, folders, or projects) that the framework is deployed on.
{ # The details for a target resource.
"createTime": "A String", # The create time of the target resource.
"frameworkDeployment": "A String", # The framework deployment name for the target resource. For example, `organizations/{organization_id}/locations/{location}/frameworkDeployments/{framework_deployment_id}`
@@ -162,7 +162,7 @@ Method Details
],
},
],
- "nextPageToken": "A String", # Output only. The token to retrieve the next page of results.
+ "nextPageToken": "A String", # Output only. A token that can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.
}
diff --git a/docs/dyn/backupdr_v1.projects.locations.autoProtectionPolicies.bindings.html b/docs/dyn/backupdr_v1.projects.locations.autoProtectionPolicies.bindings.html
index 286867225c..b6badcd5c1 100644
--- a/docs/dyn/backupdr_v1.projects.locations.autoProtectionPolicies.bindings.html
+++ b/docs/dyn/backupdr_v1.projects.locations.autoProtectionPolicies.bindings.html
@@ -83,7 +83,7 @@ Instance Methods
close()
Close httplib2 connections.
- create(parent, autoProtectionPolicyBindingId=None, body=None, x__xgafv=None)
+ create(parent, autoProtectionPolicyBindingId=None, body=None, requestId=None, x__xgafv=None)
Creates a new AutoProtectionPolicyBinding in a given project and location.
@@ -104,7 +104,7 @@ Method Details
- create(parent, autoProtectionPolicyBindingId=None, body=None, x__xgafv=None)
+ create(parent, autoProtectionPolicyBindingId=None, body=None, requestId=None, x__xgafv=None)
Creates a new AutoProtectionPolicyBinding in a given project and location.
Args:
@@ -119,15 +119,16 @@ Method Details
"protectedResourceCount": "A String", # Output only. The number of matching resources that are successfully protected.
},
"createTime": "A String", # Output only. The timestamp when the binding was created.
- "description": "A String", # Optional. A description of the binding.
+ "description": "A String", # Optional. A description of the binding. The description must be at most 2048 characters.
"etag": "A String", # Optional. Output only. The etag for the binding. If this is provided on update, it must match the server's etag.
- "name": "A String", # Identifier. The resource name of the AutoProtectionPolicyBinding. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}`
+ "name": "A String", # Output only. Identifier. The resource name of the AutoProtectionPolicyBinding. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}`
"scope": "A String", # Required. Immutable. Resource Id of target container on which policy will be applied. Format: projects/{project_id}
"state": "A String", # Output only. The current state of the AutoProtectionPolicyBinding.
"updateTime": "A String", # Output only. The timestamp when the binding was last updated.
}
- autoProtectionPolicyBindingId: string, Required. The ID to use for the binding. This will become the final component of the binding's resource name.
+ autoProtectionPolicyBindingId: string, Required. The ID to use for the binding. This will become the final component of the binding's resource name. This value must start with a lowercase letter followed by up to 62 lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
+ requestId: string, Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -178,9 +179,9 @@ Method Details
"protectedResourceCount": "A String", # Output only. The number of matching resources that are successfully protected.
},
"createTime": "A String", # Output only. The timestamp when the binding was created.
- "description": "A String", # Optional. A description of the binding.
+ "description": "A String", # Optional. A description of the binding. The description must be at most 2048 characters.
"etag": "A String", # Optional. Output only. The etag for the binding. If this is provided on update, it must match the server's etag.
- "name": "A String", # Identifier. The resource name of the AutoProtectionPolicyBinding. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}`
+ "name": "A String", # Output only. Identifier. The resource name of the AutoProtectionPolicyBinding. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}`
"scope": "A String", # Required. Immutable. Resource Id of target container on which policy will be applied. Format: projects/{project_id}
"state": "A String", # Output only. The current state of the AutoProtectionPolicyBinding.
"updateTime": "A String", # Output only. The timestamp when the binding was last updated.
@@ -197,6 +198,8 @@ Method Details
The object takes the form of:
{ # Request message for initiating delete of an AutoProtectionPolicyBinding.
+ "etag": "A String", # Optional. The current etag of the AutoProtectionPolicyBinding. If an etag is provided and does not match the current etag of the binding, deletion will be blocked and an ABORTED error will be returned.
+ "requestId": "A String", # Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
}
x__xgafv: string, V1 error format.
@@ -255,9 +258,9 @@ Method Details
"protectedResourceCount": "A String", # Output only. The number of matching resources that are successfully protected.
},
"createTime": "A String", # Output only. The timestamp when the binding was created.
- "description": "A String", # Optional. A description of the binding.
+ "description": "A String", # Optional. A description of the binding. The description must be at most 2048 characters.
"etag": "A String", # Optional. Output only. The etag for the binding. If this is provided on update, it must match the server's etag.
- "name": "A String", # Identifier. The resource name of the AutoProtectionPolicyBinding. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}`
+ "name": "A String", # Output only. Identifier. The resource name of the AutoProtectionPolicyBinding. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}`
"scope": "A String", # Required. Immutable. Resource Id of target container on which policy will be applied. Format: projects/{project_id}
"state": "A String", # Output only. The current state of the AutoProtectionPolicyBinding.
"updateTime": "A String", # Output only. The timestamp when the binding was last updated.
diff --git a/docs/dyn/backupdr_v1.projects.locations.autoProtectionPolicies.html b/docs/dyn/backupdr_v1.projects.locations.autoProtectionPolicies.html
index b5f501a2b0..4d140fcb35 100644
--- a/docs/dyn/backupdr_v1.projects.locations.autoProtectionPolicies.html
+++ b/docs/dyn/backupdr_v1.projects.locations.autoProtectionPolicies.html
@@ -83,10 +83,10 @@ Instance Methods
close()
Close httplib2 connections.
- create(parent, autoProtectionPolicyId=None, body=None, x__xgafv=None)
+ create(parent, autoProtectionPolicyId=None, body=None, requestId=None, x__xgafv=None)
Creates a new AutoProtectionPolicy in a given project and location.
- delete(name, etag=None, x__xgafv=None)
+ delete(name, etag=None, requestId=None, x__xgafv=None)
Deletes a single AutoProtectionPolicy.
@@ -98,7 +98,7 @@ Instance Methods
list_next(previous_request, previous_response)
Retrieves the next page of results.
- patch(name, body=None, updateMask=None, x__xgafv=None)
+ patch(name, body=None, requestId=None, updateMask=None, x__xgafv=None)
Updates the parameters of a single AutoProtectionPolicy.
Method Details
@@ -107,7 +107,7 @@ Method Details
- create(parent, autoProtectionPolicyId=None, body=None, x__xgafv=None)
+ create(parent, autoProtectionPolicyId=None, body=None, requestId=None, x__xgafv=None)
Creates a new AutoProtectionPolicy in a given project and location.
Args:
@@ -138,9 +138,9 @@ Method Details
},
],
},
- "description": "A String", # Optional. A description of the policy.
+ "description": "A String", # Optional. A description of the policy. The description must be at most 2048 characters.
"etag": "A String", # Output only. The etag for the policy. If this is provided on update, it must match the server's etag.
- "name": "A String", # Identifier. The resource name of the AutoProtectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`
+ "name": "A String", # Output only. Identifier. The resource name of the AutoProtectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`
"policyEvaluationSummary": { # PolicyEvaluationSummary contains the summary of the last run of job that applies policy to matching resources. # Output only. Summary of last policy evaluation when job was run per workload type.
"failedResourceCount": "A String", # Output only. The number of matching resources whose protection failed during job run.
"matchingResourceCount": "A String", # Output only. The number of resources that currently match the policy's criteria.
@@ -150,7 +150,8 @@ Method Details
"updateTime": "A String", # Output only. The timestamp when the policy was last updated.
}
- autoProtectionPolicyId: string, Required. The ID to use for the policy. This will become the final component of the policy's resource name.
+ autoProtectionPolicyId: string, Required. The ID to use for the policy. This will become the final component of the policy's resource name. This value must start with a lowercase letter followed by up to 62 lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
+ requestId: string, Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -181,12 +182,13 @@ Method Details
- delete(name, etag=None, x__xgafv=None)
+ delete(name, etag=None, requestId=None, x__xgafv=None)
Deletes a single AutoProtectionPolicy.
Args:
name: string, Required. The name of the policy to delete. Format: projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy} (required)
etag: string, The current etag of the autoprotectionpolicy. If an etag is provided and does not match the current etag of the connection, deletion will be blocked.
+ requestId: string, Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -253,9 +255,9 @@ Method Details
},
],
},
- "description": "A String", # Optional. A description of the policy.
+ "description": "A String", # Optional. A description of the policy. The description must be at most 2048 characters.
"etag": "A String", # Output only. The etag for the policy. If this is provided on update, it must match the server's etag.
- "name": "A String", # Identifier. The resource name of the AutoProtectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`
+ "name": "A String", # Output only. Identifier. The resource name of the AutoProtectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`
"policyEvaluationSummary": { # PolicyEvaluationSummary contains the summary of the last run of job that applies policy to matching resources. # Output only. Summary of last policy evaluation when job was run per workload type.
"failedResourceCount": "A String", # Output only. The number of matching resources whose protection failed during job run.
"matchingResourceCount": "A String", # Output only. The number of resources that currently match the policy's criteria.
@@ -309,9 +311,9 @@ Method Details
},
],
},
- "description": "A String", # Optional. A description of the policy.
+ "description": "A String", # Optional. A description of the policy. The description must be at most 2048 characters.
"etag": "A String", # Output only. The etag for the policy. If this is provided on update, it must match the server's etag.
- "name": "A String", # Identifier. The resource name of the AutoProtectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`
+ "name": "A String", # Output only. Identifier. The resource name of the AutoProtectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`
"policyEvaluationSummary": { # PolicyEvaluationSummary contains the summary of the last run of job that applies policy to matching resources. # Output only. Summary of last policy evaluation when job was run per workload type.
"failedResourceCount": "A String", # Output only. The number of matching resources whose protection failed during job run.
"matchingResourceCount": "A String", # Output only. The number of resources that currently match the policy's criteria.
@@ -343,11 +345,11 @@ Method Details
- patch(name, body=None, updateMask=None, x__xgafv=None)
+ patch(name, body=None, requestId=None, updateMask=None, x__xgafv=None)
Updates the parameters of a single AutoProtectionPolicy.
Args:
- name: string, Identifier. The resource name of the AutoProtectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}` (required)
+ name: string, Output only. Identifier. The resource name of the AutoProtectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}` (required)
body: object, The request body.
The object takes the form of:
@@ -374,9 +376,9 @@ Method Details
},
],
},
- "description": "A String", # Optional. A description of the policy.
+ "description": "A String", # Optional. A description of the policy. The description must be at most 2048 characters.
"etag": "A String", # Output only. The etag for the policy. If this is provided on update, it must match the server's etag.
- "name": "A String", # Identifier. The resource name of the AutoProtectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`
+ "name": "A String", # Output only. Identifier. The resource name of the AutoProtectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`
"policyEvaluationSummary": { # PolicyEvaluationSummary contains the summary of the last run of job that applies policy to matching resources. # Output only. Summary of last policy evaluation when job was run per workload type.
"failedResourceCount": "A String", # Output only. The number of matching resources whose protection failed during job run.
"matchingResourceCount": "A String", # Output only. The number of resources that currently match the policy's criteria.
@@ -386,6 +388,7 @@ Method Details
"updateTime": "A String", # Output only. The timestamp when the policy was last updated.
}
+ requestId: string, Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
updateMask: string, Optional. Field mask is used to specify the fields to be overwritten in the AutoProtectionPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.
x__xgafv: string, V1 error format.
Allowed values
diff --git a/docs/dyn/backupdr_v1beta.projects.locations.autoProtectionPolicies.bindings.html b/docs/dyn/backupdr_v1beta.projects.locations.autoProtectionPolicies.bindings.html
index bdcf6d7847..16117ae10f 100644
--- a/docs/dyn/backupdr_v1beta.projects.locations.autoProtectionPolicies.bindings.html
+++ b/docs/dyn/backupdr_v1beta.projects.locations.autoProtectionPolicies.bindings.html
@@ -83,7 +83,7 @@ Instance Methods
close()
Close httplib2 connections.
- create(parent, autoProtectionPolicyBindingId=None, body=None, x__xgafv=None)
+ create(parent, autoProtectionPolicyBindingId=None, body=None, requestId=None, x__xgafv=None)
Creates a new AutoProtectionPolicyBinding in a given project and location.
@@ -104,7 +104,7 @@ Method Details
- create(parent, autoProtectionPolicyBindingId=None, body=None, x__xgafv=None)
+ create(parent, autoProtectionPolicyBindingId=None, body=None, requestId=None, x__xgafv=None)
Creates a new AutoProtectionPolicyBinding in a given project and location.
Args:
@@ -119,15 +119,16 @@ Method Details
"protectedResourceCount": "A String", # Output only. The number of matching resources that are successfully protected.
},
"createTime": "A String", # Output only. The timestamp when the binding was created.
- "description": "A String", # Optional. A description of the binding.
+ "description": "A String", # Optional. A description of the binding. The description must be at most 2048 characters.
"etag": "A String", # Optional. Output only. The etag for the binding. If this is provided on update, it must match the server's etag.
- "name": "A String", # Identifier. The resource name of the AutoProtectionPolicyBinding. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}`
+ "name": "A String", # Output only. Identifier. The resource name of the AutoProtectionPolicyBinding. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}`
"scope": "A String", # Required. Immutable. Resource Id of target container on which policy will be applied. Format: projects/{project_id}
"state": "A String", # Output only. The current state of the AutoProtectionPolicyBinding.
"updateTime": "A String", # Output only. The timestamp when the binding was last updated.
}
- autoProtectionPolicyBindingId: string, Required. The ID to use for the binding. This will become the final component of the binding's resource name.
+ autoProtectionPolicyBindingId: string, Required. The ID to use for the binding. This will become the final component of the binding's resource name. This value must start with a lowercase letter followed by up to 62 lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
+ requestId: string, Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -178,9 +179,9 @@ Method Details
"protectedResourceCount": "A String", # Output only. The number of matching resources that are successfully protected.
},
"createTime": "A String", # Output only. The timestamp when the binding was created.
- "description": "A String", # Optional. A description of the binding.
+ "description": "A String", # Optional. A description of the binding. The description must be at most 2048 characters.
"etag": "A String", # Optional. Output only. The etag for the binding. If this is provided on update, it must match the server's etag.
- "name": "A String", # Identifier. The resource name of the AutoProtectionPolicyBinding. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}`
+ "name": "A String", # Output only. Identifier. The resource name of the AutoProtectionPolicyBinding. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}`
"scope": "A String", # Required. Immutable. Resource Id of target container on which policy will be applied. Format: projects/{project_id}
"state": "A String", # Output only. The current state of the AutoProtectionPolicyBinding.
"updateTime": "A String", # Output only. The timestamp when the binding was last updated.
@@ -197,6 +198,8 @@ Method Details
The object takes the form of:
{ # Request message for initiating delete of an AutoProtectionPolicyBinding.
+ "etag": "A String", # Optional. The current etag of the AutoProtectionPolicyBinding. If an etag is provided and does not match the current etag of the binding, deletion will be blocked and an ABORTED error will be returned.
+ "requestId": "A String", # Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
}
x__xgafv: string, V1 error format.
@@ -255,9 +258,9 @@ Method Details
"protectedResourceCount": "A String", # Output only. The number of matching resources that are successfully protected.
},
"createTime": "A String", # Output only. The timestamp when the binding was created.
- "description": "A String", # Optional. A description of the binding.
+ "description": "A String", # Optional. A description of the binding. The description must be at most 2048 characters.
"etag": "A String", # Optional. Output only. The etag for the binding. If this is provided on update, it must match the server's etag.
- "name": "A String", # Identifier. The resource name of the AutoProtectionPolicyBinding. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}`
+ "name": "A String", # Output only. Identifier. The resource name of the AutoProtectionPolicyBinding. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}`
"scope": "A String", # Required. Immutable. Resource Id of target container on which policy will be applied. Format: projects/{project_id}
"state": "A String", # Output only. The current state of the AutoProtectionPolicyBinding.
"updateTime": "A String", # Output only. The timestamp when the binding was last updated.
diff --git a/docs/dyn/backupdr_v1beta.projects.locations.autoProtectionPolicies.html b/docs/dyn/backupdr_v1beta.projects.locations.autoProtectionPolicies.html
index afc0183117..80bc764437 100644
--- a/docs/dyn/backupdr_v1beta.projects.locations.autoProtectionPolicies.html
+++ b/docs/dyn/backupdr_v1beta.projects.locations.autoProtectionPolicies.html
@@ -83,10 +83,10 @@ Instance Methods
close()
Close httplib2 connections.
- create(parent, autoProtectionPolicyId=None, body=None, x__xgafv=None)
+ create(parent, autoProtectionPolicyId=None, body=None, requestId=None, x__xgafv=None)
Creates a new AutoProtectionPolicy in a given project and location.
- delete(name, etag=None, x__xgafv=None)
+ delete(name, etag=None, requestId=None, x__xgafv=None)
Deletes a single AutoProtectionPolicy.
@@ -98,7 +98,7 @@ Instance Methods
list_next(previous_request, previous_response)
Retrieves the next page of results.
- patch(name, body=None, updateMask=None, x__xgafv=None)
+ patch(name, body=None, requestId=None, updateMask=None, x__xgafv=None)
Updates the parameters of a single AutoProtectionPolicy.
Method Details
@@ -107,7 +107,7 @@ Method Details
- create(parent, autoProtectionPolicyId=None, body=None, x__xgafv=None)
+ create(parent, autoProtectionPolicyId=None, body=None, requestId=None, x__xgafv=None)
Creates a new AutoProtectionPolicy in a given project and location.
Args:
@@ -138,9 +138,9 @@ Method Details
},
],
},
- "description": "A String", # Optional. A description of the policy.
+ "description": "A String", # Optional. A description of the policy. The description must be at most 2048 characters.
"etag": "A String", # Output only. The etag for the policy. If this is provided on update, it must match the server's etag, otherwise the request will be rejected with an ABORTED error.
- "name": "A String", # Identifier. The resource name of the AutoprotectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`
+ "name": "A String", # Output only. Identifier. The resource name of the AutoprotectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`
"policyEvaluationSummary": { # PolicyEvaluationSummary contains the summary of the last run of job that applies policy to matching resources. # Output only. Summary of last policy application when job was run per workload type.
"failedResourceCount": "A String", # Output only. The number of matching resources whose protection failed during job run.
"matchingResourceCount": "A String", # Output only. The number of resources that currently match the policy's criteria.
@@ -150,7 +150,8 @@ Method Details
"updateTime": "A String", # Output only. The timestamp when the policy was last updated.
}
- autoProtectionPolicyId: string, Required. The ID to use for the policy. This will become the final component of the policy's resource name.
+ autoProtectionPolicyId: string, Required. The ID to use for the policy. This will become the final component of the policy's resource name. This value must start with a lowercase letter followed by up to 62 lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
+ requestId: string, Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -181,12 +182,13 @@ Method Details
- delete(name, etag=None, x__xgafv=None)
+ delete(name, etag=None, requestId=None, x__xgafv=None)
Deletes a single AutoProtectionPolicy.
Args:
name: string, Required. The name of the policy to delete. Format: projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy} (required)
etag: string, The current etag of the AutoProtectionPolicy. If an etag is provided and does not match the current etag of the connection, the request will be rejected with an ABORTED error.
+ requestId: string, Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -253,9 +255,9 @@ Method Details
},
],
},
- "description": "A String", # Optional. A description of the policy.
+ "description": "A String", # Optional. A description of the policy. The description must be at most 2048 characters.
"etag": "A String", # Output only. The etag for the policy. If this is provided on update, it must match the server's etag, otherwise the request will be rejected with an ABORTED error.
- "name": "A String", # Identifier. The resource name of the AutoprotectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`
+ "name": "A String", # Output only. Identifier. The resource name of the AutoprotectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`
"policyEvaluationSummary": { # PolicyEvaluationSummary contains the summary of the last run of job that applies policy to matching resources. # Output only. Summary of last policy application when job was run per workload type.
"failedResourceCount": "A String", # Output only. The number of matching resources whose protection failed during job run.
"matchingResourceCount": "A String", # Output only. The number of resources that currently match the policy's criteria.
@@ -309,9 +311,9 @@ Method Details
},
],
},
- "description": "A String", # Optional. A description of the policy.
+ "description": "A String", # Optional. A description of the policy. The description must be at most 2048 characters.
"etag": "A String", # Output only. The etag for the policy. If this is provided on update, it must match the server's etag, otherwise the request will be rejected with an ABORTED error.
- "name": "A String", # Identifier. The resource name of the AutoprotectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`
+ "name": "A String", # Output only. Identifier. The resource name of the AutoprotectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`
"policyEvaluationSummary": { # PolicyEvaluationSummary contains the summary of the last run of job that applies policy to matching resources. # Output only. Summary of last policy application when job was run per workload type.
"failedResourceCount": "A String", # Output only. The number of matching resources whose protection failed during job run.
"matchingResourceCount": "A String", # Output only. The number of resources that currently match the policy's criteria.
@@ -343,11 +345,11 @@ Method Details
- patch(name, body=None, updateMask=None, x__xgafv=None)
+ patch(name, body=None, requestId=None, updateMask=None, x__xgafv=None)
Updates the parameters of a single AutoProtectionPolicy.
Args:
- name: string, Identifier. The resource name of the AutoprotectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}` (required)
+ name: string, Output only. Identifier. The resource name of the AutoprotectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}` (required)
body: object, The request body.
The object takes the form of:
@@ -374,9 +376,9 @@ Method Details
},
],
},
- "description": "A String", # Optional. A description of the policy.
+ "description": "A String", # Optional. A description of the policy. The description must be at most 2048 characters.
"etag": "A String", # Output only. The etag for the policy. If this is provided on update, it must match the server's etag, otherwise the request will be rejected with an ABORTED error.
- "name": "A String", # Identifier. The resource name of the AutoprotectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`
+ "name": "A String", # Output only. Identifier. The resource name of the AutoprotectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`
"policyEvaluationSummary": { # PolicyEvaluationSummary contains the summary of the last run of job that applies policy to matching resources. # Output only. Summary of last policy application when job was run per workload type.
"failedResourceCount": "A String", # Output only. The number of matching resources whose protection failed during job run.
"matchingResourceCount": "A String", # Output only. The number of resources that currently match the policy's criteria.
@@ -386,6 +388,7 @@ Method Details
"updateTime": "A String", # Output only. The timestamp when the policy was last updated.
}
+ requestId: string, Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
updateMask: string, Optional. Field mask is used to specify the fields to be overwritten in the AutoProtectionPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.
x__xgafv: string, V1 error format.
Allowed values
diff --git a/docs/dyn/bigquery_v2.jobs.html b/docs/dyn/bigquery_v2.jobs.html
index 99b2d4ded9..536d6a2d3e 100644
--- a/docs/dyn/bigquery_v2.jobs.html
+++ b/docs/dyn/bigquery_v2.jobs.html
@@ -164,6 +164,11 @@ Method Details
},
"nativeGeographyExportEnabled": True or False, # Optional. Applicable to formats: PARQUET. If enabled, BigQuery to Parquet export will write the native Parquet Geography type instead of the default GeoParquet type.
"printHeader": true, # Optional. Whether to print out a header row in the results. Default is true. Not applicable when extracting models.
+ "secureContext": { # A set of key-value pairs representing the secure context. # Optional. A set of key-value pairs representing the secure context. This can be used to pass sensitive or context-specific information. They can be retrieved via the SECURE_CONTEXT() function and used to modify the run-time behavior of an extract job on tables with row access policies.
+ "secureParameterEntries": { # Optional. A set of key-value pairs representing the secure parameter values. They can be retrieved via the SECURE_CONTEXT() function and used to modify the run-time behavior of a query.
+ "a_key": "", # Properties of the object.
+ },
+ },
"sourceModel": { # Id path of a model. # A reference to the model being exported.
"datasetId": "A String", # Required. The ID of the dataset containing this model.
"modelId": "A String", # Required. The ID of the model. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.
@@ -1832,6 +1837,11 @@ Method Details
},
"nativeGeographyExportEnabled": True or False, # Optional. Applicable to formats: PARQUET. If enabled, BigQuery to Parquet export will write the native Parquet Geography type instead of the default GeoParquet type.
"printHeader": true, # Optional. Whether to print out a header row in the results. Default is true. Not applicable when extracting models.
+ "secureContext": { # A set of key-value pairs representing the secure context. # Optional. A set of key-value pairs representing the secure context. This can be used to pass sensitive or context-specific information. They can be retrieved via the SECURE_CONTEXT() function and used to modify the run-time behavior of an extract job on tables with row access policies.
+ "secureParameterEntries": { # Optional. A set of key-value pairs representing the secure parameter values. They can be retrieved via the SECURE_CONTEXT() function and used to modify the run-time behavior of a query.
+ "a_key": "", # Properties of the object.
+ },
+ },
"sourceModel": { # Id path of a model. # A reference to the model being exported.
"datasetId": "A String", # Required. The ID of the dataset containing this model.
"modelId": "A String", # Required. The ID of the model. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.
@@ -3608,6 +3618,11 @@ Method Details
},
"nativeGeographyExportEnabled": True or False, # Optional. Applicable to formats: PARQUET. If enabled, BigQuery to Parquet export will write the native Parquet Geography type instead of the default GeoParquet type.
"printHeader": true, # Optional. Whether to print out a header row in the results. Default is true. Not applicable when extracting models.
+ "secureContext": { # A set of key-value pairs representing the secure context. # Optional. A set of key-value pairs representing the secure context. This can be used to pass sensitive or context-specific information. They can be retrieved via the SECURE_CONTEXT() function and used to modify the run-time behavior of an extract job on tables with row access policies.
+ "secureParameterEntries": { # Optional. A set of key-value pairs representing the secure parameter values. They can be retrieved via the SECURE_CONTEXT() function and used to modify the run-time behavior of a query.
+ "a_key": "", # Properties of the object.
+ },
+ },
"sourceModel": { # Id path of a model. # A reference to the model being exported.
"datasetId": "A String", # Required. The ID of the dataset containing this model.
"modelId": "A String", # Required. The ID of the model. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.
@@ -5247,6 +5262,11 @@ Method Details
},
"nativeGeographyExportEnabled": True or False, # Optional. Applicable to formats: PARQUET. If enabled, BigQuery to Parquet export will write the native Parquet Geography type instead of the default GeoParquet type.
"printHeader": true, # Optional. Whether to print out a header row in the results. Default is true. Not applicable when extracting models.
+ "secureContext": { # A set of key-value pairs representing the secure context. # Optional. A set of key-value pairs representing the secure context. This can be used to pass sensitive or context-specific information. They can be retrieved via the SECURE_CONTEXT() function and used to modify the run-time behavior of an extract job on tables with row access policies.
+ "secureParameterEntries": { # Optional. A set of key-value pairs representing the secure parameter values. They can be retrieved via the SECURE_CONTEXT() function and used to modify the run-time behavior of a query.
+ "a_key": "", # Properties of the object.
+ },
+ },
"sourceModel": { # Id path of a model. # A reference to the model being exported.
"datasetId": "A String", # Required. The ID of the dataset containing this model.
"modelId": "A String", # Required. The ID of the model. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.
@@ -6909,6 +6929,11 @@ Method Details
},
"nativeGeographyExportEnabled": True or False, # Optional. Applicable to formats: PARQUET. If enabled, BigQuery to Parquet export will write the native Parquet Geography type instead of the default GeoParquet type.
"printHeader": true, # Optional. Whether to print out a header row in the results. Default is true. Not applicable when extracting models.
+ "secureContext": { # A set of key-value pairs representing the secure context. # Optional. A set of key-value pairs representing the secure context. This can be used to pass sensitive or context-specific information. They can be retrieved via the SECURE_CONTEXT() function and used to modify the run-time behavior of an extract job on tables with row access policies.
+ "secureParameterEntries": { # Optional. A set of key-value pairs representing the secure parameter values. They can be retrieved via the SECURE_CONTEXT() function and used to modify the run-time behavior of a query.
+ "a_key": "", # Properties of the object.
+ },
+ },
"sourceModel": { # Id path of a model. # A reference to the model being exported.
"datasetId": "A String", # Required. The ID of the dataset containing this model.
"modelId": "A String", # Required. The ID of the model. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.
diff --git a/docs/dyn/bigquerydatapolicy_v2.projects.locations.dataPolicies.html b/docs/dyn/bigquerydatapolicy_v2.projects.locations.dataPolicies.html
index 8f7501c26e..b7fae64683 100644
--- a/docs/dyn/bigquerydatapolicy_v2.projects.locations.dataPolicies.html
+++ b/docs/dyn/bigquerydatapolicy_v2.projects.locations.dataPolicies.html
@@ -149,6 +149,7 @@ Method Details
"grantees": [ # Optional. The list of IAM principals that have Fine Grained Access to the underlying data goverened by this data policy. Uses the [IAM V2 principal syntax](https://cloud.google.com/iam/docs/principal-identifiers#v2) Only supports principal types users, groups, serviceaccounts, cloudidentity. This field is supported in V2 Data Policy only. In case of V1 data policies (i.e. verion = 1 and policy_tag is set), this field is not populated.
"A String",
],
+ "matchingCondition": "A String", # Optional. Matching condition specified as a SQL expression string. Data Governance Tag matcher functions are: `COLUMN_HAS_TAG_KEY(keyName STRING) -> BOOL` `COLUMN_MATCH_TAG(keyName STRING, valueShortName STRING) -> BOOL` For example: `COLUMN_HAS_TAG_KEY('project-id/pii') AND COLUMN_MATCH_TAG('project-id/pii', 'ssn')`
"name": "A String", # Identifier. Resource name of this data policy, in the format of `projects/{project_number}/locations/{location_id}/dataPolicies/{data_policy_id}`.
"policyTag": "A String", # Output only. Policy tag resource name, in the format of `projects/{project_number}/locations/{location_id}/taxonomies/{taxonomy_id}/policyTags/{policyTag_id}`. policy_tag is supported only for V1 data policies.
"version": "A String", # Output only. The version of the Data Policy resource.
@@ -185,6 +186,7 @@ Method Details
"grantees": [ # Optional. The list of IAM principals that have Fine Grained Access to the underlying data goverened by this data policy. Uses the [IAM V2 principal syntax](https://cloud.google.com/iam/docs/principal-identifiers#v2) Only supports principal types users, groups, serviceaccounts, cloudidentity. This field is supported in V2 Data Policy only. In case of V1 data policies (i.e. verion = 1 and policy_tag is set), this field is not populated.
"A String",
],
+ "matchingCondition": "A String", # Optional. Matching condition specified as a SQL expression string. Data Governance Tag matcher functions are: `COLUMN_HAS_TAG_KEY(keyName STRING) -> BOOL` `COLUMN_MATCH_TAG(keyName STRING, valueShortName STRING) -> BOOL` For example: `COLUMN_HAS_TAG_KEY('project-id/pii') AND COLUMN_MATCH_TAG('project-id/pii', 'ssn')`
"name": "A String", # Identifier. Resource name of this data policy, in the format of `projects/{project_number}/locations/{location_id}/dataPolicies/{data_policy_id}`.
"policyTag": "A String", # Output only. Policy tag resource name, in the format of `projects/{project_number}/locations/{location_id}/taxonomies/{taxonomy_id}/policyTags/{policyTag_id}`. policy_tag is supported only for V1 data policies.
"version": "A String", # Output only. The version of the Data Policy resource.
@@ -215,6 +217,7 @@ Method Details
"grantees": [ # Optional. The list of IAM principals that have Fine Grained Access to the underlying data goverened by this data policy. Uses the [IAM V2 principal syntax](https://cloud.google.com/iam/docs/principal-identifiers#v2) Only supports principal types users, groups, serviceaccounts, cloudidentity. This field is supported in V2 Data Policy only. In case of V1 data policies (i.e. verion = 1 and policy_tag is set), this field is not populated.
"A String",
],
+ "matchingCondition": "A String", # Optional. Matching condition specified as a SQL expression string. Data Governance Tag matcher functions are: `COLUMN_HAS_TAG_KEY(keyName STRING) -> BOOL` `COLUMN_MATCH_TAG(keyName STRING, valueShortName STRING) -> BOOL` For example: `COLUMN_HAS_TAG_KEY('project-id/pii') AND COLUMN_MATCH_TAG('project-id/pii', 'ssn')`
"name": "A String", # Identifier. Resource name of this data policy, in the format of `projects/{project_number}/locations/{location_id}/dataPolicies/{data_policy_id}`.
"policyTag": "A String", # Output only. Policy tag resource name, in the format of `projects/{project_number}/locations/{location_id}/taxonomies/{taxonomy_id}/policyTags/{policyTag_id}`. policy_tag is supported only for V1 data policies.
"version": "A String", # Output only. The version of the Data Policy resource.
@@ -268,6 +271,7 @@ Method Details
"grantees": [ # Optional. The list of IAM principals that have Fine Grained Access to the underlying data goverened by this data policy. Uses the [IAM V2 principal syntax](https://cloud.google.com/iam/docs/principal-identifiers#v2) Only supports principal types users, groups, serviceaccounts, cloudidentity. This field is supported in V2 Data Policy only. In case of V1 data policies (i.e. verion = 1 and policy_tag is set), this field is not populated.
"A String",
],
+ "matchingCondition": "A String", # Optional. Matching condition specified as a SQL expression string. Data Governance Tag matcher functions are: `COLUMN_HAS_TAG_KEY(keyName STRING) -> BOOL` `COLUMN_MATCH_TAG(keyName STRING, valueShortName STRING) -> BOOL` For example: `COLUMN_HAS_TAG_KEY('project-id/pii') AND COLUMN_MATCH_TAG('project-id/pii', 'ssn')`
"name": "A String", # Identifier. Resource name of this data policy, in the format of `projects/{project_number}/locations/{location_id}/dataPolicies/{data_policy_id}`.
"policyTag": "A String", # Output only. Policy tag resource name, in the format of `projects/{project_number}/locations/{location_id}/taxonomies/{taxonomy_id}/policyTags/{policyTag_id}`. policy_tag is supported only for V1 data policies.
"version": "A String", # Output only. The version of the Data Policy resource.
@@ -364,6 +368,7 @@ Method Details
"grantees": [ # Optional. The list of IAM principals that have Fine Grained Access to the underlying data goverened by this data policy. Uses the [IAM V2 principal syntax](https://cloud.google.com/iam/docs/principal-identifiers#v2) Only supports principal types users, groups, serviceaccounts, cloudidentity. This field is supported in V2 Data Policy only. In case of V1 data policies (i.e. verion = 1 and policy_tag is set), this field is not populated.
"A String",
],
+ "matchingCondition": "A String", # Optional. Matching condition specified as a SQL expression string. Data Governance Tag matcher functions are: `COLUMN_HAS_TAG_KEY(keyName STRING) -> BOOL` `COLUMN_MATCH_TAG(keyName STRING, valueShortName STRING) -> BOOL` For example: `COLUMN_HAS_TAG_KEY('project-id/pii') AND COLUMN_MATCH_TAG('project-id/pii', 'ssn')`
"name": "A String", # Identifier. Resource name of this data policy, in the format of `projects/{project_number}/locations/{location_id}/dataPolicies/{data_policy_id}`.
"policyTag": "A String", # Output only. Policy tag resource name, in the format of `projects/{project_number}/locations/{location_id}/taxonomies/{taxonomy_id}/policyTags/{policyTag_id}`. policy_tag is supported only for V1 data policies.
"version": "A String", # Output only. The version of the Data Policy resource.
@@ -411,6 +416,7 @@ Method Details
"grantees": [ # Optional. The list of IAM principals that have Fine Grained Access to the underlying data goverened by this data policy. Uses the [IAM V2 principal syntax](https://cloud.google.com/iam/docs/principal-identifiers#v2) Only supports principal types users, groups, serviceaccounts, cloudidentity. This field is supported in V2 Data Policy only. In case of V1 data policies (i.e. verion = 1 and policy_tag is set), this field is not populated.
"A String",
],
+ "matchingCondition": "A String", # Optional. Matching condition specified as a SQL expression string. Data Governance Tag matcher functions are: `COLUMN_HAS_TAG_KEY(keyName STRING) -> BOOL` `COLUMN_MATCH_TAG(keyName STRING, valueShortName STRING) -> BOOL` For example: `COLUMN_HAS_TAG_KEY('project-id/pii') AND COLUMN_MATCH_TAG('project-id/pii', 'ssn')`
"name": "A String", # Identifier. Resource name of this data policy, in the format of `projects/{project_number}/locations/{location_id}/dataPolicies/{data_policy_id}`.
"policyTag": "A String", # Output only. Policy tag resource name, in the format of `projects/{project_number}/locations/{location_id}/taxonomies/{taxonomy_id}/policyTags/{policyTag_id}`. policy_tag is supported only for V1 data policies.
"version": "A String", # Output only. The version of the Data Policy resource.
@@ -441,6 +447,7 @@ Method Details
"grantees": [ # Optional. The list of IAM principals that have Fine Grained Access to the underlying data goverened by this data policy. Uses the [IAM V2 principal syntax](https://cloud.google.com/iam/docs/principal-identifiers#v2) Only supports principal types users, groups, serviceaccounts, cloudidentity. This field is supported in V2 Data Policy only. In case of V1 data policies (i.e. verion = 1 and policy_tag is set), this field is not populated.
"A String",
],
+ "matchingCondition": "A String", # Optional. Matching condition specified as a SQL expression string. Data Governance Tag matcher functions are: `COLUMN_HAS_TAG_KEY(keyName STRING) -> BOOL` `COLUMN_MATCH_TAG(keyName STRING, valueShortName STRING) -> BOOL` For example: `COLUMN_HAS_TAG_KEY('project-id/pii') AND COLUMN_MATCH_TAG('project-id/pii', 'ssn')`
"name": "A String", # Identifier. Resource name of this data policy, in the format of `projects/{project_number}/locations/{location_id}/dataPolicies/{data_policy_id}`.
"policyTag": "A String", # Output only. Policy tag resource name, in the format of `projects/{project_number}/locations/{location_id}/taxonomies/{taxonomy_id}/policyTags/{policyTag_id}`. policy_tag is supported only for V1 data policies.
"version": "A String", # Output only. The version of the Data Policy resource.
@@ -485,6 +492,7 @@ Method Details
"grantees": [ # Optional. The list of IAM principals that have Fine Grained Access to the underlying data goverened by this data policy. Uses the [IAM V2 principal syntax](https://cloud.google.com/iam/docs/principal-identifiers#v2) Only supports principal types users, groups, serviceaccounts, cloudidentity. This field is supported in V2 Data Policy only. In case of V1 data policies (i.e. verion = 1 and policy_tag is set), this field is not populated.
"A String",
],
+ "matchingCondition": "A String", # Optional. Matching condition specified as a SQL expression string. Data Governance Tag matcher functions are: `COLUMN_HAS_TAG_KEY(keyName STRING) -> BOOL` `COLUMN_MATCH_TAG(keyName STRING, valueShortName STRING) -> BOOL` For example: `COLUMN_HAS_TAG_KEY('project-id/pii') AND COLUMN_MATCH_TAG('project-id/pii', 'ssn')`
"name": "A String", # Identifier. Resource name of this data policy, in the format of `projects/{project_number}/locations/{location_id}/dataPolicies/{data_policy_id}`.
"policyTag": "A String", # Output only. Policy tag resource name, in the format of `projects/{project_number}/locations/{location_id}/taxonomies/{taxonomy_id}/policyTags/{policyTag_id}`. policy_tag is supported only for V1 data policies.
"version": "A String", # Output only. The version of the Data Policy resource.
diff --git a/docs/dyn/bigtableadmin_v2.projects.instances.tables.html b/docs/dyn/bigtableadmin_v2.projects.instances.tables.html
index fe8e20c198..de6f61a4cb 100644
--- a/docs/dyn/bigtableadmin_v2.projects.instances.tables.html
+++ b/docs/dyn/bigtableadmin_v2.projects.instances.tables.html
@@ -2086,231 +2086,7 @@ Method Details
{ # The request for RestoreTable.
"backup": "A String", # Name of the backup from which to restore. Values are of the form `projects//instances//clusters//backups/`.
- "table": { # A collection of user data indexed by row, column, and timestamp. Each table is served using the resources of its parent cluster. # Optional. Properties of the table to be restored. Only the fields specified in update_mask will be used to set the restored table's properties.
- "automatedBackupPolicy": { # Defines an automated backup policy for a table # If specified, automated backups are enabled for this table. Otherwise, automated backups are disabled.
- "disabled": True or False, # Optional. If `true`, automated backups are explicitly disabled on this table. This allows users to opt out of default enablement.
- "frequency": "A String", # How frequently automated backups should occur. The only supported value at this time is 24 hours. An undefined frequency is treated as 24 hours.
- "keepHotDuration": "A String", # Optional. The amount of time that the automated backups remain hot. If specified, the backups created by this policy are `HOT` backups. If not specified, the backups are `STANDARD` backups. The value must be at least 24 hours and at most 10 days, and can't exceed the policy's `retention_period`. Only SSD instances support `HOT` automated backups.
- "locations": [ # Optional. A list of Cloud Bigtable zones where automated backups are allowed to be created. If empty, automated backups will be created in all zones of the instance. Locations are in the format `projects/{project}/locations/{zone}`. You can set this field only for tables in Enterprise Plus instances.
- "A String",
- ],
- "retentionPeriod": "A String", # Required. How long the automated backups should be retained. Values must be at least 3 days and at most 90 days.
- },
- "changeStreamConfig": { # Change stream configuration. # If specified, enable the change stream on this table. Otherwise, the change stream is disabled and the change stream is not retained.
- "retentionPeriod": "A String", # How long the change stream should be retained. Change stream data older than the retention period will not be returned when reading the change stream from the table. Values must be at least 1 day and at most 7 days, and will be truncated to microsecond granularity.
- },
- "clusterStates": { # Output only. Map from cluster ID to per-cluster table state. If it could not be determined whether or not the table has data in a particular cluster (for example, if its zone is unavailable), then there will be an entry for the cluster with UNKNOWN `replication_status`. Views: `REPLICATION_VIEW`, `ENCRYPTION_VIEW`, `FULL`
- "a_key": { # The state of a table's data in a particular cluster.
- "encryptionInfo": [ # Output only. The encryption information for the table in this cluster. If the encryption key protecting this resource is customer managed, then its version can be rotated in Cloud Key Management Service (Cloud KMS). The primary version of the key and its status will be reflected here when changes propagate from Cloud KMS.
- { # Encryption information for a given resource. If this resource is protected with customer managed encryption, the in-use Cloud Key Management Service (Cloud KMS) key version is specified along with its status.
- "encryptionStatus": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # Output only. The status of encrypt/decrypt calls on underlying data for this resource. Regardless of status, the existing data is always encrypted at rest.
- "code": 42, # The status code, which should be an enum value of google.rpc.Code.
- "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
- {
- "a_key": "", # Properties of the object. Contains field @type with type URL.
- },
- ],
- "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
- },
- "encryptionType": "A String", # Output only. The type of encryption used to protect this resource.
- "kmsKeyVersion": "A String", # Output only. The version of the Cloud KMS key specified in the parent cluster that is in use for the data underlying this table.
- },
- ],
- "replicationState": "A String", # Output only. The state of replication for the table in this cluster.
- },
- },
- "columnFamilies": { # The column families configured for this table, mapped by column family ID. Views: `SCHEMA_VIEW`, `STATS_VIEW`, `FULL`
- "a_key": { # A set of columns within a table which share a common configuration.
- "gcRule": { # Rule for determining which cells to delete during garbage collection. # Garbage collection rule specified as a protobuf. Must serialize to at most 500 bytes. NOTE: Garbage collection executes opportunistically in the background, and so it's possible for reads to return a cell even if it matches the active GC expression for its family.
- "intersection": { # A GcRule which deletes cells matching all of the given rules. # Delete cells that would be deleted by every nested rule.
- "rules": [ # Only delete cells which would be deleted by every element of `rules`.
- # Object with schema name: GcRule
- ],
- },
- "maxAge": "A String", # Delete cells in a column older than the given age. Values must be at least one millisecond, and will be truncated to microsecond granularity.
- "maxNumVersions": 42, # Delete all cells in a column except the most recent N.
- "union": { # A GcRule which deletes cells matching any of the given rules. # Delete cells that would be deleted by any nested rule.
- "rules": [ # Delete cells which would be deleted by any element of `rules`.
- # Object with schema name: GcRule
- ],
- },
- },
- "stats": { # Approximate statistics related to a single column family within a table. This information may change rapidly, interpreting these values at a point in time may already preset out-of-date information. Everything below is approximate, unless otherwise specified. # Output only. Only available with STATS_VIEW, this includes summary statistics about column family contents. For statistics over an entire table, see TableStats above.
- "averageCellsPerColumn": 3.14, # How many cells are present per column qualifier in this column family, averaged over all rows containing any column in the column family. e.g. For column family "family" in a table with 3 rows: * A row with 3 cells in "family:col" and 1 cell in "other:col" (3 cells / 1 column in "family") * A row with 1 cell in "family:col", 7 cells in "family:other_col", and 7 cells in "other:data" (8 cells / 2 columns in "family") * A row with 3 cells in "other:col" (0 columns in "family", "family" not present) would report (3 + 8 + 0)/(1 + 2 + 0) = 3.66 in this field.
- "averageColumnsPerRow": 3.14, # How many column qualifiers are present in this column family, averaged over all rows in the table. e.g. For column family "family" in a table with 3 rows: * A row with cells in "family:col" and "other:col" (1 column in "family") * A row with cells in "family:col", "family:other_col", and "other:data" (2 columns in "family") * A row with cells in "other:col" (0 columns in "family", "family" not present) would report (1 + 2 + 0)/3 = 1.5 in this field.
- "logicalDataBytes": "A String", # How much space the data in the column family occupies. This is roughly how many bytes would be needed to read the contents of the entire column family (e.g. by streaming all contents out).
- "logicalDataHddBytes": "A String", # Output only. The logical data bytes of the column family stored on HDD.
- "logicalDataSsdBytes": "A String", # Output only. The logical data bytes of the column family stored on SSD.
- },
- "valueType": { # `Type` represents the type of data that is written to, read from, or stored in Bigtable. It is heavily based on the GoogleSQL standard to help maintain familiarity and consistency across products and features. For compatibility with Bigtable's existing untyped APIs, each `Type` includes an `Encoding` which describes how to convert to or from the underlying data. Each encoding can operate in one of two modes: - Sorted: In this mode, Bigtable guarantees that `Encode(X) <= Encode(Y)` if and only if `X <= Y`. This is useful anywhere sort order is important, for example when encoding keys. - Distinct: In this mode, Bigtable guarantees that if `X != Y` then `Encode(X) != Encode(Y)`. However, the converse is not guaranteed. For example, both `{'foo': '1', 'bar': '2'}` and `{'bar': '2', 'foo': '1'}` are valid encodings of the same JSON value. The API clearly documents which mode is used wherever an encoding can be configured. Each encoding also documents which values are supported in which modes. For example, when encoding INT64 as a numeric STRING, negative numbers cannot be encoded in sorted mode. This is because `INT64(1) > INT64(-1)`, but `STRING("-00001") > STRING("00001")`. # The type of data stored in each of this family's cell values, including its full encoding. If omitted, the family only serves raw untyped bytes. For now, only the `Aggregate` type is supported. `Aggregate` can only be set at family creation and is immutable afterwards. This field is mutually exclusive with `sql_type`. If `value_type` is `Aggregate`, written data must be compatible with: * `value_type.input_type` for `AddInput` mutations
- "aggregateType": { # A value that combines incremental updates into a summarized value. Data is never directly written or read using type `Aggregate`. Writes provide either the `input_type` or `state_type`, and reads always return the `state_type` . # Aggregate
- "hllppUniqueCount": { # Computes an approximate unique count over the input values. When using raw data as input, be careful to use a consistent encoding. Otherwise the same value encoded differently could count more than once, or two distinct values could count as identical. Input: Any, or omit for Raw State: TBD Special state conversions: `Int64` (the unique count estimate) # HyperLogLogPlusPlusUniqueCount aggregator.
- },
- "inputType": # Object with schema name: Type # Type of the inputs that are accumulated by this `Aggregate`. Use `AddInput` mutations to accumulate new inputs.
- "max": { # Computes the max of the input values. Allowed input: `Int64` State: same as input # Max aggregator.
- },
- "min": { # Computes the min of the input values. Allowed input: `Int64` State: same as input # Min aggregator.
- },
- "stateType": # Object with schema name: Type # Output only. Type that holds the internal accumulator state for the `Aggregate`. This is a function of the `input_type` and `aggregator` chosen.
- "sum": { # Computes the sum of the input values. Allowed input: `Int64` State: same as input # Sum aggregator.
- },
- },
- "arrayType": { # An ordered list of elements of a given type. Values of type `Array` are stored in `Value.array_value`. # Array
- "elementType": # Object with schema name: Type # The type of the elements in the array. This must not be `Array`.
- },
- "boolType": { # bool Values of type `Bool` are stored in `Value.bool_value`. # Bool
- "encoding": { # Defines rules used to convert to or from lower level types. # Specifies the encoding to use when converting to or from lower level types.
- },
- },
- "bytesType": { # Bytes Values of type `Bytes` are stored in `Value.bytes_value`. # Bytes
- "encoding": { # Rules used to convert to or from lower level types. # The encoding to use when converting to or from lower level types.
- "raw": { # Leaves the value as-is. Sorted mode: all values are supported. Distinct mode: all values are supported. # Use `Raw` encoding.
- "escapeNulls": True or False, # If set, allows NULL values to be encoded as the empty string "". The actual empty string, or any value which only contains the null byte `0x00`, has one more null byte appended.
- },
- },
- },
- "dateType": { # Date Values of type `Date` are stored in `Value.date_value`. # Date
- },
- "enumType": { # A protobuf enum type. Values of type `Enum` are stored in `Value.int_value`. # Enum
- "enumName": "A String", # The fully qualified name of the protobuf enum message, including package. In the format of "foo.bar.EnumMessage".
- "schemaBundleId": "A String", # The ID of the schema bundle that this enum is defined in.
- },
- "float32Type": { # Float32 Values of type `Float32` are stored in `Value.float_value`. # Float32
- },
- "float64Type": { # Float64 Values of type `Float64` are stored in `Value.float_value`. # Float64
- },
- "geographyType": { # A geography type, representing a point or region on Earth. The value is stored in `Value.bytes_value` as Well-Known Binary (WKB) bytes. # Geography
- },
- "int32Type": { # Int32 Values of type `Int32` are stored in `Value.int_value`. # Int32
- "encoding": { # Rules used to convert to or from lower level types. # The encoding to use when converting to or from lower level types.
- "bigEndianBytes": { # Encodes the value as a 4-byte big-endian two's complement value. Sorted mode: non-negative values are supported. Distinct mode: all values are supported. Compatible with: - BigQuery `BINARY` encoding - HBase `Bytes.toBytes` - Java `ByteBuffer.putInt()` with `ByteOrder.BIG_ENDIAN` # Use `BigEndianBytes` encoding.
- },
- "orderedCodeBytes": { # Encodes the value in a variable length binary format of up to 5 bytes. Values that are closer to zero use fewer bytes. Sorted mode: all values are supported. Distinct mode: all values are supported. # Use `OrderedCodeBytes` encoding.
- },
- },
- },
- "int64Type": { # Int64 Values of type `Int64` are stored in `Value.int_value`. # Int64
- "encoding": { # Rules used to convert to or from lower level types. # The encoding to use when converting to or from lower level types.
- "bigEndianBytes": { # Encodes the value as an 8-byte big-endian two's complement value. Sorted mode: non-negative values are supported. Distinct mode: all values are supported. Compatible with: - BigQuery `BINARY` encoding - HBase `Bytes.toBytes` - Java `ByteBuffer.putLong()` with `ByteOrder.BIG_ENDIAN` # Use `BigEndianBytes` encoding.
- "bytesType": { # Bytes Values of type `Bytes` are stored in `Value.bytes_value`. # Deprecated: ignored if set.
- "encoding": { # Rules used to convert to or from lower level types. # The encoding to use when converting to or from lower level types.
- "raw": { # Leaves the value as-is. Sorted mode: all values are supported. Distinct mode: all values are supported. # Use `Raw` encoding.
- "escapeNulls": True or False, # If set, allows NULL values to be encoded as the empty string "". The actual empty string, or any value which only contains the null byte `0x00`, has one more null byte appended.
- },
- },
- },
- },
- "orderedCodeBytes": { # Encodes the value in a variable length binary format of up to 10 bytes. Values that are closer to zero use fewer bytes. Sorted mode: all values are supported. Distinct mode: all values are supported. # Use `OrderedCodeBytes` encoding.
- },
- },
- },
- "mapType": { # A mapping of keys to values of a given type. Values of type `Map` are stored in a `Value.array_value` where each entry is another `Value.array_value` with two elements (the key and the value, in that order). Normally encoded Map values won't have repeated keys, however, clients are expected to handle the case in which they do. If the same key appears multiple times, the _last_ value takes precedence. # Map
- "keyType": # Object with schema name: Type # The type of a map key. Only `Bytes`, `String`, and `Int64` are allowed as key types.
- "valueType": # Object with schema name: Type # The type of the values in a map.
- },
- "protoType": { # A protobuf message type. Values of type `Proto` are stored in `Value.bytes_value`. # Proto
- "messageName": "A String", # The fully qualified name of the protobuf message, including package. In the format of "foo.bar.Message".
- "schemaBundleId": "A String", # The ID of the schema bundle that this proto is defined in.
- },
- "stringType": { # String Values of type `String` are stored in `Value.string_value`. # String
- "encoding": { # Rules used to convert to or from lower level types. # The encoding to use when converting to or from lower level types.
- "utf8Bytes": { # UTF-8 encoding. Sorted mode: - All values are supported. - Code point order is preserved. Distinct mode: all values are supported. Compatible with: - BigQuery `TEXT` encoding - HBase `Bytes.toBytes` - Java `String#getBytes(StandardCharsets.UTF_8)` # Use `Utf8Bytes` encoding.
- "nullEscapeChar": "A String", # Single-character escape sequence used to support NULL values. If set, allows NULL values to be encoded as the empty string "". The actual empty string, or any value where every character equals `null_escape_char`, has one more `null_escape_char` appended. If `null_escape_char` is set and does not equal the ASCII null character `0x00`, then the encoding will not support sorted mode. .
- },
- "utf8Raw": { # Deprecated: prefer the equivalent `Utf8Bytes`. # Deprecated: if set, converts to an empty `utf8_bytes`.
- },
- },
- },
- "structType": { # A structured data value, consisting of fields which map to dynamically typed values. Values of type `Struct` are stored in `Value.array_value` where entries are in the same order and number as `field_types`. # Struct
- "encoding": { # Rules used to convert to or from lower level types. # The encoding to use when converting to or from lower level types.
- "delimitedBytes": { # Fields are encoded independently and concatenated with a configurable `delimiter` in between. A struct with no fields defined is encoded as a single `delimiter`. Sorted mode: - Fields are encoded in sorted mode. - Encoded field values must not contain any bytes <= `delimiter[0]` - Element-wise order is preserved: `A < B` if `A[0] < B[0]`, or if `A[0] == B[0] && A[1] < B[1]`, etc. Strict prefixes sort first. - This encoding does not support `DESC` field ordering. Distinct mode: - Fields are encoded in distinct mode. - Encoded field values must not contain `delimiter[0]`. # Use `DelimitedBytes` encoding.
- "delimiter": "A String", # Byte sequence used to delimit concatenated fields. The delimiter must contain at least 1 character and at most 50 characters.
- },
- "orderedCodeBytes": { # Fields are encoded independently, then escaped and delimited by appling the following rules in order: - While the last remaining field is `ASC` or `UNSPECIFIED`, and encodes to the empty string "", remove it. - In each remaining field, replace all null bytes `0x00` with the fixed byte pair `{0x00, 0xFF}`. - If any remaining field encodes to the empty string "", replace it with the fixed byte pair `{0x00, 0x00}`. - Append the fixed byte pair `{0x00, 0x01}` to each remaining field, except for the last remaining field if it is `ASC`. - Bitwise negate all `DESC` fields. - Concatenate the results, or emit the fixed byte pair `{0x00, 0x00}` if there are no remaining fields to concatenate. Examples: ``` - STRUCT() -> "\00\00" - STRUCT("") -> "\00\00" - STRUCT("", "") -> "\00\00" - STRUCT("", "B") -> "\00\00" + "\00\01" + "B" - STRUCT("A", "") -> "A" - STRUCT("", "B", "") -> "\00\00" + "\00\01" + "B" - STRUCT("A", "", "C") -> "A" + "\00\01" + "\00\00" + "\00\01" + "C" ``` Examples for struct with `DESC` fields: ``` - STRUCT("" DESC) -> "\xFF\xFF" + "\xFF\xFE" - STRUCT("" DESC, "") -> "\xFF\xFF" + "\xFF\xFE" - STRUCT("" DESC, "", "") -> "\xFF\xFF" + "\xFF\xFE" - STRUCT("" DESC, "A") -> "\xFF\xFF" + "\xFF\xFE" + "A" - STRUCT("A", "" DESC, "") -> "A" + "\00\01" + "\xFF\xFF" + "\xFF\xFE" - STRUCT("", "A" DESC) -> "\x00\x00" + "\x00\x01" + "\xBE" + "\xFF\xFE" ``` Since null bytes are always escaped, this encoding can cause size blowup for encodings like `Int64.BigEndianBytes` that are likely to produce many such bytes. Sorted mode: - Fields are encoded in sorted mode. - All values supported by the field encodings are allowed. - Fields with unset or `UNSPECIFIED` order are treated as `ASC`. - Element-wise order is preserved: `A < B` if `A[0] < B[0]`, or if `A[0] == B[0] && A[1] < B[1]`, etc. Strict prefixes sort first. Distinct mode: - Fields are encoded in distinct mode. - All values supported by the field encodings are allowed. # User `OrderedCodeBytes` encoding.
- },
- "singleton": { # Uses the encoding of `fields[0].type` as-is. Only valid if `fields.size == 1`. This encoding does not support `DESC` field ordering. # Use `Singleton` encoding.
- },
- },
- "fields": [ # The names and types of the fields in this struct.
- { # A struct field and its type.
- "fieldName": "A String", # The field name (optional). Fields without a `field_name` are considered anonymous and cannot be referenced by name.
- "type": # Object with schema name: Type # The type of values in this field.
- },
- ],
- },
- "timestampType": { # Timestamp Values of type `Timestamp` are stored in `Value.timestamp_value`. # Timestamp
- "encoding": { # Rules used to convert to or from lower level types. # The encoding to use when converting to or from lower level types.
- "unixMicrosInt64": { # Rules used to convert to or from lower level types. # Encodes the number of microseconds since the Unix epoch using the given `Int64` encoding. Values must be microsecond-aligned. Compatible with: - Java `Instant.truncatedTo()` with `ChronoUnit.MICROS`
- "bigEndianBytes": { # Encodes the value as an 8-byte big-endian two's complement value. Sorted mode: non-negative values are supported. Distinct mode: all values are supported. Compatible with: - BigQuery `BINARY` encoding - HBase `Bytes.toBytes` - Java `ByteBuffer.putLong()` with `ByteOrder.BIG_ENDIAN` # Use `BigEndianBytes` encoding.
- "bytesType": { # Bytes Values of type `Bytes` are stored in `Value.bytes_value`. # Deprecated: ignored if set.
- "encoding": { # Rules used to convert to or from lower level types. # The encoding to use when converting to or from lower level types.
- "raw": { # Leaves the value as-is. Sorted mode: all values are supported. Distinct mode: all values are supported. # Use `Raw` encoding.
- "escapeNulls": True or False, # If set, allows NULL values to be encoded as the empty string "". The actual empty string, or any value which only contains the null byte `0x00`, has one more null byte appended.
- },
- },
- },
- },
- "orderedCodeBytes": { # Encodes the value in a variable length binary format of up to 10 bytes. Values that are closer to zero use fewer bytes. Sorted mode: all values are supported. Distinct mode: all values are supported. # Use `OrderedCodeBytes` encoding.
- },
- },
- },
- },
- },
- },
- },
- "deletionProtection": True or False, # Set to true to make the table protected against data loss. i.e. deleting the following resources through Admin APIs are prohibited: * The table. * The column families in the table. * The instance containing the table. Note one can still delete the data stored in the table through Data APIs.
- "effectiveAutomatedBackupPolicy": { # Defines an automated backup policy for a table # Output only. The effective automated backup policy applied to the table. This represents the policy actually in effect, which may be a system-default policy if the user has not explicitly configured one. Views: `SCHEMA_VIEW`, `FULL`.
- "disabled": True or False, # Optional. If `true`, automated backups are explicitly disabled on this table. This allows users to opt out of default enablement.
- "frequency": "A String", # How frequently automated backups should occur. The only supported value at this time is 24 hours. An undefined frequency is treated as 24 hours.
- "keepHotDuration": "A String", # Optional. The amount of time that the automated backups remain hot. If specified, the backups created by this policy are `HOT` backups. If not specified, the backups are `STANDARD` backups. The value must be at least 24 hours and at most 10 days, and can't exceed the policy's `retention_period`. Only SSD instances support `HOT` automated backups.
- "locations": [ # Optional. A list of Cloud Bigtable zones where automated backups are allowed to be created. If empty, automated backups will be created in all zones of the instance. Locations are in the format `projects/{project}/locations/{zone}`. You can set this field only for tables in Enterprise Plus instances.
- "A String",
- ],
- "retentionPeriod": "A String", # Required. How long the automated backups should be retained. Values must be at least 3 days and at most 90 days.
- },
- "granularity": "A String", # Immutable. The granularity at which timestamps are stored in this table. Timestamps not matching the granularity will be rejected. If unspecified at creation time, the value will be set to `MILLIS`. Views: `SCHEMA_VIEW`, `FULL`.
- "name": "A String", # The unique name of the table. Values are of the form `projects/{project}/instances/{instance}/tables/_a-zA-Z0-9*`. Views: `NAME_ONLY`, `SCHEMA_VIEW`, `REPLICATION_VIEW`, `STATS_VIEW`, `FULL`
- "restoreInfo": { # Information about a table restore. # Output only. If this table was restored from another data source (e.g. a backup), this field will be populated with information about the restore.
- "backupInfo": { # Information about a backup. # Information about the backup used to restore the table. The backup may no longer exist.
- "backup": "A String", # Output only. Name of the backup.
- "endTime": "A String", # Output only. This time that the backup was finished. Row data in the backup will be no newer than this timestamp.
- "sourceBackup": "A String", # Output only. Name of the backup from which this backup was copied. If a backup is not created by copying a backup, this field will be empty. Values are of the form: projects//instances//clusters//backups/
- "sourceTable": "A String", # Output only. Name of the table the backup was created from.
- "startTime": "A String", # Output only. The time that the backup was started. Row data in the backup will be no older than this timestamp.
- },
- "sourceType": "A String", # The type of the restore source.
- },
- "rowKeySchema": { # A structured data value, consisting of fields which map to dynamically typed values. Values of type `Struct` are stored in `Value.array_value` where entries are in the same order and number as `field_types`. # The row key schema for this table. The schema is used to decode the raw row key bytes into a structured format. The order of field declarations in this schema is important, as it reflects how the raw row key bytes are structured. Currently, this only affects how the key is read via a GoogleSQL query from the ExecuteQuery API. For a SQL query, the _key column is still read as raw bytes. But queries can reference the key fields by name, which will be decoded from _key using provided type and encoding. Queries that reference key fields will fail if they encounter an invalid row key. For example, if _key = "some_id#2024-04-30#\x00\x13\x00\xf3" with the following schema: { fields { field_name: "id" type { string { encoding: utf8_bytes {} } } } fields { field_name: "date" type { string { encoding: utf8_bytes {} } } } fields { field_name: "product_code" type { int64 { encoding: big_endian_bytes {} } } } encoding { delimited_bytes { delimiter: "#" } } } The decoded key parts would be: id = "some_id", date = "2024-04-30", product_code = 1245427 The query "SELECT _key, product_code FROM table" will return two columns: /------------------------------------------------------\ | _key | product_code | | --------------------------------------|--------------| | "some_id#2024-04-30#\x00\x13\x00\xf3" | 1245427 | \------------------------------------------------------/ The schema has the following invariants: (1) The decoded field values are order-preserved. For read, the field values will be decoded in sorted mode from the raw bytes. (2) Every field in the schema must specify a non-empty name. (3) Every field must specify a type with an associated encoding. The type is limited to scalar types only: Array, Map, Aggregate, and Struct are not allowed. (4) The field names must not collide with existing column family names and reserved keywords "_key" and "_timestamp". The following update operations are allowed for row_key_schema: - Update from an empty schema to a new schema. - Remove the existing schema. This operation requires setting the `ignore_warnings` flag to `true`, since it might be a backward incompatible change. Without the flag, the update request will fail with an INVALID_ARGUMENT error. Any other row key schema update operation (e.g. update existing schema columns names or types) is currently unsupported.
- "encoding": { # Rules used to convert to or from lower level types. # The encoding to use when converting to or from lower level types.
- "delimitedBytes": { # Fields are encoded independently and concatenated with a configurable `delimiter` in between. A struct with no fields defined is encoded as a single `delimiter`. Sorted mode: - Fields are encoded in sorted mode. - Encoded field values must not contain any bytes <= `delimiter[0]` - Element-wise order is preserved: `A < B` if `A[0] < B[0]`, or if `A[0] == B[0] && A[1] < B[1]`, etc. Strict prefixes sort first. - This encoding does not support `DESC` field ordering. Distinct mode: - Fields are encoded in distinct mode. - Encoded field values must not contain `delimiter[0]`. # Use `DelimitedBytes` encoding.
- "delimiter": "A String", # Byte sequence used to delimit concatenated fields. The delimiter must contain at least 1 character and at most 50 characters.
- },
- "orderedCodeBytes": { # Fields are encoded independently, then escaped and delimited by appling the following rules in order: - While the last remaining field is `ASC` or `UNSPECIFIED`, and encodes to the empty string "", remove it. - In each remaining field, replace all null bytes `0x00` with the fixed byte pair `{0x00, 0xFF}`. - If any remaining field encodes to the empty string "", replace it with the fixed byte pair `{0x00, 0x00}`. - Append the fixed byte pair `{0x00, 0x01}` to each remaining field, except for the last remaining field if it is `ASC`. - Bitwise negate all `DESC` fields. - Concatenate the results, or emit the fixed byte pair `{0x00, 0x00}` if there are no remaining fields to concatenate. Examples: ``` - STRUCT() -> "\00\00" - STRUCT("") -> "\00\00" - STRUCT("", "") -> "\00\00" - STRUCT("", "B") -> "\00\00" + "\00\01" + "B" - STRUCT("A", "") -> "A" - STRUCT("", "B", "") -> "\00\00" + "\00\01" + "B" - STRUCT("A", "", "C") -> "A" + "\00\01" + "\00\00" + "\00\01" + "C" ``` Examples for struct with `DESC` fields: ``` - STRUCT("" DESC) -> "\xFF\xFF" + "\xFF\xFE" - STRUCT("" DESC, "") -> "\xFF\xFF" + "\xFF\xFE" - STRUCT("" DESC, "", "") -> "\xFF\xFF" + "\xFF\xFE" - STRUCT("" DESC, "A") -> "\xFF\xFF" + "\xFF\xFE" + "A" - STRUCT("A", "" DESC, "") -> "A" + "\00\01" + "\xFF\xFF" + "\xFF\xFE" - STRUCT("", "A" DESC) -> "\x00\x00" + "\x00\x01" + "\xBE" + "\xFF\xFE" ``` Since null bytes are always escaped, this encoding can cause size blowup for encodings like `Int64.BigEndianBytes` that are likely to produce many such bytes. Sorted mode: - Fields are encoded in sorted mode. - All values supported by the field encodings are allowed. - Fields with unset or `UNSPECIFIED` order are treated as `ASC`. - Element-wise order is preserved: `A < B` if `A[0] < B[0]`, or if `A[0] == B[0] && A[1] < B[1]`, etc. Strict prefixes sort first. Distinct mode: - Fields are encoded in distinct mode. - All values supported by the field encodings are allowed. # User `OrderedCodeBytes` encoding.
- },
- "singleton": { # Uses the encoding of `fields[0].type` as-is. Only valid if `fields.size == 1`. This encoding does not support `DESC` field ordering. # Use `Singleton` encoding.
- },
- },
- "fields": [ # The names and types of the fields in this struct.
- { # A struct field and its type.
- "fieldName": "A String", # The field name (optional). Fields without a `field_name` are considered anonymous and cannot be referenced by name.
- "type": # Object with schema name: Type # The type of values in this field.
- },
- ],
- },
- "stats": { # Approximate statistics related to a table. These statistics are calculated infrequently, while simultaneously, data in the table can change rapidly. Thus the values reported here (e.g. row count) are very likely out-of date, even the instant they are received in this API. Thus, only treat these values as approximate. IMPORTANT: Everything below is approximate, unless otherwise specified. # Output only. Only available with STATS_VIEW, this includes summary statistics about the entire table contents. For statistics about a specific column family, see ColumnFamilyStats in the mapped ColumnFamily collection above.
- "averageCellsPerColumn": 3.14, # How many cells are present per column (column family, column qualifier) combinations, averaged over all columns in all rows in the table. e.g. A table with 2 rows: * A row with 3 cells in "family:col" and 1 cell in "other:col" (4 cells / 2 columns) * A row with 1 cell in "family:col", 7 cells in "family:other_col", and 7 cells in "other:data" (15 cells / 3 columns) would report (4 + 15)/(2 + 3) = 3.8 in this field.
- "averageColumnsPerRow": 3.14, # How many (column family, column qualifier) combinations are present per row in the table, averaged over all rows in the table. e.g. A table with 2 rows: * A row with cells in "family:col" and "other:col" (2 distinct columns) * A row with cells in "family:col", "family:other_col", and "other:data" (3 distinct columns) would report (2 + 3)/2 = 2.5 in this field.
- "logicalDataBytes": "A String", # This is roughly how many bytes would be needed to read the entire table (e.g. by streaming all contents out).
- "rowCount": "A String", # How many rows are in the table.
- },
- "tieredStorageConfig": { # Config for tiered storage. A valid config must have a valid TieredStorageRule. Otherwise the whole TieredStorageConfig must be unset. By default all data is stored in the SSD tier (only SSD instances can configure tiered storage). # Rules to specify what data is stored in each storage tier. Different tiers store data differently, providing different trade-offs between cost and performance. Different parts of a table can be stored separately on different tiers. If a config is specified, tiered storage is enabled for this table. Otherwise, tiered storage is disabled. Only SSD instances can configure tiered storage.
- "infrequentAccess": { # Rule to specify what data is stored in a storage tier. # Rule to specify what data is stored in the infrequent access(IA) tier. The IA tier allows storing more data per node with reduced performance.
- "includeIfOlderThan": "A String", # Include cells older than the given age. For the infrequent access tier, this value must be at least 30 days.
- },
- },
- },
"tableId": "A String", # Required. The id of the table to create and restore to. This table must not already exist. The `table_id` appended to `parent` forms the full table name of the form `projects//instances//tables/`.
- "updateMask": "A String", # Optional. The list of fields to set on the new table. A mask specifying which fields (e.g. `deletion_protection`) in the `table` field should be set. This mask is relative to the `table` field, not to the request message. The wildcard (*) path is currently not supported. Currently RestoreTable only supports the following fields for modification: * `deletion_protection`: Defaults to `false` if not set. * `automated_backup_policy`: Defaults to no automated backup policy if not set. Output-only fields in the mask will be ignored. If any other field not listed above is included in `update_mask`, it will result in an INVALID_ARGUMENT error.
}
x__xgafv: string, V1 error format.
diff --git a/docs/dyn/chat_v1.spaces.messages.html b/docs/dyn/chat_v1.spaces.messages.html
index 33f8f72d01..d6cb562777 100644
--- a/docs/dyn/chat_v1.spaces.messages.html
+++ b/docs/dyn/chat_v1.spaces.messages.html
@@ -176,7 +176,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -243,10 +243,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -282,13 +282,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -320,8 +320,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -369,7 +369,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -410,7 +410,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -426,7 +426,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -443,8 +443,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -660,7 +660,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -701,7 +701,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -717,7 +717,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -734,8 +734,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -801,7 +801,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -1039,8 +1039,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -1107,10 +1107,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -1146,13 +1146,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -1184,8 +1184,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -1233,7 +1233,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -1274,7 +1274,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -1290,7 +1290,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -1307,8 +1307,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -1524,7 +1524,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -1565,7 +1565,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -1581,7 +1581,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -1598,8 +1598,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -1665,7 +1665,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -2121,7 +2121,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -2188,10 +2188,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -2227,13 +2227,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -2265,8 +2265,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -2314,7 +2314,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -2355,7 +2355,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -2371,7 +2371,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -2388,8 +2388,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -2605,7 +2605,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -2646,7 +2646,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -2662,7 +2662,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -2679,8 +2679,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -2746,7 +2746,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -2945,6 +2945,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -3274,7 +3311,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -3341,10 +3378,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -3380,13 +3417,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -3418,8 +3455,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -3467,7 +3504,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -3508,7 +3545,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -3524,7 +3561,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -3541,8 +3578,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -3758,7 +3795,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -3799,7 +3836,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -3815,7 +3852,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -3832,8 +3869,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -3899,7 +3936,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -4137,8 +4174,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -4205,10 +4242,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -4244,13 +4281,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -4282,8 +4319,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -4331,7 +4368,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -4372,7 +4409,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -4388,7 +4425,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -4405,8 +4442,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -4622,7 +4659,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -4663,7 +4700,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -4679,7 +4716,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -4696,8 +4733,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -4763,7 +4800,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -5219,7 +5256,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -5286,10 +5323,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -5325,13 +5362,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -5363,8 +5400,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -5412,7 +5449,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -5453,7 +5490,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -5469,7 +5506,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -5486,8 +5523,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -5703,7 +5740,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -5744,7 +5781,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -5760,7 +5797,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -5777,8 +5814,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -5844,7 +5881,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -6043,6 +6080,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -6390,7 +6464,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -6457,10 +6531,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -6496,13 +6570,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -6534,8 +6608,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -6583,7 +6657,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -6624,7 +6698,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -6640,7 +6714,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -6657,8 +6731,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -6874,7 +6948,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -6915,7 +6989,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -6931,7 +7005,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -6948,8 +7022,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -7015,7 +7089,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -7253,8 +7327,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -7321,10 +7395,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -7360,13 +7434,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -7398,8 +7472,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -7447,7 +7521,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -7488,7 +7562,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -7504,7 +7578,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -7521,8 +7595,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -7738,7 +7812,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -7779,7 +7853,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -7795,7 +7869,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -7812,8 +7886,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -7879,7 +7953,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -8335,7 +8409,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -8402,10 +8476,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -8441,13 +8515,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -8479,8 +8553,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -8528,7 +8602,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -8569,7 +8643,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -8585,7 +8659,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -8602,8 +8676,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -8819,7 +8893,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -8860,7 +8934,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -8876,7 +8950,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -8893,8 +8967,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -8960,7 +9034,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -9159,6 +9233,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -9494,7 +9605,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -9561,10 +9672,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -9600,13 +9711,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -9638,8 +9749,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -9687,7 +9798,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -9728,7 +9839,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -9744,7 +9855,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -9761,8 +9872,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -9978,7 +10089,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -10019,7 +10130,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -10035,7 +10146,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -10052,8 +10163,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -10119,7 +10230,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -10357,8 +10468,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -10425,10 +10536,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -10464,13 +10575,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -10502,8 +10613,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -10551,7 +10662,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -10592,7 +10703,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -10608,7 +10719,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -10625,8 +10736,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -10842,7 +10953,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -10883,7 +10994,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -10899,7 +11010,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -10916,8 +11027,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -10983,7 +11094,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -11439,7 +11550,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -11506,10 +11617,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -11545,13 +11656,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -11583,8 +11694,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -11632,7 +11743,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -11673,7 +11784,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -11689,7 +11800,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -11706,8 +11817,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -11923,7 +12034,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -11964,7 +12075,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -11980,7 +12091,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -11997,8 +12108,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -12064,7 +12175,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -12263,6 +12374,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -12598,7 +12746,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -12665,10 +12813,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -12704,13 +12852,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -12742,8 +12890,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -12791,7 +12939,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -12832,7 +12980,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -12848,7 +12996,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -12865,8 +13013,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -13082,7 +13230,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -13123,7 +13271,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -13139,7 +13287,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -13156,8 +13304,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -13223,7 +13371,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -13461,8 +13609,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -13529,10 +13677,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -13568,13 +13716,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -13606,8 +13754,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -13655,7 +13803,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -13696,7 +13844,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -13712,7 +13860,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -13729,8 +13877,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -13946,7 +14094,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -13987,7 +14135,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -14003,7 +14151,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -14020,8 +14168,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -14087,7 +14235,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -14543,7 +14691,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -14610,10 +14758,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -14649,13 +14797,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -14687,8 +14835,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -14736,7 +14884,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -14777,7 +14925,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -14793,7 +14941,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -14810,8 +14958,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -15027,7 +15175,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -15068,7 +15216,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -15084,7 +15232,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -15101,8 +15249,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -15168,7 +15316,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -15367,6 +15515,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -15685,7 +15870,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -15752,10 +15937,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -15791,13 +15976,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -15829,8 +16014,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -15878,7 +16063,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -15919,7 +16104,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -15935,7 +16120,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -15952,8 +16137,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -16169,7 +16354,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -16210,7 +16395,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -16226,7 +16411,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -16243,8 +16428,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -16310,7 +16495,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -16548,8 +16733,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -16616,10 +16801,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -16655,13 +16840,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -16693,8 +16878,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -16742,7 +16927,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -16783,7 +16968,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -16799,7 +16984,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -16816,8 +17001,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -17033,7 +17218,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -17074,7 +17259,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -17090,7 +17275,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -17107,8 +17292,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -17174,7 +17359,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -17630,7 +17815,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -17697,10 +17882,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -17736,13 +17921,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -17774,8 +17959,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -17823,7 +18008,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -17864,7 +18049,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -17880,7 +18065,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -17897,8 +18082,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -18114,7 +18299,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -18155,7 +18340,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -18171,7 +18356,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -18188,8 +18373,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -18255,7 +18440,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -18454,6 +18639,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -18732,7 +18954,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) to be included in the message. These cards will replace the existing cards of the message. If empty, the original cards included in the message will be cleared.
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -18799,10 +19021,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -18838,13 +19060,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -18876,8 +19098,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -18925,7 +19147,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -18966,7 +19188,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -18982,7 +19204,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -18999,8 +19221,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -19216,7 +19438,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -19257,7 +19479,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -19273,7 +19495,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -19290,8 +19512,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -19357,7 +19579,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -19638,7 +19860,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -19705,10 +19927,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -19744,13 +19966,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -19782,8 +20004,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -19831,7 +20053,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -19872,7 +20094,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -19888,7 +20110,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -19905,8 +20127,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -20122,7 +20344,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -20163,7 +20385,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -20179,7 +20401,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -20196,8 +20418,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -20263,7 +20485,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -20501,8 +20723,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -20569,10 +20791,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -20608,13 +20830,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -20646,8 +20868,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -20695,7 +20917,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -20736,7 +20958,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -20752,7 +20974,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -20769,8 +20991,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -20986,7 +21208,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -21027,7 +21249,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -21043,7 +21265,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -21060,8 +21282,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -21127,7 +21349,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -21583,7 +21805,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -21650,10 +21872,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -21689,13 +21911,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -21727,8 +21949,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -21776,7 +21998,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -21817,7 +22039,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -21833,7 +22055,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -21850,8 +22072,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -22067,7 +22289,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -22108,7 +22330,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -22124,7 +22346,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -22141,8 +22363,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -22208,7 +22430,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -22407,6 +22629,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -22744,7 +23003,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -22811,10 +23070,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -22850,13 +23109,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -22888,8 +23147,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -22937,7 +23196,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -22978,7 +23237,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -22994,7 +23253,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -23011,8 +23270,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -23228,7 +23487,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -23269,7 +23528,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -23285,7 +23544,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -23302,8 +23561,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -23369,7 +23628,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -23607,8 +23866,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -23675,10 +23934,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -23714,13 +23973,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -23752,8 +24011,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -23801,7 +24060,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -23842,7 +24101,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -23858,7 +24117,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -23875,8 +24134,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -24092,7 +24351,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -24133,7 +24392,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -24149,7 +24408,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -24166,8 +24425,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -24233,7 +24492,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -24689,7 +24948,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -24756,10 +25015,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -24795,13 +25054,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -24833,8 +25092,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -24882,7 +25141,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -24923,7 +25182,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -24939,7 +25198,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -24956,8 +25215,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -25173,7 +25432,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -25214,7 +25473,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -25230,7 +25489,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -25247,8 +25506,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -25314,7 +25573,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -25513,6 +25772,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -25831,7 +26127,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -25898,10 +26194,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -25937,13 +26233,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -25975,8 +26271,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -26024,7 +26320,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -26065,7 +26361,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -26081,7 +26377,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -26098,8 +26394,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -26315,7 +26611,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -26356,7 +26652,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -26372,7 +26668,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -26389,8 +26685,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -26456,7 +26752,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -26694,8 +26990,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -26762,10 +27058,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -26801,13 +27097,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -26839,8 +27135,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -26888,7 +27184,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -26929,7 +27225,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -26945,7 +27241,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -26962,8 +27258,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -27179,7 +27475,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -27220,7 +27516,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -27236,7 +27532,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -27253,8 +27549,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -27320,7 +27616,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -27776,7 +28072,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -27843,10 +28139,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -27882,13 +28178,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -27920,8 +28216,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -27969,7 +28265,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -28010,7 +28306,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -28026,7 +28322,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -28043,8 +28339,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -28260,7 +28556,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -28301,7 +28597,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -28317,7 +28613,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -28334,8 +28630,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -28401,7 +28697,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -28600,6 +28896,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
diff --git a/docs/dyn/chat_v1.spaces.spaceEvents.html b/docs/dyn/chat_v1.spaces.spaceEvents.html
index 2209e0f595..2dfc6dfa04 100644
--- a/docs/dyn/chat_v1.spaces.spaceEvents.html
+++ b/docs/dyn/chat_v1.spaces.spaceEvents.html
@@ -300,7 +300,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -367,10 +367,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -406,13 +406,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -444,8 +444,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -493,7 +493,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -534,7 +534,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -550,7 +550,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -567,8 +567,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -784,7 +784,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -825,7 +825,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -841,7 +841,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -858,8 +858,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -925,7 +925,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -1163,8 +1163,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -1231,10 +1231,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -1270,13 +1270,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -1308,8 +1308,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -1357,7 +1357,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -1398,7 +1398,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -1414,7 +1414,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -1431,8 +1431,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -1648,7 +1648,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -1689,7 +1689,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -1705,7 +1705,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -1722,8 +1722,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -1789,7 +1789,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -2245,7 +2245,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -2312,10 +2312,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -2351,13 +2351,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -2389,8 +2389,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -2438,7 +2438,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -2479,7 +2479,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -2495,7 +2495,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -2512,8 +2512,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -2729,7 +2729,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -2770,7 +2770,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -2786,7 +2786,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -2803,8 +2803,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -2870,7 +2870,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -3069,6 +3069,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -3382,7 +3419,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -3449,10 +3486,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -3488,13 +3525,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -3526,8 +3563,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -3575,7 +3612,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -3616,7 +3653,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -3632,7 +3669,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -3649,8 +3686,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -3866,7 +3903,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -3907,7 +3944,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -3923,7 +3960,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -3940,8 +3977,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -4007,7 +4044,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -4245,8 +4282,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -4313,10 +4350,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -4352,13 +4389,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -4390,8 +4427,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -4439,7 +4476,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -4480,7 +4517,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -4496,7 +4533,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -4513,8 +4550,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -4730,7 +4767,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -4771,7 +4808,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -4787,7 +4824,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -4804,8 +4841,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -4871,7 +4908,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -5327,7 +5364,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -5394,10 +5431,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -5433,13 +5470,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -5471,8 +5508,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -5520,7 +5557,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -5561,7 +5598,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -5577,7 +5614,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -5594,8 +5631,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -5811,7 +5848,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -5852,7 +5889,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -5868,7 +5905,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -5885,8 +5922,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -5952,7 +5989,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -6151,6 +6188,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -6464,7 +6538,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -6531,10 +6605,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -6570,13 +6644,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -6608,8 +6682,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -6657,7 +6731,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -6698,7 +6772,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -6714,7 +6788,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -6731,8 +6805,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -6948,7 +7022,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -6989,7 +7063,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -7005,7 +7079,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -7022,8 +7096,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -7089,7 +7163,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -7327,8 +7401,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -7395,10 +7469,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -7434,13 +7508,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -7472,8 +7546,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -7521,7 +7595,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -7562,7 +7636,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -7578,7 +7652,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -7595,8 +7669,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -7812,7 +7886,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -7853,7 +7927,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -7869,7 +7943,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -7886,8 +7960,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -7953,7 +8027,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -8409,7 +8483,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -8476,10 +8550,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -8515,13 +8589,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -8553,8 +8627,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -8602,7 +8676,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -8643,7 +8717,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -8659,7 +8733,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -8676,8 +8750,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -8893,7 +8967,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -8934,7 +9008,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -8950,7 +9024,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -8967,8 +9041,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -9034,7 +9108,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -9233,6 +9307,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -9544,7 +9655,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -9611,10 +9722,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -9650,13 +9761,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -9688,8 +9799,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -9737,7 +9848,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -9778,7 +9889,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -9794,7 +9905,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -9811,8 +9922,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -10028,7 +10139,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -10069,7 +10180,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -10085,7 +10196,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -10102,8 +10213,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -10169,7 +10280,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -10407,8 +10518,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -10475,10 +10586,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -10514,13 +10625,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -10552,8 +10663,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -10601,7 +10712,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -10642,7 +10753,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -10658,7 +10769,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -10675,8 +10786,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -10892,7 +11003,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -10933,7 +11044,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -10949,7 +11060,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -10966,8 +11077,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -11033,7 +11144,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -11489,7 +11600,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -11556,10 +11667,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -11595,13 +11706,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -11633,8 +11744,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -11682,7 +11793,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -11723,7 +11834,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -11739,7 +11850,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -11756,8 +11867,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -11973,7 +12084,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -12014,7 +12125,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -12030,7 +12141,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -12047,8 +12158,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -12114,7 +12225,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -12313,6 +12424,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -12622,7 +12770,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -12689,10 +12837,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -12728,13 +12876,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -12766,8 +12914,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -12815,7 +12963,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -12856,7 +13004,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -12872,7 +13020,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -12889,8 +13037,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -13106,7 +13254,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -13147,7 +13295,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -13163,7 +13311,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -13180,8 +13328,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -13247,7 +13395,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -13485,8 +13633,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -13553,10 +13701,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -13592,13 +13740,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -13630,8 +13778,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -13679,7 +13827,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -13720,7 +13868,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -13736,7 +13884,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -13753,8 +13901,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -13970,7 +14118,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -14011,7 +14159,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -14027,7 +14175,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -14044,8 +14192,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -14111,7 +14259,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -14567,7 +14715,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -14634,10 +14782,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -14673,13 +14821,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -14711,8 +14859,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -14760,7 +14908,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -14801,7 +14949,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -14817,7 +14965,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -14834,8 +14982,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -15051,7 +15199,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -15092,7 +15240,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -15108,7 +15256,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -15125,8 +15273,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -15192,7 +15340,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -15391,6 +15539,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -15700,7 +15885,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -15767,10 +15952,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -15806,13 +15991,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -15844,8 +16029,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -15893,7 +16078,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -15934,7 +16119,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -15950,7 +16135,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -15967,8 +16152,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -16184,7 +16369,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -16225,7 +16410,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -16241,7 +16426,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -16258,8 +16443,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -16325,7 +16510,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -16563,8 +16748,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -16631,10 +16816,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -16670,13 +16855,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -16708,8 +16893,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -16757,7 +16942,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -16798,7 +16983,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -16814,7 +16999,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -16831,8 +17016,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -17048,7 +17233,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -17089,7 +17274,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -17105,7 +17290,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -17122,8 +17307,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -17189,7 +17374,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -17645,7 +17830,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -17712,10 +17897,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -17751,13 +17936,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -17789,8 +17974,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -17838,7 +18023,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -17879,7 +18064,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -17895,7 +18080,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -17912,8 +18097,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -18129,7 +18314,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -18170,7 +18355,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -18186,7 +18371,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -18203,8 +18388,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -18270,7 +18455,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -18469,6 +18654,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -19289,7 +19511,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -19356,10 +19578,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -19395,13 +19617,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -19433,8 +19655,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -19482,7 +19704,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -19523,7 +19745,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -19539,7 +19761,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -19556,8 +19778,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -19773,7 +19995,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -19814,7 +20036,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -19830,7 +20052,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -19847,8 +20069,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -19914,7 +20136,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -20152,8 +20374,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -20220,10 +20442,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -20259,13 +20481,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -20297,8 +20519,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -20346,7 +20568,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -20387,7 +20609,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -20403,7 +20625,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -20420,8 +20642,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -20637,7 +20859,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -20678,7 +20900,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -20694,7 +20916,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -20711,8 +20933,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -20778,7 +21000,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -21234,7 +21456,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -21301,10 +21523,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -21340,13 +21562,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -21378,8 +21600,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -21427,7 +21649,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -21468,7 +21690,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -21484,7 +21706,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -21501,8 +21723,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -21718,7 +21940,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -21759,7 +21981,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -21775,7 +21997,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -21792,8 +22014,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -21859,7 +22081,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -22058,6 +22280,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -22371,7 +22630,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -22438,10 +22697,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -22477,13 +22736,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -22515,8 +22774,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -22564,7 +22823,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -22605,7 +22864,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -22621,7 +22880,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -22638,8 +22897,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -22855,7 +23114,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -22896,7 +23155,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -22912,7 +23171,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -22929,8 +23188,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -22996,7 +23255,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -23234,8 +23493,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -23302,10 +23561,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -23341,13 +23600,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -23379,8 +23638,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -23428,7 +23687,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -23469,7 +23728,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -23485,7 +23744,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -23502,8 +23761,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -23719,7 +23978,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -23760,7 +24019,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -23776,7 +24035,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -23793,8 +24052,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -23860,7 +24119,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -24316,7 +24575,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -24383,10 +24642,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -24422,13 +24681,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -24460,8 +24719,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -24509,7 +24768,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -24550,7 +24809,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -24566,7 +24825,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -24583,8 +24842,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -24800,7 +25059,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -24841,7 +25100,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -24857,7 +25116,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -24874,8 +25133,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -24941,7 +25200,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -25140,6 +25399,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -25453,7 +25749,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -25520,10 +25816,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -25559,13 +25855,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -25597,8 +25893,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -25646,7 +25942,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -25687,7 +25983,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -25703,7 +25999,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -25720,8 +26016,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -25937,7 +26233,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -25978,7 +26274,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -25994,7 +26290,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -26011,8 +26307,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -26078,7 +26374,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -26316,8 +26612,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -26384,10 +26680,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -26423,13 +26719,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -26461,8 +26757,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -26510,7 +26806,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -26551,7 +26847,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -26567,7 +26863,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -26584,8 +26880,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -26801,7 +27097,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -26842,7 +27138,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -26858,7 +27154,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -26875,8 +27171,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -26942,7 +27238,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -27398,7 +27694,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -27465,10 +27761,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -27504,13 +27800,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -27542,8 +27838,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -27591,7 +27887,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -27632,7 +27928,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -27648,7 +27944,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -27665,8 +27961,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -27882,7 +28178,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -27923,7 +28219,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -27939,7 +28235,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -27956,8 +28252,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -28023,7 +28319,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -28222,6 +28518,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -28533,7 +28866,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -28600,10 +28933,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -28639,13 +28972,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -28677,8 +29010,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -28726,7 +29059,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -28767,7 +29100,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -28783,7 +29116,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -28800,8 +29133,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -29017,7 +29350,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -29058,7 +29391,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -29074,7 +29407,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -29091,8 +29424,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -29158,7 +29491,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -29396,8 +29729,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -29464,10 +29797,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -29503,13 +29836,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -29541,8 +29874,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -29590,7 +29923,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -29631,7 +29964,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -29647,7 +29980,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -29664,8 +29997,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -29881,7 +30214,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -29922,7 +30255,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -29938,7 +30271,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -29955,8 +30288,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -30022,7 +30355,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -30478,7 +30811,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -30545,10 +30878,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -30584,13 +30917,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -30622,8 +30955,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -30671,7 +31004,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -30712,7 +31045,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -30728,7 +31061,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -30745,8 +31078,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -30962,7 +31295,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -31003,7 +31336,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -31019,7 +31352,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -31036,8 +31369,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -31103,7 +31436,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -31302,6 +31635,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -31611,7 +31981,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -31678,10 +32048,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -31717,13 +32087,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -31755,8 +32125,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -31804,7 +32174,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -31845,7 +32215,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -31861,7 +32231,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -31878,8 +32248,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -32095,7 +32465,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -32136,7 +32506,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -32152,7 +32522,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -32169,8 +32539,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -32236,7 +32606,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -32474,8 +32844,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -32542,10 +32912,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -32581,13 +32951,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -32619,8 +32989,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -32668,7 +33038,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -32709,7 +33079,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -32725,7 +33095,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -32742,8 +33112,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -32959,7 +33329,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -33000,7 +33370,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -33016,7 +33386,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -33033,8 +33403,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -33100,7 +33470,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -33556,7 +33926,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -33623,10 +33993,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -33662,13 +34032,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -33700,8 +34070,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -33749,7 +34119,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -33790,7 +34160,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -33806,7 +34176,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -33823,8 +34193,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -34040,7 +34410,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -34081,7 +34451,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -34097,7 +34467,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -34114,8 +34484,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -34181,7 +34551,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -34380,6 +34750,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
@@ -34689,7 +35096,7 @@ Method Details
],
},
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A new card is pushed to the card stack after clicking if specified. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -34756,10 +35163,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -34795,13 +35202,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -34833,8 +35240,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -34882,7 +35289,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -34923,7 +35330,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -34939,7 +35346,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -34956,8 +35363,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -35173,7 +35580,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -35214,7 +35621,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -35230,7 +35637,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -35247,8 +35654,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -35314,7 +35721,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -35552,8 +35959,8 @@ Method Details
"userFacingMessage": "A String", # The message to send users about the status of their request. If unset, a generic message based on the `status_code` is sent.
},
"dialog": { # Wrapper around the card body of the dialog. # Input only. [Dialog](https://developers.google.com/workspace/chat/dialogs) for the request.
- "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: `DateTimePicker`, `OnChangeAction`.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "body": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # Input only. Body of the dialog, which is rendered in a modal.
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -35620,10 +36027,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -35659,13 +36066,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -35697,8 +36104,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -35746,7 +36153,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -35787,7 +36194,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -35803,7 +36210,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -35820,8 +36227,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -36037,7 +36444,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -36078,7 +36485,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -36094,7 +36501,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -36111,8 +36518,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -36178,7 +36585,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -36634,7 +37041,7 @@ Method Details
"cardsV2": [ # Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
{ # A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)
"card": { # A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app**  To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" }, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" }, "text": "sasha@example.com" } }, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" }, "text": "Online" } }, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" }, "text": "+1 (555) 555-1234" } }, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" } } }, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" } ] } } } ] } } ] } ] } } ] } ``` # A card. Maximum size is 32 KB.
- "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
+ "cardActions": [ # The card's actions. Actions are added to the card's toolbar menu. Supports up to 10 `CardAction` items. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons): For example, the following JSON constructs a card action menu with `Settings` and `Send Feedback` options: ``` "card_actions": [ { "actionLabel": "Settings", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" } ], "loadIndicator": "LoadIndicator.SPINNER" } } }, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" } } } ] ```
{ # A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. [Google Workspace add-ons](https://developers.google.com/workspace/add-ons):
"actionLabel": "A String", # The label that displays as the action menu item.
"onClick": # Object with schema name: GoogleAppsCardV1OnClick # The `onClick` action for this action item.
@@ -36701,10 +37108,10 @@ Method Details
"header": "A String", # Text that appears at the top of a section. Supports simple HTML formatted text. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"id": "A String", # A unique ID assigned to the section that's used to identify the section to be mutated. The ID has a character limit of 64 characters and should be in the format of `[a-zA-Z0-9-]+`. Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.
"uncollapsibleWidgetsCount": 42, # The number of uncollapsible widgets which remain visible even when a section is collapsed. For example, when a section contains five widgets and the `uncollapsibleWidgetsCount` is set to `2`, the first two widgets are always shown and the last three are collapsed by default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.
- "widgets": [ # All the widgets in the section. Must contain at least one widget.
+ "widgets": [ # All the widgets in the section. Must contain at least one widget. A card supports up to 100 widgets across all sections.
{ # Each card is made up of widgets. A widget is a composite object that can represent one of text, images, buttons, and other object types.
"buttonList": # Object with schema name: GoogleAppsCardV1ButtonList # A list of buttons. For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link: ``` "buttonList": { "buttons": [ { "text": "Edit", "color": { "red": 0, "green": 0, "blue": 1, }, "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
- "carousel": { # A carousel, also known as a slider, rotates and displays a list of widgets in a slideshow format, with buttons navigating to the previous or next widget. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel", } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel", } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs. ``` { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } }, { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ```
+ "carousel": { # Rotates and displays a list of carousel cards in a slideshow format, with buttons navigating to the previous or next card. For example, this is a JSON representation of a carousel that contains three text paragraph widgets. ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in carousel" } } ] }, { "widgets": [ { "textParagraph": { "text": "Third text paragraph in carousel" } } ] } ] } ``` [Google Chat apps](https://developers.google.com/workspace/chat): # Contains a collection of `CarouselCard` items, each of which contains nested widgets. For example, this is a JSON representation of a carousel that contains two carousel cards, each with a text paragraph: ``` { "carouselCards": [ { "widgets": [ { "textParagraph": { "text": "First text paragraph in the carousel." } } ] }, { "widgets": [ { "textParagraph": { "text": "Second text paragraph in the carousel." } } ] } ] } ```
"carouselCards": [ # A list of cards included in the carousel.
{ # A card that can be displayed as a carousel item. [Google Chat apps](https://developers.google.com/workspace/chat):
"footerWidgets": [ # A list of widgets displayed at the bottom of the carousel card. The widgets are displayed in the order that they are specified.
@@ -36740,13 +37147,13 @@ Method Details
},
],
},
- "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "text": "Edit", "disabled": true, }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
+ "chipList": { # A list of chips layed out horizontally, which can either scroll horizontally or wrap to the next line. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # A list of chips. For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link: ``` "chipList": { "chips": [ { "label": "Edit", "disabled": true }, { "icon": { "knownIcon": "INVITE", "altText": "check calendar" }, "onClick": { "openLink": { "url": "https://example.com/calendar" } } } ] } ```
"chips": [ # An array of chips.
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -36778,8 +37185,8 @@ Method Details
{ # A text, icon, or text and icon chip that users can click. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"altText": "A String", # The alternative text that's used for accessibility. Set descriptive text that lets users know what the chip does. For example, if a chip opens a hyperlink, write: "Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat".
"disabled": True or False, # Whether the chip is in an inactive state and ignores user actions. Defaults to `false`.
- "enabled": True or False, # Whether the chip is in an active state and responds to user actions. Defaults to `true`. Deprecated. Use `disabled` instead.
- "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `text` are set, then the icon appears before the text.
+ "enabled": True or False, # Deprecated: Use `disabled` instead. Whether the chip is in an active state and responds to user actions.
+ "icon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon image. If both `icon` and `label` are set, then the icon appears before the label.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
"imageType": "A String", # The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.
@@ -36827,7 +37234,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -36868,7 +37275,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -36884,7 +37291,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -36901,8 +37308,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -37118,7 +37525,7 @@ Method Details
"A String",
],
},
- "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting.
+ "timezoneOffsetDate": 42, # The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If unset, the value defaults to the user's time zone setting. Note: This field is in minutes, whereas user interaction event payloads typically provide time zone offsets in milliseconds (divide by `60000` to convert).
"type": "A String", # Whether the widget supports inputting a date, a time, or the date and time.
"valueMsEpoch": "A String", # The default value displayed in the widget, in milliseconds since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time). Specify the value based on the type of picker (`DateTimePickerType`): * `DATE_AND_TIME`: a calendar date and time in UTC. For example, to represent January 1, 2023 at 12:00 PM UTC, use `1672574400000`. * `DATE_ONLY`: a calendar date at 00:00:00 UTC. For example, to represent January 1, 2023, use `1672531200000`. * `TIME_ONLY`: a time in UTC. For example, to represent 12:00 PM, use `43200000` (or `12 * 60 * 60 * 1000`).
},
@@ -37159,7 +37566,7 @@ Method Details
"weight": 42, # The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used. To preview different icon settings, go to [Google Font Icons](https://fonts.google.com/icons) and adjust the settings under **Customize**.
},
},
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click `topLabel` or `bottomLabel`.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This action is triggered when users click anywhere on the `DecoratedText` widget (including `text`, `top_label`, `bottom_label`, and icons), except when clicking a separate interactive control (`button` or `switch_control`).
"startIcon": { # An icon displayed in a widget on a card. For an example in Google Chat apps, see [Add an icon](https://developers.google.com/workspace/chat/add-text-image-card-dialog#add_an_icon). Supports [built-in](https://developers.google.com/workspace/chat/format-messages#builtinicons) and [custom](https://developers.google.com/workspace/chat/format-messages#customicons) icons. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The icon displayed in front of the text.
"altText": "A String", # Optional. A description of the icon used for accessibility. If unspecified, the default value `Button` is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, `A user's account portrait`, or `Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat`. If the icon is set in a `Button`, the `altText` appears as helper text when the user hovers over the button. However, if the button also sets `text`, the icon's `altText` is ignored.
"iconUrl": "A String", # Display a custom icon hosted at an HTTPS URL. For example: ``` "iconUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png" ``` Supported file types include `.png` and `.jpg`.
@@ -37175,7 +37582,7 @@ Method Details
"startIconVerticalAlignment": "A String", # Optional. Vertical alignment of the start icon. If not set, the icon will be vertically centered. [Google Chat apps](https://developers.google.com/workspace/chat):
"switchControl": { # Either a toggle-style switch or a checkbox inside a `decoratedText` widget. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): Only supported in the `decoratedText` widget. # A switch widget that a user can click to change its state and trigger an action.
"controlType": "A String", # How the switch appears in the user interface. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
- "name": "A String", # The name by which the switch widget is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "name": "A String", # The name by which the switch widget is identified in a form input event (as the key in `CommonEventObject.form_inputs`). For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
"onChangeAction": { # An action that describes the behavior when the form is submitted. For example, you can invoke an Apps Script script to handle the form. If the action is triggered, the form values are sent to the server. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend): # The action to perform when the switch state is changed, such as what function to run.
"allWidgetsAreRequired": True or False, # Optional. If this is true, then all widgets are considered required by this action. [Google Workspace add-ons and Chat apps](https://developers.google.com/workspace/extend):
"function": "A String", # A custom function to invoke when the containing element is clicked or otherwise activated. For example usage, see [Read form data](https://developers.google.com/workspace/chat/read-form-data).
@@ -37192,8 +37599,8 @@ Method Details
"A String",
],
},
- "selected": True or False, # When `true`, the switch is selected.
- "value": "A String", # The value entered by a user, returned as part of a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
+ "selected": True or False, # When `true`, the switch is selected, and its `value` is included in `CommonEventObject.form_inputs[name].string_inputs.value`.
+ "value": "A String", # The value returned in `CommonEventObject.form_inputs[name].string_inputs` when the switch is selected (`selected` is `true`). If `selected` is `true` and `value` is unset, an empty string (`""`) is returned in `string_inputs.value`. When `selected` is `false`, this value is omitted from `string_inputs.value`. For details about working with form inputs, see [Receive form data](https://developers.google.com/workspace/chat/read-form-data).
},
"text": "A String", # Required. The primary text. Supports simple formatting. For more information about formatting text, see [Formatting text in Google Chat apps](https://developers.google.com/workspace/chat/format-messages#card-formatting) and [Formatting text in Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).
"topLabel": "A String", # The text that appears above `text`. Always truncates.
@@ -37259,7 +37666,7 @@ Method Details
"title": "A String", # The grid item's title.
},
],
- "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.
+ "onClick": # Object with schema name: GoogleAppsCardV1OnClick # This callback is reused by each individual grid item, but with the item's identifier added to the callback's parameters (under the key `"grid_item_identifier"`).
"title": "A String", # The text that displays in the grid header.
},
"horizontalAlignment": "A String", # Specifies whether widgets align to the left, right, or center of a column.
@@ -37458,6 +37865,43 @@ Method Details
"deletionMetadata": { # Information about a deleted message. A message is deleted when `delete_time` is set. # Output only. Information about a deleted message. A message is deleted when `delete_time` is set.
"deletionType": "A String", # Indicates who deleted the message.
},
+ "elements": { # Elements are additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). Both `citations` and `cited_sources` can be provided as input when creating or updating a message and are populated on output when reading a message. # Optional. Additional message components, including inline `citations` (where each citation is associated with a specific portion of the message text) and `cited_sources` (which are general references used to generate the response and are not directly linked to specific segments of the text). On input, provide `elements` when creating or updating a message. On output, both `citations` and `cited_sources` are populated when reading a message that contains them. Callers can read structured citation metadata from `elements`, while `formatted_text` also includes inline citation tags or source links depending on `markup_syntax`. These differ from `annotations`, which are output-only and offer supplementary information tied to message fragments or the entire message text.
+ "citations": [ # Optional. A list of inline citations referenced within the message text (via `` tags) that render as interactive hover cards.
+ { # Citations are inline references that can provide users more detailed information about the inline reference. Corresponding inline citations should be present in the message text in a markup format of `{text}`. Citations are only supported when the message's `markup_syntax` is set to `MARKDOWN`. Unreferenced citations in `Elements.citations` (those without a matching `` tag in the message text) are ignored and do not cause the message to be rejected.
+ "citedSources": [ # Optional. A list of sources that are relevant to the citation. Sources are displayed in the citation hover card.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ "id": "A String", # Required. The ID of the citation. This ID is defined by the app creating the citation and must match the `data-id` attribute of the `` tag in the message text. Must contain only ASCII letters and numbers, and less than 63 characters.
+ },
+ ],
+ "citedSources": [ # Optional. A list of sources to be displayed under the message as footer links. These are not referenced inline. For inline references, use `citations`.
+ { # A reference to a source of information.
+ "footer": { # A footer for a source, used for attribution. # Optional. Additional information to show alongside the snippet in the form of a footer.
+ "text": "A String", # Optional. The plaintext to display in the footer. Does not support markdown format.
+ },
+ "snippet": { # A snippet object representing an excerpt from a larger corpus. # Optional. Snippet containing information directly from the source.
+ "imagePreview": { # An object encapsulating different ways of representing an image. Currently supported representations: * An image fetched from a URI. Additional representations might be supported in the future. # Optional. Image preview of the snippet provided as an input when creating the citation.
+ "imageUri": "A String", # Required. The URI of the image. Must be a publicly accessible URI so that Chat can fetch and display it.
+ },
+ "text": "A String", # Optional. A short plaintext excerpt directly from the corpus that is rendered in the citation hover card or source preview. When footer sources are automatically populated from inline `citations` (because `Elements.cited_sources` is not set), snippets are omitted from the deduplicated footer sources. Does not support markdown format, and must not exceed 1,000 characters.
+ },
+ "title": "A String", # Required. The plaintext title of the `CitedSource`. Does not support markdown format.
+ "uri": "A String", # Required. The URI pointing to the resource referenced by this `CitedSource`.
+ },
+ ],
+ },
"emojiReactionSummaries": [ # Output only. The list of emoji reaction summaries on the message.
{ # The number of people who reacted to a message with a specific emoji.
"emoji": { # An emoji that is used as a reaction to a message. # Output only. Emoji associated with the reactions.
diff --git a/docs/dyn/chromewebstore_v2.publishers.items.html b/docs/dyn/chromewebstore_v2.publishers.items.html
index 2f9cb34e14..6237f566d5 100644
--- a/docs/dyn/chromewebstore_v2.publishers.items.html
+++ b/docs/dyn/chromewebstore_v2.publishers.items.html
@@ -80,12 +80,30 @@ Instance Methods
Close httplib2 connections.
+
+ fetchReviews(name, filter=None, orderBy=None, pageSize=None, pageToken=None, x__xgafv=None)
+Fetch user reviews for an item.
+
+ fetchReviews_next(previous_request, previous_response)
+Retrieves the next page of results.
fetchStatus(name, x__xgafv=None)
Fetch the status of an item.
+
+ getRatingSummary(name, x__xgafv=None)
+Gets the RatingSummary for the publishers item.
publish(name, body=None, x__xgafv=None)
Submit the item to be published in the store. The item will be submitted for review unless `skip_review` is set to true, or the item is staged from a previous submission with `publish_type` set to `STAGED_PUBLISH`.
+
+Query the metrics for an item.
+
+ queryMetrics_next(previous_request, previous_response)
+Retrieves the next page of results.
+
+ rollback(name, body=None, x__xgafv=None)
+Rolls back an item's published CRX package to a specified previously published CRX package and publishes it to all users.
setPublishedDeployPercentage(name, body=None, x__xgafv=None)
Set a higher target deploy percentage for the item's published revision. This will be updated without the item being submitted for review. This is only available to items with over 10,000 seven-day active users.
@@ -119,6 +137,55 @@ Method Details
Close httplib2 connections.
+
+ fetchReviews(name, filter=None, orderBy=None, pageSize=None, pageToken=None, x__xgafv=None)
+ Fetch user reviews for an item.
+
+Args:
+ name: string, Required. The item resource name whose reviews are being fetched. Format: publishers/{publisher_id}/items/{item_id} (required)
+ filter: string, Optional. A filter to apply to the reviews. Only equality comparison on rating is supported, e.g. `rating = 5`.
+ orderBy: string, Optional. An optional comma-separated list of fields by which to sort the results. The default sort order is ascending (`asc`). Supported fields are: - `rating`: Supported orders are `asc` (default) and `desc`. - `create_time`: Only `desc` (most recent first) is supported; `desc` must be explicitly specified since the default is `asc`. Example: `rating desc`, `create_time desc`, or `rating desc, create_time desc`.
+ pageSize: integer, Optional. The maximum number of reviews to return. The service may return fewer than this value. If unspecified, at most 50 reviews will be returned. The maximum value is 200; values above 200 will be coerced to 200.
+ pageToken: string, Optional. A page token, received from a previous `FetchItemReviews` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `FetchItemReviews` must match the call that provided the page token.
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Response message for FetchItemReviews.
+ "nextPageToken": "A String", # A token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.
+ "reviews": [ # The list of reviews.
+ { # A review written by a user to rate an item in the Chrome Web Store.
+ "authorInfo": { # Info on the author of the review. # Info on the author of the review.
+ "displayName": "A String", # Display name for the author.
+ },
+ "comment": "A String", # Content of the review.
+ "createTime": "A String", # Output only. When the review was posted.
+ "item": "A String", # Output only. The item that this review evaluates. Format: publishers/{publisher}/items/{item}
+ "name": "A String", # Identifier. Review resource name. Format: reviews/{reviewId}
+ "rating": 42, # Rating of the item, between 1 and 5.
+ },
+ ],
+}
+
+
+
+ fetchReviews_next(previous_request, previous_response)
+ Retrieves the next page of results.
+
+Args:
+ previous_request: The request for the previous page. (required)
+ previous_response: The response from the request for the previous page. (required)
+
+Returns:
+ A request object that you can call 'execute()' on to request the next
+ page. Returns None if there are no more items in the collection.
+
+
+
fetchStatus(name, x__xgafv=None)
Fetch the status of an item.
@@ -161,6 +228,33 @@ Method Details
}
+
+ getRatingSummary(name, x__xgafv=None)
+ Gets the RatingSummary for the publishers item.
+
+Args:
+ name: string, Required. The name of the rating summary to retrieve. Format: publishers/{publisher}/items/{item}/ratingSummary (required)
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Singleton resource for the rating summary of an item.
+ "fiveStarRatingCount": "A String", # The number of five star ratings.
+ "fourStarRatingCount": "A String", # The number of four star ratings.
+ "name": "A String", # Identifier. Item rating summary resource name Format: publishers/{publisher}/items/{item}/ratingSummary
+ "nonEmptyReviewCount": "A String", # The number of ratings with a non-empty review text.
+ "oneStarRatingCount": "A String", # The number of one star ratings.
+ "rating": 3.14, # The rating of the item as shown on the store page, expressed as a double between 1 and 5.
+ "ratingCount": "A String", # The total number of ratings for the item.
+ "threeStarRatingCount": "A String", # The number of three star ratings.
+ "twoStarRatingCount": "A String", # The number of two star ratings.
+}
+
+
publish(name, body=None, x__xgafv=None)
Submit the item to be published in the store. The item will be submitted for review unless `skip_review` is set to true, or the item is staged from a previous submission with `publish_type` set to `STAGED_PUBLISH`.
@@ -204,6 +298,96 @@ Method Details
}
+
+ queryMetrics(name, dimensions=None, metrics=None, pageSize=None, pageToken=None, timeSpec_firstDate_day=None, timeSpec_firstDate_month=None, timeSpec_firstDate_year=None, timeSpec_lastDate_day=None, timeSpec_lastDate_month=None, timeSpec_lastDate_year=None, x__xgafv=None)
+ Query the metrics for an item.
+
+Args:
+ name: string, Required. The name of the item to query the metrics for. Format: publishers/{publisher}/items/{item} (required)
+ dimensions: string, Optional. Dimensions to slice the metrics by. At most one dimension can be specified. **Supported dimensions:** - os: The operating system of the user. - app-version: The version of the item. - country: The country of the user. - install-source: The source of the install. - install-type: The type of install (from webstore, inline, or other). - language: The language of the user. - enabled: If the item is enabled or disabled. - utm-campaign: The UTM campaign of the user. - utm-content: The UTM content of the user. - utm-medium: The UTM medium of the user. - utm-source: The UTM source of the user. - utm-term: The UTM term of the user. (repeated)
+ metrics: string, Required. The metrics to query the metric set for. **Supported metrics:** - installs: Count of item installs. - installs-7d: Count of item installs in the last 7 days. - uninstalls: Count of item uninstalls. - users: Count of daily active users of the item. - users-7d: Count of 7-day active users of the item. - impressions: Count of item impressions across the entire store front. - page-views: Count of individual views of the item's detail page. (repeated)
+ pageSize: integer, Optional. The maximum number of rows to return. If unspecified, at most 100 rows will be returned. The maximum value is 1000; Values above 1000 will be coerced to 1000.
+ pageToken: string, Optional. A page token, received from a previous call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to the request must match the call that provided the page token.
+ timeSpec_firstDate_day: integer, Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
+ timeSpec_firstDate_month: integer, Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
+ timeSpec_firstDate_year: integer, Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
+ timeSpec_lastDate_day: integer, Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
+ timeSpec_lastDate_month: integer, Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
+ timeSpec_lastDate_year: integer, Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Response message for QueryItemMetrics.
+ "metricRows": [ # The metric rows.
+ { # A single row of metrics and dimension values.
+ "date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # The date of the record.
+ "day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
+ "month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
+ "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
+ },
+ "dimensionValues": [ # Dimension value columns for the row.
+ "A String",
+ ],
+ "metricValues": [ # Metric columns for the row.
+ { # Represents the value of a single metric
+ "metric": "A String", # The name of the metric
+ "uniqueUserCount": "A String", # The unique user count associated with the metric (if applicable).
+ "value": "A String", # The value of the metric.
+ },
+ ],
+ },
+ ],
+ "nextPageToken": "A String", # A token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.
+}
+
+
+
+ queryMetrics_next(previous_request, previous_response)
+ Retrieves the next page of results.
+
+Args:
+ previous_request: The request for the previous page. (required)
+ previous_response: The response from the request for the previous page. (required)
+
+Returns:
+ A request object that you can call 'execute()' on to request the next
+ page. Returns None if there are no more items in the collection.
+
+
+
+
+ rollback(name, body=None, x__xgafv=None)
+ Rolls back an item's published CRX package to a specified previously published CRX package and publishes it to all users.
+
+Args:
+ name: string, Required. Name of the item to rollback in the form `publishers/{publisherId}/items/{itemId}` (required)
+ body: object, The request body.
+ The object takes the form of:
+
+{ # Request message for RollbackItem.
+ "newVersion": "A String", # Required. The new version to assign to the package being rolled back to. This effectively "rolls forward" the previous package by giving it a higher version number than the currently-published package. E.g. if the current published version is 1.1, the new version could be 1.1.1 or 1.2 but not 1.0.
+ "rollbackReason": "A String", # Required. The reason for the rollback that will be used for internal auditing and developer dashboard visibility.
+ "targetCrxVersion": "A String", # Required. The target previously published CRX version to roll back to. If unset, defaults to the last published CRX version.
+ "validateOnly": True or False, # Optional. If set, validate and dry run the request but do not actually initiate the rollback
+}
+
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Response message for `RollbackItem`.
+}
+
+
setPublishedDeployPercentage(name, body=None, x__xgafv=None)
Set a higher target deploy percentage for the item's published revision. This will be updated without the item being submitted for review. This is only available to items with over 10,000 seven-day active users.
diff --git a/docs/dyn/cloudbuild_v1.projects.builds.html b/docs/dyn/cloudbuild_v1.projects.builds.html
index c26f491669..9c1bb63609 100644
--- a/docs/dyn/cloudbuild_v1.projects.builds.html
+++ b/docs/dyn/cloudbuild_v1.projects.builds.html
@@ -76,7 +76,7 @@ Cloud Build API .
approve(name, body=None, x__xgafv=None)
-Approves or rejects a pending build. If approved, the returned long-running operation (LRO) will be analogous to the LRO returned from a CreateBuild call. If rejected, the returned LRO will be immediately done.
+Approves or rejects a pending build. If approved, the returned long-running operation (LRO) will be analogous to the LRO returned from a CreateBuild call. If rejected, the returned LRO will be immediately done. Note: This method only approves or rejects builds in the "global" region when using the legacy resource path projects/{project_id}/builds/{id}:approve. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/builds/{id}:approve`.
cancel(projectId, id, body=None, x__xgafv=None)
Cancels a build in progress. Note: This method only cancels builds in the "global" region when using the legacy resource path projects/{project_id}/builds/{id}:cancel. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/builds/{id}:cancel`.
@@ -101,7 +101,7 @@ Instance Methods
Method Details
approve(name, body=None, x__xgafv=None)
- Approves or rejects a pending build. If approved, the returned long-running operation (LRO) will be analogous to the LRO returned from a CreateBuild call. If rejected, the returned LRO will be immediately done.
+ Approves or rejects a pending build. If approved, the returned long-running operation (LRO) will be analogous to the LRO returned from a CreateBuild call. If rejected, the returned LRO will be immediately done. Note: This method only approves or rejects builds in the "global" region when using the legacy resource path projects/{project_id}/builds/{id}:approve. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/builds/{id}:approve`.
Args:
name: string, Required. Name of the target build. For example: "projects/{$project_id}/builds/{$build_id}" (required)
@@ -322,6 +322,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
@@ -816,6 +819,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
@@ -1341,6 +1347,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
@@ -1841,6 +1850,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
diff --git a/docs/dyn/cloudbuild_v1.projects.locations.builds.html b/docs/dyn/cloudbuild_v1.projects.locations.builds.html
index e44df78b8b..f7689f1fc3 100644
--- a/docs/dyn/cloudbuild_v1.projects.locations.builds.html
+++ b/docs/dyn/cloudbuild_v1.projects.locations.builds.html
@@ -76,7 +76,7 @@ Cloud Build API .
approve(name, body=None, x__xgafv=None)
-Approves or rejects a pending build. If approved, the returned long-running operation (LRO) will be analogous to the LRO returned from a CreateBuild call. If rejected, the returned LRO will be immediately done.
+Approves or rejects a pending build. If approved, the returned long-running operation (LRO) will be analogous to the LRO returned from a CreateBuild call. If rejected, the returned LRO will be immediately done. Note: This method only approves or rejects builds in the "global" region when using the legacy resource path projects/{project_id}/builds/{id}:approve. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/builds/{id}:approve`.
cancel(name, body=None, x__xgafv=None)
Cancels a build in progress. Note: This method only cancels builds in the "global" region when using the legacy resource path projects/{project_id}/builds/{id}:cancel. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/builds/{id}:cancel`.
@@ -101,7 +101,7 @@ Instance Methods
Method Details
approve(name, body=None, x__xgafv=None)
- Approves or rejects a pending build. If approved, the returned long-running operation (LRO) will be analogous to the LRO returned from a CreateBuild call. If rejected, the returned LRO will be immediately done.
+ Approves or rejects a pending build. If approved, the returned long-running operation (LRO) will be analogous to the LRO returned from a CreateBuild call. If rejected, the returned LRO will be immediately done. Note: This method only approves or rejects builds in the "global" region when using the legacy resource path projects/{project_id}/builds/{id}:approve. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/builds/{id}:approve`.
Args:
name: string, Required. Name of the target build. For example: "projects/{$project_id}/builds/{$build_id}" (required)
@@ -321,6 +321,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
@@ -815,6 +818,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
@@ -1340,6 +1346,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
@@ -1840,6 +1849,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
diff --git a/docs/dyn/cloudbuild_v1.projects.locations.triggers.html b/docs/dyn/cloudbuild_v1.projects.locations.triggers.html
index 304c9102f9..570d3a6d0c 100644
--- a/docs/dyn/cloudbuild_v1.projects.locations.triggers.html
+++ b/docs/dyn/cloudbuild_v1.projects.locations.triggers.html
@@ -79,22 +79,22 @@ Instance Methods
Close httplib2 connections.
create(parent, body, projectId=None, x__xgafv=None)
-Creates a new `BuildTrigger`.
+Creates a new `BuildTrigger`. Note: This method only creates triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers`.
delete(name, projectId=None, triggerId=None, x__xgafv=None)
-Deletes a `BuildTrigger` by its project ID and trigger ID.
+Deletes a `BuildTrigger` by its project ID and trigger ID. Note: This method only deletes triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers/{trigger_id}. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers/{trigger_id}`.
get(name, projectId=None, triggerId=None, x__xgafv=None)
-Returns information about a `BuildTrigger`.
+Returns information about a `BuildTrigger`. Note: This method only gets triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers/{trigger_id}. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers/{trigger_id}`.
list(parent, pageSize=None, pageToken=None, projectId=None, x__xgafv=None)
-Lists existing `BuildTrigger`s.
+Lists existing `BuildTrigger`s. Note: This method only lists triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers`.
list_next(previous_request, previous_response)
Retrieves the next page of results.
patch(resourceName, body, projectId=None, triggerId=None, updateMask=None, x__xgafv=None)
-Updates a `BuildTrigger` by its project ID and trigger ID.
+Updates a `BuildTrigger` by its project ID and trigger ID. Note: This method only updates triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers/{trigger_id}. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers/{trigger_id}`.
run(name, body=None, x__xgafv=None)
Runs a `BuildTrigger` at a particular source revision. To run a regional or global trigger, use the POST request that includes the location endpoint in the path (ex. v1/projects/{projectId}/locations/{region}/triggers/{triggerId}:run). The POST request that does not include the location endpoint in the path can only be used when running global triggers.
@@ -109,7 +109,7 @@ Method Details
create(parent, body, projectId=None, x__xgafv=None)
- Creates a new `BuildTrigger`.
+ Creates a new `BuildTrigger`. Note: This method only creates triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers`.
Args:
parent: string, The parent resource where this trigger will be created. Format: `projects/{project}/locations/{location}` (required)
@@ -310,6 +310,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
@@ -948,6 +951,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
@@ -1386,7 +1392,7 @@ Method Details
delete(name, projectId=None, triggerId=None, x__xgafv=None)
- Deletes a `BuildTrigger` by its project ID and trigger ID.
+ Deletes a `BuildTrigger` by its project ID and trigger ID. Note: This method only deletes triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers/{trigger_id}. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers/{trigger_id}`.
Args:
name: string, The name of the `Trigger` to delete. Format: `projects/{project}/locations/{location}/triggers/{trigger}` (required)
@@ -1406,7 +1412,7 @@ Method Details
get(name, projectId=None, triggerId=None, x__xgafv=None)
- Returns information about a `BuildTrigger`.
+ Returns information about a `BuildTrigger`. Note: This method only gets triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers/{trigger_id}. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers/{trigger_id}`.
Args:
name: string, The name of the `Trigger` to retrieve. Format: `projects/{project}/locations/{location}/triggers/{trigger}` (required)
@@ -1614,6 +1620,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
@@ -2052,7 +2061,7 @@ Method Details
list(parent, pageSize=None, pageToken=None, projectId=None, x__xgafv=None)
- Lists existing `BuildTrigger`s.
+ Lists existing `BuildTrigger`s. Note: This method only lists triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers`.
Args:
parent: string, The parent of the collection of `Triggers`. Format: `projects/{project}/locations/{location}` (required)
@@ -2264,6 +2273,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
@@ -2718,7 +2730,7 @@ Method Details
patch(resourceName, body, projectId=None, triggerId=None, updateMask=None, x__xgafv=None)
- Updates a `BuildTrigger` by its project ID and trigger ID.
+ Updates a `BuildTrigger` by its project ID and trigger ID. Note: This method only updates triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers/{trigger_id}. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers/{trigger_id}`.
Args:
resourceName: string, The `Trigger` name with format: `projects/{project}/locations/{location}/triggers/{trigger}`, where {trigger} is a unique identifier generated by the service. (required)
@@ -2919,6 +2931,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
@@ -3559,6 +3574,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
diff --git a/docs/dyn/cloudbuild_v1.projects.locations.workerPools.html b/docs/dyn/cloudbuild_v1.projects.locations.workerPools.html
index 229fa7d7df..1eee1765cb 100644
--- a/docs/dyn/cloudbuild_v1.projects.locations.workerPools.html
+++ b/docs/dyn/cloudbuild_v1.projects.locations.workerPools.html
@@ -134,6 +134,9 @@ Method Details
"diskSizeGb": "A String", # Size of the disk attached to the worker, in GB. See [Worker pool config file](https://cloud.google.com/build/docs/private-pools/worker-pool-config-file-schema). Specify a value of up to 4000. If `0` is specified, Cloud Build will use a standard disk size.
"enableNestedVirtualization": True or False, # Optional. Enable nested virtualization on the worker, if supported by the machine type. By default, nested virtualization is disabled.
"machineType": "A String", # Optional. Machine type of a worker, such as `e2-medium`. See [Worker pool config file](https://cloud.google.com/build/docs/private-pools/worker-pool-config-file-schema). If left blank, Cloud Build will use a sensible default.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region.
+ "A String",
+ ],
"workerRelease": "A String", # Optional. Option to specify which release or release channel (rapid|regular|stable) to use to run this build.
},
},
@@ -249,6 +252,9 @@ Method Details
"diskSizeGb": "A String", # Size of the disk attached to the worker, in GB. See [Worker pool config file](https://cloud.google.com/build/docs/private-pools/worker-pool-config-file-schema). Specify a value of up to 4000. If `0` is specified, Cloud Build will use a standard disk size.
"enableNestedVirtualization": True or False, # Optional. Enable nested virtualization on the worker, if supported by the machine type. By default, nested virtualization is disabled.
"machineType": "A String", # Optional. Machine type of a worker, such as `e2-medium`. See [Worker pool config file](https://cloud.google.com/build/docs/private-pools/worker-pool-config-file-schema). If left blank, Cloud Build will use a sensible default.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region.
+ "A String",
+ ],
"workerRelease": "A String", # Optional. Option to specify which release or release channel (rapid|regular|stable) to use to run this build.
},
},
@@ -301,6 +307,9 @@ Method Details
"diskSizeGb": "A String", # Size of the disk attached to the worker, in GB. See [Worker pool config file](https://cloud.google.com/build/docs/private-pools/worker-pool-config-file-schema). Specify a value of up to 4000. If `0` is specified, Cloud Build will use a standard disk size.
"enableNestedVirtualization": True or False, # Optional. Enable nested virtualization on the worker, if supported by the machine type. By default, nested virtualization is disabled.
"machineType": "A String", # Optional. Machine type of a worker, such as `e2-medium`. See [Worker pool config file](https://cloud.google.com/build/docs/private-pools/worker-pool-config-file-schema). If left blank, Cloud Build will use a sensible default.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region.
+ "A String",
+ ],
"workerRelease": "A String", # Optional. Option to specify which release or release channel (rapid|regular|stable) to use to run this build.
},
},
@@ -359,6 +368,9 @@ Method Details
"diskSizeGb": "A String", # Size of the disk attached to the worker, in GB. See [Worker pool config file](https://cloud.google.com/build/docs/private-pools/worker-pool-config-file-schema). Specify a value of up to 4000. If `0` is specified, Cloud Build will use a standard disk size.
"enableNestedVirtualization": True or False, # Optional. Enable nested virtualization on the worker, if supported by the machine type. By default, nested virtualization is disabled.
"machineType": "A String", # Optional. Machine type of a worker, such as `e2-medium`. See [Worker pool config file](https://cloud.google.com/build/docs/private-pools/worker-pool-config-file-schema). If left blank, Cloud Build will use a sensible default.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region.
+ "A String",
+ ],
"workerRelease": "A String", # Optional. Option to specify which release or release channel (rapid|regular|stable) to use to run this build.
},
},
diff --git a/docs/dyn/cloudbuild_v1.projects.triggers.html b/docs/dyn/cloudbuild_v1.projects.triggers.html
index e4d3d25ee1..b35da8b107 100644
--- a/docs/dyn/cloudbuild_v1.projects.triggers.html
+++ b/docs/dyn/cloudbuild_v1.projects.triggers.html
@@ -79,22 +79,22 @@ Instance Methods
Close httplib2 connections.
create(projectId, body, parent=None, x__xgafv=None)
-Creates a new `BuildTrigger`.
+Creates a new `BuildTrigger`. Note: This method only creates triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers`.
delete(projectId, triggerId, name=None, x__xgafv=None)
-Deletes a `BuildTrigger` by its project ID and trigger ID.
+Deletes a `BuildTrigger` by its project ID and trigger ID. Note: This method only deletes triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers/{trigger_id}. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers/{trigger_id}`.
get(projectId, triggerId, name=None, x__xgafv=None)
-Returns information about a `BuildTrigger`.
+Returns information about a `BuildTrigger`. Note: This method only gets triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers/{trigger_id}. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers/{trigger_id}`.
list(projectId, pageSize=None, pageToken=None, parent=None, x__xgafv=None)
-Lists existing `BuildTrigger`s.
+Lists existing `BuildTrigger`s. Note: This method only lists triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers`.
list_next(previous_request, previous_response)
Retrieves the next page of results.
patch(projectId, triggerId, body, updateMask=None, x__xgafv=None)
-Updates a `BuildTrigger` by its project ID and trigger ID.
+Updates a `BuildTrigger` by its project ID and trigger ID. Note: This method only updates triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers/{trigger_id}. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers/{trigger_id}`.
run(projectId, triggerId, body=None, name=None, x__xgafv=None)
Runs a `BuildTrigger` at a particular source revision. To run a regional or global trigger, use the POST request that includes the location endpoint in the path (ex. v1/projects/{projectId}/locations/{region}/triggers/{triggerId}:run). The POST request that does not include the location endpoint in the path can only be used when running global triggers.
@@ -109,7 +109,7 @@ Method Details
create(projectId, body, parent=None, x__xgafv=None)
- Creates a new `BuildTrigger`.
+ Creates a new `BuildTrigger`. Note: This method only creates triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers`.
Args:
projectId: string, Required. ID of the project for which to configure automatic builds. (required)
@@ -310,6 +310,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
@@ -948,6 +951,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
@@ -1386,7 +1392,7 @@ Method Details
delete(projectId, triggerId, name=None, x__xgafv=None)
- Deletes a `BuildTrigger` by its project ID and trigger ID.
+ Deletes a `BuildTrigger` by its project ID and trigger ID. Note: This method only deletes triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers/{trigger_id}. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers/{trigger_id}`.
Args:
projectId: string, Required. ID of the project that owns the trigger. (required)
@@ -1406,7 +1412,7 @@ Method Details
get(projectId, triggerId, name=None, x__xgafv=None)
- Returns information about a `BuildTrigger`.
+ Returns information about a `BuildTrigger`. Note: This method only gets triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers/{trigger_id}. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers/{trigger_id}`.
Args:
projectId: string, Required. ID of the project that owns the trigger. (required)
@@ -1614,6 +1620,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
@@ -2052,7 +2061,7 @@ Method Details
list(projectId, pageSize=None, pageToken=None, parent=None, x__xgafv=None)
- Lists existing `BuildTrigger`s.
+ Lists existing `BuildTrigger`s. Note: This method only lists triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers`.
Args:
projectId: string, Required. ID of the project for which to list BuildTriggers. (required)
@@ -2264,6 +2273,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
@@ -2718,7 +2730,7 @@ Method Details
patch(projectId, triggerId, body, updateMask=None, x__xgafv=None)
- Updates a `BuildTrigger` by its project ID and trigger ID.
+ Updates a `BuildTrigger` by its project ID and trigger ID. Note: This method only updates triggers in the "global" region when using the legacy resource path projects/{project_id}/triggers/{trigger_id}. For all regions, use the regional resource path: `projects/{project_id}/locations/{location}/triggers/{trigger_id}`.
Args:
projectId: string, Required. ID of the project that owns the trigger. (required)
@@ -2920,6 +2932,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
@@ -3558,6 +3573,9 @@ Method Details
"workerRelease": "A String", # Output only. OUTPUT_ONLY. The release or release channel used to run the Build. This is set to the same value as `PrivatePoolV1Config.WorkerConfig.worker_release` for the UI to easily access.
},
"pubsubTopic": "A String", # Optional. Option to specify the Pub/Sub topic to receive build status updates.
+ "rankedMachineSeries": [ # Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.
+ "A String",
+ ],
"requestedVerifyOption": "A String", # Requested verifiability options.
"resolvedWorkerRelease": "A String", # Output only. Worker release resolved from the release channel.
"secretEnv": [ # A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build's `Secret`. These variables will be available to all build steps in this build.
diff --git a/docs/dyn/composer_v1.projects.locations.imageVersions.html b/docs/dyn/composer_v1.projects.locations.imageVersions.html
index 197341d553..f8922c3376 100644
--- a/docs/dyn/composer_v1.projects.locations.imageVersions.html
+++ b/docs/dyn/composer_v1.projects.locations.imageVersions.html
@@ -110,6 +110,7 @@ Method Details
"imageVersions": [ # The list of supported ImageVersions in a location.
{ # ImageVersion information
"creationDisabled": True or False, # Whether it is impossible to create an environment with the image version.
+ "devModeSupported": True or False, # Whether it is possible to create an environment in the `DEVELOPMENT` mode with the image version.
"imageVersionId": "A String", # The string identifier of the ImageVersion, in the form: "composer-x.y.z-airflow-a.b.c"
"isDefault": True or False, # Whether this is the default ImageVersion used by Composer during environment creation if no input ImageVersion is specified.
"releaseDate": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # The date of the version release.
diff --git a/docs/dyn/composer_v1beta1.projects.locations.imageVersions.html b/docs/dyn/composer_v1beta1.projects.locations.imageVersions.html
index d12db673f3..06ccac8155 100644
--- a/docs/dyn/composer_v1beta1.projects.locations.imageVersions.html
+++ b/docs/dyn/composer_v1beta1.projects.locations.imageVersions.html
@@ -110,6 +110,7 @@ Method Details
"imageVersions": [ # The list of supported ImageVersions in a location.
{ # Image Version information
"creationDisabled": True or False, # Whether it is impossible to create an environment with the image version.
+ "devModeSupported": True or False, # Whether it is possible to create an environment in the `DEVELOPMENT` mode with the image version.
"imageVersionId": "A String", # The string identifier of the ImageVersion, in the form: "composer-x.y.z-airflow-a.b.c"
"isDefault": True or False, # Whether this is the default ImageVersion used by Composer during environment creation if no input ImageVersion is specified.
"releaseDate": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # The date of the version release.
diff --git a/docs/dyn/compute_alpha.disks.html b/docs/dyn/compute_alpha.disks.html
index 7513685de6..231e16f7e6 100644
--- a/docs/dyn/compute_alpha.disks.html
+++ b/docs/dyn/compute_alpha.disks.html
@@ -2514,7 +2514,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
diff --git a/docs/dyn/compute_alpha.instanceTemplates.html b/docs/dyn/compute_alpha.instanceTemplates.html
index 0212e33450..51b65de660 100644
--- a/docs/dyn/compute_alpha.instanceTemplates.html
+++ b/docs/dyn/compute_alpha.instanceTemplates.html
@@ -292,10 +292,12 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -1935,10 +1937,12 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -3546,10 +3550,12 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -5184,10 +5190,12 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
diff --git a/docs/dyn/compute_alpha.instances.html b/docs/dyn/compute_alpha.instances.html
index a7e12ef939..4186a26b73 100644
--- a/docs/dyn/compute_alpha.instances.html
+++ b/docs/dyn/compute_alpha.instances.html
@@ -1668,10 +1668,12 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -4758,10 +4760,12 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -7573,10 +7577,12 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -10905,10 +10911,12 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -12936,10 +12944,12 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -24329,10 +24339,12 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
diff --git a/docs/dyn/compute_alpha.machineImages.html b/docs/dyn/compute_alpha.machineImages.html
index b38d743096..3514488885 100644
--- a/docs/dyn/compute_alpha.machineImages.html
+++ b/docs/dyn/compute_alpha.machineImages.html
@@ -487,10 +487,12 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -1690,12 +1692,12 @@ Method Details
# be a dash.
"params": { # Machine Image parameters # Input only. [Input Only] Additional parameters that are passed in the request, but are
# not persisted in the resource.
- "excludedDisks": [ # Input only. [Input Only] Specifies the list of disk device names that must be
- # excluded from the new machine image.
+ "excludedDisks": [ # Input only. Specifies the list of disk device names that must be excluded from the
+ # new machine image.
"A String",
],
- "includedDisks": [ # Input only. [Input Only] Specifies the list of disk device names that must be
- # included with the new machine image.
+ "includedDisks": [ # Input only. Specifies the list of disk device names that must be included with the
+ # new machine image.
"A String",
],
"resourceManagerTags": { # Input only. Resource manager tags to be bound to the machine image. Tag keys and values
@@ -2870,10 +2872,12 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -4073,12 +4077,12 @@ Method Details
# be a dash.
"params": { # Machine Image parameters # Input only. [Input Only] Additional parameters that are passed in the request, but are
# not persisted in the resource.
- "excludedDisks": [ # Input only. [Input Only] Specifies the list of disk device names that must be
- # excluded from the new machine image.
+ "excludedDisks": [ # Input only. Specifies the list of disk device names that must be excluded from the
+ # new machine image.
"A String",
],
- "includedDisks": [ # Input only. [Input Only] Specifies the list of disk device names that must be
- # included with the new machine image.
+ "includedDisks": [ # Input only. Specifies the list of disk device names that must be included with the
+ # new machine image.
"A String",
],
"resourceManagerTags": { # Input only. Resource manager tags to be bound to the machine image. Tag keys and values
@@ -5276,10 +5280,12 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -6479,12 +6485,12 @@ Method Details
# be a dash.
"params": { # Machine Image parameters # Input only. [Input Only] Additional parameters that are passed in the request, but are
# not persisted in the resource.
- "excludedDisks": [ # Input only. [Input Only] Specifies the list of disk device names that must be
- # excluded from the new machine image.
+ "excludedDisks": [ # Input only. Specifies the list of disk device names that must be excluded from the
+ # new machine image.
"A String",
],
- "includedDisks": [ # Input only. [Input Only] Specifies the list of disk device names that must be
- # included with the new machine image.
+ "includedDisks": [ # Input only. Specifies the list of disk device names that must be included with the
+ # new machine image.
"A String",
],
"resourceManagerTags": { # Input only. Resource manager tags to be bound to the machine image. Tag keys and values
diff --git a/docs/dyn/compute_alpha.recoverableSnapshots.html b/docs/dyn/compute_alpha.recoverableSnapshots.html
index 8c298f82a2..c163e30764 100644
--- a/docs/dyn/compute_alpha.recoverableSnapshots.html
+++ b/docs/dyn/compute_alpha.recoverableSnapshots.html
@@ -397,7 +397,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -1137,7 +1138,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -1933,7 +1935,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
diff --git a/docs/dyn/compute_alpha.regionDisks.html b/docs/dyn/compute_alpha.regionDisks.html
index b15b7551ed..841247d7ef 100644
--- a/docs/dyn/compute_alpha.regionDisks.html
+++ b/docs/dyn/compute_alpha.regionDisks.html
@@ -1027,7 +1027,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
diff --git a/docs/dyn/compute_alpha.regionInstanceTemplates.html b/docs/dyn/compute_alpha.regionInstanceTemplates.html
index da6bd1ffca..440d6a2d60 100644
--- a/docs/dyn/compute_alpha.regionInstanceTemplates.html
+++ b/docs/dyn/compute_alpha.regionInstanceTemplates.html
@@ -499,10 +499,12 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -1740,10 +1742,12 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -3379,10 +3383,12 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
diff --git a/docs/dyn/compute_alpha.regionInstances.html b/docs/dyn/compute_alpha.regionInstances.html
index 5cff66a2c0..01206def45 100644
--- a/docs/dyn/compute_alpha.regionInstances.html
+++ b/docs/dyn/compute_alpha.regionInstances.html
@@ -684,10 +684,12 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
diff --git a/docs/dyn/compute_alpha.regionRecoverableSnapshots.html b/docs/dyn/compute_alpha.regionRecoverableSnapshots.html
index 3604004204..3d2a292664 100644
--- a/docs/dyn/compute_alpha.regionRecoverableSnapshots.html
+++ b/docs/dyn/compute_alpha.regionRecoverableSnapshots.html
@@ -610,7 +610,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -1409,7 +1410,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
diff --git a/docs/dyn/compute_alpha.regionSnapshots.html b/docs/dyn/compute_alpha.regionSnapshots.html
index de1db5423d..1e28bdb50f 100644
--- a/docs/dyn/compute_alpha.regionSnapshots.html
+++ b/docs/dyn/compute_alpha.regionSnapshots.html
@@ -634,7 +634,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -1357,7 +1358,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -2104,7 +2106,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
diff --git a/docs/dyn/compute_alpha.regionTargetHttpsProxies.html b/docs/dyn/compute_alpha.regionTargetHttpsProxies.html
index 48e67a26d3..a0c1ea25b5 100644
--- a/docs/dyn/compute_alpha.regionTargetHttpsProxies.html
+++ b/docs/dyn/compute_alpha.regionTargetHttpsProxies.html
@@ -576,7 +576,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -768,7 +768,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -1353,7 +1353,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -1597,7 +1597,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
diff --git a/docs/dyn/compute_alpha.snapshots.html b/docs/dyn/compute_alpha.snapshots.html
index 8137586bde..53c079e86e 100644
--- a/docs/dyn/compute_alpha.snapshots.html
+++ b/docs/dyn/compute_alpha.snapshots.html
@@ -420,7 +420,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -1180,7 +1181,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -1926,7 +1928,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -2672,7 +2675,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
diff --git a/docs/dyn/compute_alpha.targetHttpsProxies.html b/docs/dyn/compute_alpha.targetHttpsProxies.html
index b4aacb9162..8c95ada08f 100644
--- a/docs/dyn/compute_alpha.targetHttpsProxies.html
+++ b/docs/dyn/compute_alpha.targetHttpsProxies.html
@@ -374,7 +374,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -965,7 +965,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -1156,7 +1156,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -1740,7 +1740,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -1983,7 +1983,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
diff --git a/docs/dyn/compute_alpha.zoneQueuedResources.html b/docs/dyn/compute_alpha.zoneQueuedResources.html
index d1c6eae90f..7ed398b2b5 100644
--- a/docs/dyn/compute_alpha.zoneQueuedResources.html
+++ b/docs/dyn/compute_alpha.zoneQueuedResources.html
@@ -812,10 +812,12 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -3494,10 +3496,12 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -5458,10 +5462,12 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -7815,10 +7821,12 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
- "confidentialTpmType": "A String",
- "sevSnpIrqMode": "A String",
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
},
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
diff --git a/docs/dyn/compute_beta.disks.html b/docs/dyn/compute_beta.disks.html
index dcf6a6a611..dced3ce17b 100644
--- a/docs/dyn/compute_beta.disks.html
+++ b/docs/dyn/compute_beta.disks.html
@@ -2149,7 +2149,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
diff --git a/docs/dyn/compute_beta.instanceTemplates.html b/docs/dyn/compute_beta.instanceTemplates.html
index 127aeb8658..5010e28859 100644
--- a/docs/dyn/compute_beta.instanceTemplates.html
+++ b/docs/dyn/compute_beta.instanceTemplates.html
@@ -290,6 +290,8 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -1822,6 +1824,8 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -3329,6 +3333,8 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -4856,6 +4862,8 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
diff --git a/docs/dyn/compute_beta.instances.html b/docs/dyn/compute_beta.instances.html
index 081a8fb7bf..876e85f5a1 100644
--- a/docs/dyn/compute_beta.instances.html
+++ b/docs/dyn/compute_beta.instances.html
@@ -1603,6 +1603,8 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -4434,6 +4436,8 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -7106,6 +7110,8 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -10164,6 +10170,8 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -11948,6 +11956,8 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -22831,6 +22841,8 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
diff --git a/docs/dyn/compute_beta.machineImages.html b/docs/dyn/compute_beta.machineImages.html
index 433391d697..484d2d26cd 100644
--- a/docs/dyn/compute_beta.machineImages.html
+++ b/docs/dyn/compute_beta.machineImages.html
@@ -478,6 +478,8 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -1580,12 +1582,12 @@ Method Details
# be a dash.
"params": { # Machine Image parameters # Input only. [Input Only] Additional parameters that are passed in the request, but are
# not persisted in the resource.
- "excludedDisks": [ # Input only. [Input Only] Specifies the list of disk device names that must be
- # excluded from the new machine image.
+ "excludedDisks": [ # Input only. Specifies the list of disk device names that must be excluded from the
+ # new machine image.
"A String",
],
- "includedDisks": [ # Input only. [Input Only] Specifies the list of disk device names that must be
- # included with the new machine image.
+ "includedDisks": [ # Input only. Specifies the list of disk device names that must be included with the
+ # new machine image.
"A String",
],
"resourceManagerTags": { # Input only. Resource manager tags to be bound to the machine image. Tag keys and values
@@ -2684,6 +2686,8 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -3786,12 +3790,12 @@ Method Details
# be a dash.
"params": { # Machine Image parameters # Input only. [Input Only] Additional parameters that are passed in the request, but are
# not persisted in the resource.
- "excludedDisks": [ # Input only. [Input Only] Specifies the list of disk device names that must be
- # excluded from the new machine image.
+ "excludedDisks": [ # Input only. Specifies the list of disk device names that must be excluded from the
+ # new machine image.
"A String",
],
- "includedDisks": [ # Input only. [Input Only] Specifies the list of disk device names that must be
- # included with the new machine image.
+ "includedDisks": [ # Input only. Specifies the list of disk device names that must be included with the
+ # new machine image.
"A String",
],
"resourceManagerTags": { # Input only. Resource manager tags to be bound to the machine image. Tag keys and values
@@ -4906,6 +4910,8 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -6008,12 +6014,12 @@ Method Details
# be a dash.
"params": { # Machine Image parameters # Input only. [Input Only] Additional parameters that are passed in the request, but are
# not persisted in the resource.
- "excludedDisks": [ # Input only. [Input Only] Specifies the list of disk device names that must be
- # excluded from the new machine image.
+ "excludedDisks": [ # Input only. Specifies the list of disk device names that must be excluded from the
+ # new machine image.
"A String",
],
- "includedDisks": [ # Input only. [Input Only] Specifies the list of disk device names that must be
- # included with the new machine image.
+ "includedDisks": [ # Input only. Specifies the list of disk device names that must be included with the
+ # new machine image.
"A String",
],
"resourceManagerTags": { # Input only. Resource manager tags to be bound to the machine image. Tag keys and values
diff --git a/docs/dyn/compute_beta.recoverableSnapshots.html b/docs/dyn/compute_beta.recoverableSnapshots.html
index 2662bde070..3d3b2cd840 100644
--- a/docs/dyn/compute_beta.recoverableSnapshots.html
+++ b/docs/dyn/compute_beta.recoverableSnapshots.html
@@ -601,7 +601,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -1397,7 +1398,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
diff --git a/docs/dyn/compute_beta.regionDisks.html b/docs/dyn/compute_beta.regionDisks.html
index 6e5f6a0dc7..a9c6ea0872 100644
--- a/docs/dyn/compute_beta.regionDisks.html
+++ b/docs/dyn/compute_beta.regionDisks.html
@@ -1000,7 +1000,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
diff --git a/docs/dyn/compute_beta.regionInstanceTemplates.html b/docs/dyn/compute_beta.regionInstanceTemplates.html
index 7d9252c5ab..ea2d268e62 100644
--- a/docs/dyn/compute_beta.regionInstanceTemplates.html
+++ b/docs/dyn/compute_beta.regionInstanceTemplates.html
@@ -490,6 +490,8 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -1627,6 +1629,8 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -3155,6 +3159,8 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
diff --git a/docs/dyn/compute_beta.regionInstances.html b/docs/dyn/compute_beta.regionInstances.html
index ad75d03f1b..65ae5c2684 100644
--- a/docs/dyn/compute_beta.regionInstances.html
+++ b/docs/dyn/compute_beta.regionInstances.html
@@ -676,6 +676,8 @@ Method Details
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
diff --git a/docs/dyn/compute_beta.regionSnapshots.html b/docs/dyn/compute_beta.regionSnapshots.html
index bd381bc133..27431b105e 100644
--- a/docs/dyn/compute_beta.regionSnapshots.html
+++ b/docs/dyn/compute_beta.regionSnapshots.html
@@ -620,7 +620,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -1336,7 +1337,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -2069,7 +2071,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
diff --git a/docs/dyn/compute_beta.regionTargetHttpsProxies.html b/docs/dyn/compute_beta.regionTargetHttpsProxies.html
index ab26ceed28..8cae86daba 100644
--- a/docs/dyn/compute_beta.regionTargetHttpsProxies.html
+++ b/docs/dyn/compute_beta.regionTargetHttpsProxies.html
@@ -568,7 +568,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -759,7 +759,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -1336,7 +1336,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -1579,7 +1579,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
diff --git a/docs/dyn/compute_beta.snapshots.html b/docs/dyn/compute_beta.snapshots.html
index 9f8f3c925a..f010aa21c4 100644
--- a/docs/dyn/compute_beta.snapshots.html
+++ b/docs/dyn/compute_beta.snapshots.html
@@ -413,7 +413,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -1159,7 +1160,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -1898,7 +1900,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -2630,7 +2633,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
diff --git a/docs/dyn/compute_beta.targetHttpsProxies.html b/docs/dyn/compute_beta.targetHttpsProxies.html
index 847cf2a7a6..9d2e9f0576 100644
--- a/docs/dyn/compute_beta.targetHttpsProxies.html
+++ b/docs/dyn/compute_beta.targetHttpsProxies.html
@@ -373,7 +373,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -956,7 +956,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -1146,7 +1146,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -1722,7 +1722,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -1964,7 +1964,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
diff --git a/docs/dyn/compute_preview.disks.html b/docs/dyn/compute_preview.disks.html
index c70404a195..1bdcf1bb2c 100644
--- a/docs/dyn/compute_preview.disks.html
+++ b/docs/dyn/compute_preview.disks.html
@@ -2068,7 +2068,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
diff --git a/docs/dyn/compute_preview.folderRolloutPlans.html b/docs/dyn/compute_preview.folderRolloutPlans.html
new file mode 100644
index 0000000000..8f57f5ea5d
--- /dev/null
+++ b/docs/dyn/compute_preview.folderRolloutPlans.html
@@ -0,0 +1,1178 @@
+
+
+
+Compute Engine API . folderRolloutPlans
+Instance Methods
+
+ close()
+Close httplib2 connections.
+
+ delete(folder, rolloutPlan, requestId=None, x__xgafv=None)
+Deletes a FolderRolloutPlan.
+
+ get(folder, rolloutPlan, x__xgafv=None)
+Gets details of a single folder-scoped RolloutPlan.
+
+ insert(folder, body=None, requestId=None, x__xgafv=None)
+Creates a new RolloutPlan in a given folder and location.
+
+ list(folder, filter=None, maxResults=None, orderBy=None, pageToken=None, x__xgafv=None)
+Lists FolderRolloutPlans in a given folder and location.
+
+ list_next(previous_request, previous_response)
+Retrieves the next page of results.
+Method Details
+
+ close()
+ Close httplib2 connections.
+
+
+
+ delete(folder, rolloutPlan, requestId=None, x__xgafv=None)
+ Deletes a FolderRolloutPlan.
+
+Args:
+ folder: string, Folder ID for this request. (required)
+ rolloutPlan: string, Name of the FolderRolloutPlan resource to delete. (required)
+ requestId: string, An optional request ID to identify requests. Specify a unique request ID so
+that if you must retry your request, the server will know to ignore the
+request if it has already been completed.
+
+For example, consider a situation where you make an initial request and
+the request times out. If you make the request again with the same
+request ID, the server can check if original operation with the same
+request ID was received, and if so, will ignore the second request. This
+prevents clients from accidentally creating duplicate commitments.
+
+The request ID must be
+a valid UUID with the exception that zero UUID is not supported
+(00000000-0000-0000-0000-000000000000).
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Represents an Operation resource.
+ #
+ # Google Compute Engine has three Operation resources:
+ #
+ # * [Global](/compute/docs/reference/rest/v1/globalOperations)
+ # * [Regional](/compute/docs/reference/rest/v1/regionOperations)
+ # * [Zonal](/compute/docs/reference/rest/v1/zoneOperations)
+ #
+ # You can use an operation resource to manage asynchronous API requests.
+ # For more information, readHandling
+ # API responses.
+ #
+ # Operations can be global, regional or zonal.
+ #
+ # - For global operations, use the `globalOperations`
+ # resource.
+ # - For regional operations, use the
+ # `regionOperations` resource.
+ # - For zonal operations, use
+ # the `zoneOperations` resource.
+ #
+ #
+ #
+ # For more information, read
+ # Global, Regional, and Zonal Resources.
+ #
+ # Note that completed Operation resources have a limited
+ # retention period.
+ "clientOperationId": "A String", # [Output Only] The value of `requestId` if you provided it in the request.
+ # Not present otherwise.
+ "creationTimestamp": "A String", # [Deprecated] This field is deprecated.
+ "description": "A String", # [Output Only] A textual description of the operation, which is
+ # set when the operation is created.
+ "details": { # [Output Only] Extended details about the operation's execution.
+ "data": { # Machine readable data from the message.
+ "a_key": "",
+ },
+ "message": "A String", # Human or AI readable details on execution of the operation.
+ },
+ "endTime": "A String", # [Output Only] The time that this operation was completed. This value is inRFC3339
+ # text format.
+ "error": { # [Output Only] If errors are generated during processing of the operation,
+ # this field will be populated.
+ "errors": [ # [Output Only] The array of errors encountered while processing this
+ # operation.
+ { # Represents a single error encountered during the processing of an
+ # operation.
+ "code": "A String", # [Output Only] The error type identifier for this error.
+ "errorDetails": [ # [Output Only] An optional list of messages that contain the error
+ # details. There is a set of defined message types to use for providing
+ # details.The syntax depends on the error code. For example,
+ # QuotaExceededInfo will have details when the error code is
+ # QUOTA_EXCEEDED.
+ { # Container for structured error details providing additional context
+ # specific to the encountered error code.
+ "errorInfo": { # Describes the cause of the error with structured details. # Error information containing structured domain, reason, and metadata.
+ #
+ # Example of an error when contacting the "pubsub.googleapis.com" API when it
+ # is not enabled:
+ #
+ # { "reason": "API_DISABLED"
+ # "domain": "googleapis.com"
+ # "metadata": {
+ # "resource": "projects/123",
+ # "service": "pubsub.googleapis.com"
+ # }
+ # }
+ #
+ # This response indicates that the pubsub.googleapis.com API is not enabled.
+ #
+ # Example of an error that is returned when attempting to create a Spanner
+ # instance in a region that is out of stock:
+ #
+ # { "reason": "STOCKOUT"
+ # "domain": "spanner.googleapis.com",
+ # "metadata": {
+ # "availableRegions": "us-central1,us-east2"
+ # }
+ # }
+ "domain": "A String", # The logical grouping to which the "reason" belongs. The error domain
+ # is typically the registered service name of the tool or product that
+ # generates the error. Example: "pubsub.googleapis.com". If the error is
+ # generated by some common infrastructure, the error domain must be a
+ # globally unique value that identifies the infrastructure. For Google API
+ # infrastructure, the error domain is "googleapis.com".
+ "metadatas": { # Additional structured details about this error.
+ #
+ # Keys must match a regular expression of `a-z+` but should
+ # ideally be lowerCamelCase. Also, they must be limited to 64 characters in
+ # length. When identifying the current value of an exceeded limit, the units
+ # should be contained in the key, not the value. For example, rather than
+ # `{"instanceLimit": "100/request"}`, should be returned as,
+ # `{"instanceLimitPerRequest": "100"}`, if the client exceeds the number of
+ # instances that can be created in a single (batch) request.
+ "a_key": "A String",
+ },
+ "reason": "A String", # The reason of the error. This is a constant value that identifies the
+ # proximate cause of the error. Error reasons are unique within a particular
+ # domain of errors. This should be at most 63 characters and match a
+ # regular expression of `A-Z+[A-Z0-9]`, which represents
+ # UPPER_SNAKE_CASE.
+ },
+ "help": { # Provides links to documentation or for performing an out of band action. # Links and information to help the user resolve the error.
+ #
+ # For example, if a quota check failed with an error indicating the calling
+ # project hasn't enabled the accessed service, this can contain a URL pointing
+ # directly to the right place in the developer console to flip the bit.
+ "links": [ # URL(s) pointing to additional information on handling the current error.
+ { # Describes a URL link.
+ "description": "A String", # Describes what the link offers.
+ "url": "A String", # The URL of the link.
+ },
+ ],
+ },
+ "localizedMessage": { # Provides a localized error message that is safe to return to the user # A localized human-readable error message intended for end users.
+ # which can be attached to an RPC error.
+ "locale": "A String", # The locale used following the specification defined at
+ # https://www.rfc-editor.org/rfc/bcp/bcp47.txt.
+ # Examples are: "en-US", "fr-CH", "es-MX"
+ "message": "A String", # The localized error message in the above locale.
+ },
+ "quotaInfo": { # Additional details for quota exceeded error for resource quota. # Details about quota limits and metrics when a quota is exceeded.
+ "dimensions": { # The map holding related quota dimensions.
+ "a_key": "A String",
+ },
+ "futureLimit": 3.14, # Future quota limit being rolled out. The limit's unit depends on the quota
+ # type or metric.
+ "limit": 3.14, # Current effective quota limit. The limit's unit depends on the quota type
+ # or metric.
+ "limitName": "A String", # The name of the quota limit.
+ "metricName": "A String", # The Compute Engine quota metric name.
+ "rolloutStatus": "A String", # Rollout status of the future quota limit.
+ },
+ },
+ ],
+ "location": "A String", # [Output Only] Indicates the field in the request that caused the error.
+ # This property is optional.
+ "message": "A String", # [Output Only] An optional, human-readable error message.
+ },
+ ],
+ },
+ "getHealthOperationMetadata": { # Metadata for GetHealth operations. # Output only. Metadata for GetHealth operations.
+ "healthInfo": { # Health information. # Output only. The health information.
+ "availabilitySloStatus": "A String", # Output only. The availability SLO status.
+ "healthStatus": "A String", # Output only. The health status.
+ "repairCategory": "A String", # Output only. The repair category.
+ "unhealthyReason": "A String", # Output only. The reason for unhealthy status.
+ "updateTime": "A String", # Output only. The time when health info was updated.
+ },
+ },
+ "getVersionOperationMetadata": {
+ "inlineSbomInfo": {
+ "currentComponentVersions": { # A mapping of components to their currently-applied versions or other
+ # appropriate identifiers.
+ "a_key": "A String",
+ },
+ "targetComponentVersions": { # A mapping of components to their target versions or other appropriate
+ # identifiers.
+ "a_key": "A String",
+ },
+ },
+ },
+ "httpErrorMessage": "A String", # [Output Only] If the operation fails, this field contains the HTTP error
+ # message that was returned, such as `NOT FOUND`.
+ "httpErrorStatusCode": 42, # [Output Only] If the operation fails, this field contains the HTTP error
+ # status code that was returned. For example, a `404` means the
+ # resource was not found.
+ "id": "A String", # [Output Only] The unique identifier for the operation. This identifier is
+ # defined by the server.
+ "insertTime": "A String", # [Output Only] The time that this operation was requested.
+ # This value is inRFC3339
+ # text format.
+ "instancesBulkInsertOperationMetadata": {
+ "perLocationStatus": { # Status information per location (location name is key).
+ # Example key: zones/us-central1-a
+ "a_key": {
+ "createdVmCount": 42, # [Output Only] Count of VMs successfully created so far.
+ "deletedVmCount": 42, # [Output Only] Count of VMs that got deleted during rollback.
+ "failedToCreateVmCount": 42, # [Output Only] Count of VMs that started creating but encountered an
+ # error.
+ "status": "A String", # [Output Only] Creation status of BulkInsert operation - information
+ # if the flow is rolling forward or rolling back.
+ "targetVmCount": 42, # [Output Only] Count of VMs originally planned to be created.
+ },
+ },
+ },
+ "instancesTroubleshootOperationMetadata": { # [Output Only] Operation metadata for instances.troubleshoot. # Output only. [Output Only] Operation metadata for instances.troubleshoot.
+ "troubleshootOutput": "A String", # Output only. [Output Only] Serialized output of the troubleshooting diagnostic run.
+ },
+ "kind": "compute#operation", # Output only. [Output Only] Type of the resource. Always `compute#operation` for
+ # Operation resources.
+ "name": "A String", # [Output Only] Name of the operation.
+ "operationGroupId": "A String", # Output only. [Output Only] An ID that represents a group of operations, such as when a
+ # group of operations results from a `bulkInsert` API request.
+ "operationType": "A String", # [Output Only] The type of operation, such as `insert`,
+ # `update`, or `delete`, and so on.
+ "progress": 42, # [Output Only] An optional progress indicator that ranges from 0 to 100.
+ # There is no requirement that this be linear or support any granularity of
+ # operations. This should not be used to guess when the operation will be
+ # complete. This number should monotonically increase as the operation
+ # progresses.
+ "region": "A String", # [Output Only] The URL of the region where the operation resides. Only
+ # applicable when performing regional operations.
+ "selfLink": "A String", # [Output Only] Server-defined URL for the resource.
+ "setCommonInstanceMetadataOperationMetadata": { # Output only. [Output Only] If the operation is for projects.setCommonInstanceMetadata,
+ # this field will contain information on all underlying zonal actions and
+ # their state.
+ "clientOperationId": "A String", # [Output Only] The client operation id.
+ "perLocationOperations": { # [Output Only] Status information per location (location name is key).
+ # Example key: zones/us-central1-a
+ "a_key": {
+ "error": { # The `Status` type defines a logical error model that is suitable for # [Output Only] If state is `ABANDONED` or `FAILED`, this field is
+ # populated.
+ # different programming environments, including REST APIs and RPC APIs. It is
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+ # three pieces of data: error code, error message, and error details.
+ #
+ # You can find out more about this error model and how to work with it in the
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
+ "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+ "details": [ # A list of messages that carry the error details. There is a common set of
+ # message types for APIs to use.
+ {
+ "a_key": "", # Properties of the object. Contains field @type with type URL.
+ },
+ ],
+ "message": "A String", # A developer-facing error message, which should be in English. Any
+ # user-facing error message should be localized and sent in the
+ # google.rpc.Status.details field, or localized by the client.
+ },
+ "state": "A String", # [Output Only] Status of the action, which can be one of the following:
+ # `PROPAGATING`, `PROPAGATED`, `ABANDONED`, `FAILED`, or `DONE`.
+ },
+ },
+ },
+ "startTime": "A String", # [Output Only] The time that this operation was started by the server.
+ # This value is inRFC3339
+ # text format.
+ "status": "A String", # [Output Only] The status of the operation, which can be one of the
+ # following:
+ # `PENDING`, `RUNNING`, or `DONE`.
+ "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the
+ # operation.
+ "targetId": "A String", # [Output Only] The unique target ID, which identifies a specific incarnation
+ # of the target resource.
+ "targetLink": "A String", # [Output Only] The URL of the resource that the operation modifies. For
+ # operations related to creating a snapshot, this points to the disk
+ # that the snapshot was created from.
+ "user": "A String", # [Output Only] User who requested the operation, for example:
+ # `user@example.com` or
+ # `alice_smith_identifier (global/workforcePools/example-com-us-employees)`.
+ "warnings": [ # [Output Only] If warning messages are generated during processing of the
+ # operation, this field will be populated.
+ {
+ "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute
+ # Engine returns NO_RESULTS_ON_PAGE if there
+ # are no results in the response.
+ "data": [ # [Output Only] Metadata about this warning in key:
+ # value format. For example:
+ #
+ # "data": [
+ # {
+ # "key": "scope",
+ # "value": "zones/us-east1-d"
+ # }]
+ {
+ "key": "A String", # [Output Only] A key that provides more detail on the warning being
+ # returned. For example, for warnings where there are no results in a list
+ # request for a particular zone, this key might be scope and
+ # the key value might be the zone name. Other examples might be a key
+ # indicating a deprecated resource and a suggested replacement, or a
+ # warning about invalid network settings (for example, if an instance
+ # attempts to perform IP forwarding but is not enabled for IP forwarding).
+ "value": "A String", # [Output Only] A warning data value corresponding to the key.
+ },
+ ],
+ "message": "A String", # [Output Only] A human-readable description of the warning code.
+ },
+ ],
+ "zone": "A String", # [Output Only] The URL of the zone where the operation resides. Only
+ # applicable when performing per-zone operations.
+}
+
+
+
+ get(folder, rolloutPlan, x__xgafv=None)
+ Gets details of a single folder-scoped RolloutPlan.
+
+Args:
+ folder: string, Folder ID for this request. (required)
+ rolloutPlan: string, Name of the persistent rollout plan to return. (required)
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # RolloutPlan resource.
+ #
+ # A RolloutPlan is the customer-defined strategy to divide a large-scale change
+ # into smaller increments, referred to as "waves". Each wave targets a specific
+ # portion of the overall affected area and defines criteria that must be met
+ # before progressing to the subsequent wave.
+ "creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339
+ # text format.
+ "description": "A String", # An optional description of this resource. Provide this property when you
+ # create the resource.
+ "id": "A String", # Output only. [Output Only] The unique identifier for the resource. This identifier is
+ # defined by the server.
+ "kind": "compute#rolloutPlan", # Output only. [Output Only] Type of the resource. Always compute#rolloutPlan
+ # for rolloutPlans.
+ "locationScope": "A String", # The location scope of the rollout plan. If not specified, the location
+ # scope is considered as ZONAL.
+ "name": "A String", # Name of the resource. Provided by the client when the resource is created.
+ # The name must be 1-63 characters long, and comply withRFC1035.
+ # Specifically, the name must be 1-63 characters long and match the regular
+ # expression `[a-z]([-a-z0-9]*[a-z0-9])?`
+ # which means the first character must be a lowercase letter, and all
+ # following characters must be a dash, lowercase letter, or digit, except
+ # the last character, which cannot be a dash.
+ "selfLink": "A String", # Output only. [Output Only] Server-defined fully-qualified URL for this resource.
+ "selfLinkWithId": "A String", # Output only. [Output Only] Server-defined URL for this resource's resource id.
+ "waves": [ # Required. The waves included in this rollout plan.
+ { # A single wave in a rollout plan.
+ "displayName": "A String", # Optional. The display name of this wave of the rollout plan.
+ "number": "A String", # Output only. The wave number.
+ "orchestrationOptions": { # Options to control the pace of orchestration of a wave. These options are # Optional. The orchestration options for this wave.
+ # required only if the resource being rolled out follows the Orchestrated
+ # pattern.
+ "delays": [ # Optional. Delays, if any, to be added between batches of projects. We allow
+ # multiple Delays to be specified, letting users set separate delays
+ # between batches of projects corresponding to different locations and
+ # batches of projects corresponding to the same location.
+ { # Options to control the delay, if any, between batches of projects.
+ "delimiter": "A String", # Optional. Controls whether the delay should only be added between batches of
+ # projects corresponding to different locations, or also between
+ # batches of projects corresponding to the same location.
+ #
+ # Must be set to DELIMITER_UNSPECIFIED if no delay is to be added.
+ "duration": "A String", # Optional. The duration of the delay, if any, to be added between batches of
+ # projects. A zero duration corresponds to no delay.
+ "type": "A String", # Optional. Controls whether the specified duration is to be added at the end of
+ # each batch, or if the total processing time for each batch will be
+ # padded if needed to meet the specified duration.
+ #
+ # Must be set to TYPE_UNSPECIFIED if no delay is to be added.
+ },
+ ],
+ "maxConcurrentLocations": "A String", # Optional. Maximum number of locations to be orchestrated in parallel.
+ "maxConcurrentResourcesPerLocation": "A String", # Optional. Maximum number of resources to be orchestrated per location in
+ # parallel.
+ },
+ "selectors": [ # Required. The selectors for this wave. There is a logical AND between each selector
+ # defined in a wave, so a resource must satisfy the criteria of *all* the
+ # specified selectors to be in scope for the wave.
+ { # A selector which specifies what resource(s) are included in a given wave.
+ "locationSelector": { # Roll out to resources by location. # Optional. Roll out to resources by Cloud locations.
+ "includedLocations": [ # Optional. Example: "us-central1-a"
+ "A String",
+ ],
+ },
+ "resourceHierarchySelector": { # Roll out to resources by Cloud Resource Manager resource hierarchy # Optional. Roll out to resources by Cloud Resource Manager resource hierarchy.
+ # nodes such as projects, folders, orgs.
+ "includedFolders": [ # Optional. Format: "folders/{folder_id}"
+ "A String",
+ ],
+ "includedOrganizations": [ # Optional. Format: "organizations/{organization_id}"
+ "A String",
+ ],
+ "includedProjects": [ # Optional. Format: "projects/{project_id}"
+ "A String",
+ ],
+ },
+ },
+ ],
+ "validation": { # The validation to be performed before progressing to the next wave. # Required. The validation to be performed at the end of this wave.
+ "timeBasedValidationMetadata": { # Metadata required if type = "time". # Optional. Metadata required if type = "time".
+ "waitDuration": "A String", # Optional. The duration that the system waits in between waves. This wait starts
+ # after all changes in the wave are rolled out.
+ },
+ "type": "A String", # Required. The type of the validation. If a type of validation is associated with
+ # a metadata object, the appropriate metadata field mapping to the
+ # validation type must be provided in the validation message. Possible
+ # values are in quotes below alongside an explanation:
+ # "manual": The system waits for an end-user approval API before
+ # progressing to the next wave.
+ # "time": The system waits for a user specified duration before
+ # progressing to the next wave. TimeBasedValidation must be provided.
+ },
+ },
+ ],
+}
+
+
+
+ insert(folder, body=None, requestId=None, x__xgafv=None)
+ Creates a new RolloutPlan in a given folder and location.
+
+Args:
+ folder: string, Folder ID for this request. (required)
+ body: object, The request body.
+ The object takes the form of:
+
+{ # RolloutPlan resource.
+ #
+ # A RolloutPlan is the customer-defined strategy to divide a large-scale change
+ # into smaller increments, referred to as "waves". Each wave targets a specific
+ # portion of the overall affected area and defines criteria that must be met
+ # before progressing to the subsequent wave.
+ "creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339
+ # text format.
+ "description": "A String", # An optional description of this resource. Provide this property when you
+ # create the resource.
+ "id": "A String", # Output only. [Output Only] The unique identifier for the resource. This identifier is
+ # defined by the server.
+ "kind": "compute#rolloutPlan", # Output only. [Output Only] Type of the resource. Always compute#rolloutPlan
+ # for rolloutPlans.
+ "locationScope": "A String", # The location scope of the rollout plan. If not specified, the location
+ # scope is considered as ZONAL.
+ "name": "A String", # Name of the resource. Provided by the client when the resource is created.
+ # The name must be 1-63 characters long, and comply withRFC1035.
+ # Specifically, the name must be 1-63 characters long and match the regular
+ # expression `[a-z]([-a-z0-9]*[a-z0-9])?`
+ # which means the first character must be a lowercase letter, and all
+ # following characters must be a dash, lowercase letter, or digit, except
+ # the last character, which cannot be a dash.
+ "selfLink": "A String", # Output only. [Output Only] Server-defined fully-qualified URL for this resource.
+ "selfLinkWithId": "A String", # Output only. [Output Only] Server-defined URL for this resource's resource id.
+ "waves": [ # Required. The waves included in this rollout plan.
+ { # A single wave in a rollout plan.
+ "displayName": "A String", # Optional. The display name of this wave of the rollout plan.
+ "number": "A String", # Output only. The wave number.
+ "orchestrationOptions": { # Options to control the pace of orchestration of a wave. These options are # Optional. The orchestration options for this wave.
+ # required only if the resource being rolled out follows the Orchestrated
+ # pattern.
+ "delays": [ # Optional. Delays, if any, to be added between batches of projects. We allow
+ # multiple Delays to be specified, letting users set separate delays
+ # between batches of projects corresponding to different locations and
+ # batches of projects corresponding to the same location.
+ { # Options to control the delay, if any, between batches of projects.
+ "delimiter": "A String", # Optional. Controls whether the delay should only be added between batches of
+ # projects corresponding to different locations, or also between
+ # batches of projects corresponding to the same location.
+ #
+ # Must be set to DELIMITER_UNSPECIFIED if no delay is to be added.
+ "duration": "A String", # Optional. The duration of the delay, if any, to be added between batches of
+ # projects. A zero duration corresponds to no delay.
+ "type": "A String", # Optional. Controls whether the specified duration is to be added at the end of
+ # each batch, or if the total processing time for each batch will be
+ # padded if needed to meet the specified duration.
+ #
+ # Must be set to TYPE_UNSPECIFIED if no delay is to be added.
+ },
+ ],
+ "maxConcurrentLocations": "A String", # Optional. Maximum number of locations to be orchestrated in parallel.
+ "maxConcurrentResourcesPerLocation": "A String", # Optional. Maximum number of resources to be orchestrated per location in
+ # parallel.
+ },
+ "selectors": [ # Required. The selectors for this wave. There is a logical AND between each selector
+ # defined in a wave, so a resource must satisfy the criteria of *all* the
+ # specified selectors to be in scope for the wave.
+ { # A selector which specifies what resource(s) are included in a given wave.
+ "locationSelector": { # Roll out to resources by location. # Optional. Roll out to resources by Cloud locations.
+ "includedLocations": [ # Optional. Example: "us-central1-a"
+ "A String",
+ ],
+ },
+ "resourceHierarchySelector": { # Roll out to resources by Cloud Resource Manager resource hierarchy # Optional. Roll out to resources by Cloud Resource Manager resource hierarchy.
+ # nodes such as projects, folders, orgs.
+ "includedFolders": [ # Optional. Format: "folders/{folder_id}"
+ "A String",
+ ],
+ "includedOrganizations": [ # Optional. Format: "organizations/{organization_id}"
+ "A String",
+ ],
+ "includedProjects": [ # Optional. Format: "projects/{project_id}"
+ "A String",
+ ],
+ },
+ },
+ ],
+ "validation": { # The validation to be performed before progressing to the next wave. # Required. The validation to be performed at the end of this wave.
+ "timeBasedValidationMetadata": { # Metadata required if type = "time". # Optional. Metadata required if type = "time".
+ "waitDuration": "A String", # Optional. The duration that the system waits in between waves. This wait starts
+ # after all changes in the wave are rolled out.
+ },
+ "type": "A String", # Required. The type of the validation. If a type of validation is associated with
+ # a metadata object, the appropriate metadata field mapping to the
+ # validation type must be provided in the validation message. Possible
+ # values are in quotes below alongside an explanation:
+ # "manual": The system waits for an end-user approval API before
+ # progressing to the next wave.
+ # "time": The system waits for a user specified duration before
+ # progressing to the next wave. TimeBasedValidation must be provided.
+ },
+ },
+ ],
+}
+
+ requestId: string, An optional request ID to identify requests. Specify a unique request ID so
+that if you must retry your request, the server will know to ignore the
+request if it has already been completed.
+
+For example, consider a situation where you make an initial request and
+the request times out. If you make the request again with the same
+request ID, the server can check if original operation with the same
+request ID was received, and if so, will ignore the second request. This
+prevents clients from accidentally creating duplicate commitments.
+
+The request ID must be
+a valid UUID with the exception that zero UUID is not supported
+(00000000-0000-0000-0000-000000000000).
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Represents an Operation resource.
+ #
+ # Google Compute Engine has three Operation resources:
+ #
+ # * [Global](/compute/docs/reference/rest/v1/globalOperations)
+ # * [Regional](/compute/docs/reference/rest/v1/regionOperations)
+ # * [Zonal](/compute/docs/reference/rest/v1/zoneOperations)
+ #
+ # You can use an operation resource to manage asynchronous API requests.
+ # For more information, readHandling
+ # API responses.
+ #
+ # Operations can be global, regional or zonal.
+ #
+ # - For global operations, use the `globalOperations`
+ # resource.
+ # - For regional operations, use the
+ # `regionOperations` resource.
+ # - For zonal operations, use
+ # the `zoneOperations` resource.
+ #
+ #
+ #
+ # For more information, read
+ # Global, Regional, and Zonal Resources.
+ #
+ # Note that completed Operation resources have a limited
+ # retention period.
+ "clientOperationId": "A String", # [Output Only] The value of `requestId` if you provided it in the request.
+ # Not present otherwise.
+ "creationTimestamp": "A String", # [Deprecated] This field is deprecated.
+ "description": "A String", # [Output Only] A textual description of the operation, which is
+ # set when the operation is created.
+ "details": { # [Output Only] Extended details about the operation's execution.
+ "data": { # Machine readable data from the message.
+ "a_key": "",
+ },
+ "message": "A String", # Human or AI readable details on execution of the operation.
+ },
+ "endTime": "A String", # [Output Only] The time that this operation was completed. This value is inRFC3339
+ # text format.
+ "error": { # [Output Only] If errors are generated during processing of the operation,
+ # this field will be populated.
+ "errors": [ # [Output Only] The array of errors encountered while processing this
+ # operation.
+ { # Represents a single error encountered during the processing of an
+ # operation.
+ "code": "A String", # [Output Only] The error type identifier for this error.
+ "errorDetails": [ # [Output Only] An optional list of messages that contain the error
+ # details. There is a set of defined message types to use for providing
+ # details.The syntax depends on the error code. For example,
+ # QuotaExceededInfo will have details when the error code is
+ # QUOTA_EXCEEDED.
+ { # Container for structured error details providing additional context
+ # specific to the encountered error code.
+ "errorInfo": { # Describes the cause of the error with structured details. # Error information containing structured domain, reason, and metadata.
+ #
+ # Example of an error when contacting the "pubsub.googleapis.com" API when it
+ # is not enabled:
+ #
+ # { "reason": "API_DISABLED"
+ # "domain": "googleapis.com"
+ # "metadata": {
+ # "resource": "projects/123",
+ # "service": "pubsub.googleapis.com"
+ # }
+ # }
+ #
+ # This response indicates that the pubsub.googleapis.com API is not enabled.
+ #
+ # Example of an error that is returned when attempting to create a Spanner
+ # instance in a region that is out of stock:
+ #
+ # { "reason": "STOCKOUT"
+ # "domain": "spanner.googleapis.com",
+ # "metadata": {
+ # "availableRegions": "us-central1,us-east2"
+ # }
+ # }
+ "domain": "A String", # The logical grouping to which the "reason" belongs. The error domain
+ # is typically the registered service name of the tool or product that
+ # generates the error. Example: "pubsub.googleapis.com". If the error is
+ # generated by some common infrastructure, the error domain must be a
+ # globally unique value that identifies the infrastructure. For Google API
+ # infrastructure, the error domain is "googleapis.com".
+ "metadatas": { # Additional structured details about this error.
+ #
+ # Keys must match a regular expression of `a-z+` but should
+ # ideally be lowerCamelCase. Also, they must be limited to 64 characters in
+ # length. When identifying the current value of an exceeded limit, the units
+ # should be contained in the key, not the value. For example, rather than
+ # `{"instanceLimit": "100/request"}`, should be returned as,
+ # `{"instanceLimitPerRequest": "100"}`, if the client exceeds the number of
+ # instances that can be created in a single (batch) request.
+ "a_key": "A String",
+ },
+ "reason": "A String", # The reason of the error. This is a constant value that identifies the
+ # proximate cause of the error. Error reasons are unique within a particular
+ # domain of errors. This should be at most 63 characters and match a
+ # regular expression of `A-Z+[A-Z0-9]`, which represents
+ # UPPER_SNAKE_CASE.
+ },
+ "help": { # Provides links to documentation or for performing an out of band action. # Links and information to help the user resolve the error.
+ #
+ # For example, if a quota check failed with an error indicating the calling
+ # project hasn't enabled the accessed service, this can contain a URL pointing
+ # directly to the right place in the developer console to flip the bit.
+ "links": [ # URL(s) pointing to additional information on handling the current error.
+ { # Describes a URL link.
+ "description": "A String", # Describes what the link offers.
+ "url": "A String", # The URL of the link.
+ },
+ ],
+ },
+ "localizedMessage": { # Provides a localized error message that is safe to return to the user # A localized human-readable error message intended for end users.
+ # which can be attached to an RPC error.
+ "locale": "A String", # The locale used following the specification defined at
+ # https://www.rfc-editor.org/rfc/bcp/bcp47.txt.
+ # Examples are: "en-US", "fr-CH", "es-MX"
+ "message": "A String", # The localized error message in the above locale.
+ },
+ "quotaInfo": { # Additional details for quota exceeded error for resource quota. # Details about quota limits and metrics when a quota is exceeded.
+ "dimensions": { # The map holding related quota dimensions.
+ "a_key": "A String",
+ },
+ "futureLimit": 3.14, # Future quota limit being rolled out. The limit's unit depends on the quota
+ # type or metric.
+ "limit": 3.14, # Current effective quota limit. The limit's unit depends on the quota type
+ # or metric.
+ "limitName": "A String", # The name of the quota limit.
+ "metricName": "A String", # The Compute Engine quota metric name.
+ "rolloutStatus": "A String", # Rollout status of the future quota limit.
+ },
+ },
+ ],
+ "location": "A String", # [Output Only] Indicates the field in the request that caused the error.
+ # This property is optional.
+ "message": "A String", # [Output Only] An optional, human-readable error message.
+ },
+ ],
+ },
+ "getHealthOperationMetadata": { # Metadata for GetHealth operations. # Output only. Metadata for GetHealth operations.
+ "healthInfo": { # Health information. # Output only. The health information.
+ "availabilitySloStatus": "A String", # Output only. The availability SLO status.
+ "healthStatus": "A String", # Output only. The health status.
+ "repairCategory": "A String", # Output only. The repair category.
+ "unhealthyReason": "A String", # Output only. The reason for unhealthy status.
+ "updateTime": "A String", # Output only. The time when health info was updated.
+ },
+ },
+ "getVersionOperationMetadata": {
+ "inlineSbomInfo": {
+ "currentComponentVersions": { # A mapping of components to their currently-applied versions or other
+ # appropriate identifiers.
+ "a_key": "A String",
+ },
+ "targetComponentVersions": { # A mapping of components to their target versions or other appropriate
+ # identifiers.
+ "a_key": "A String",
+ },
+ },
+ },
+ "httpErrorMessage": "A String", # [Output Only] If the operation fails, this field contains the HTTP error
+ # message that was returned, such as `NOT FOUND`.
+ "httpErrorStatusCode": 42, # [Output Only] If the operation fails, this field contains the HTTP error
+ # status code that was returned. For example, a `404` means the
+ # resource was not found.
+ "id": "A String", # [Output Only] The unique identifier for the operation. This identifier is
+ # defined by the server.
+ "insertTime": "A String", # [Output Only] The time that this operation was requested.
+ # This value is inRFC3339
+ # text format.
+ "instancesBulkInsertOperationMetadata": {
+ "perLocationStatus": { # Status information per location (location name is key).
+ # Example key: zones/us-central1-a
+ "a_key": {
+ "createdVmCount": 42, # [Output Only] Count of VMs successfully created so far.
+ "deletedVmCount": 42, # [Output Only] Count of VMs that got deleted during rollback.
+ "failedToCreateVmCount": 42, # [Output Only] Count of VMs that started creating but encountered an
+ # error.
+ "status": "A String", # [Output Only] Creation status of BulkInsert operation - information
+ # if the flow is rolling forward or rolling back.
+ "targetVmCount": 42, # [Output Only] Count of VMs originally planned to be created.
+ },
+ },
+ },
+ "instancesTroubleshootOperationMetadata": { # [Output Only] Operation metadata for instances.troubleshoot. # Output only. [Output Only] Operation metadata for instances.troubleshoot.
+ "troubleshootOutput": "A String", # Output only. [Output Only] Serialized output of the troubleshooting diagnostic run.
+ },
+ "kind": "compute#operation", # Output only. [Output Only] Type of the resource. Always `compute#operation` for
+ # Operation resources.
+ "name": "A String", # [Output Only] Name of the operation.
+ "operationGroupId": "A String", # Output only. [Output Only] An ID that represents a group of operations, such as when a
+ # group of operations results from a `bulkInsert` API request.
+ "operationType": "A String", # [Output Only] The type of operation, such as `insert`,
+ # `update`, or `delete`, and so on.
+ "progress": 42, # [Output Only] An optional progress indicator that ranges from 0 to 100.
+ # There is no requirement that this be linear or support any granularity of
+ # operations. This should not be used to guess when the operation will be
+ # complete. This number should monotonically increase as the operation
+ # progresses.
+ "region": "A String", # [Output Only] The URL of the region where the operation resides. Only
+ # applicable when performing regional operations.
+ "selfLink": "A String", # [Output Only] Server-defined URL for the resource.
+ "setCommonInstanceMetadataOperationMetadata": { # Output only. [Output Only] If the operation is for projects.setCommonInstanceMetadata,
+ # this field will contain information on all underlying zonal actions and
+ # their state.
+ "clientOperationId": "A String", # [Output Only] The client operation id.
+ "perLocationOperations": { # [Output Only] Status information per location (location name is key).
+ # Example key: zones/us-central1-a
+ "a_key": {
+ "error": { # The `Status` type defines a logical error model that is suitable for # [Output Only] If state is `ABANDONED` or `FAILED`, this field is
+ # populated.
+ # different programming environments, including REST APIs and RPC APIs. It is
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+ # three pieces of data: error code, error message, and error details.
+ #
+ # You can find out more about this error model and how to work with it in the
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
+ "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+ "details": [ # A list of messages that carry the error details. There is a common set of
+ # message types for APIs to use.
+ {
+ "a_key": "", # Properties of the object. Contains field @type with type URL.
+ },
+ ],
+ "message": "A String", # A developer-facing error message, which should be in English. Any
+ # user-facing error message should be localized and sent in the
+ # google.rpc.Status.details field, or localized by the client.
+ },
+ "state": "A String", # [Output Only] Status of the action, which can be one of the following:
+ # `PROPAGATING`, `PROPAGATED`, `ABANDONED`, `FAILED`, or `DONE`.
+ },
+ },
+ },
+ "startTime": "A String", # [Output Only] The time that this operation was started by the server.
+ # This value is inRFC3339
+ # text format.
+ "status": "A String", # [Output Only] The status of the operation, which can be one of the
+ # following:
+ # `PENDING`, `RUNNING`, or `DONE`.
+ "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the
+ # operation.
+ "targetId": "A String", # [Output Only] The unique target ID, which identifies a specific incarnation
+ # of the target resource.
+ "targetLink": "A String", # [Output Only] The URL of the resource that the operation modifies. For
+ # operations related to creating a snapshot, this points to the disk
+ # that the snapshot was created from.
+ "user": "A String", # [Output Only] User who requested the operation, for example:
+ # `user@example.com` or
+ # `alice_smith_identifier (global/workforcePools/example-com-us-employees)`.
+ "warnings": [ # [Output Only] If warning messages are generated during processing of the
+ # operation, this field will be populated.
+ {
+ "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute
+ # Engine returns NO_RESULTS_ON_PAGE if there
+ # are no results in the response.
+ "data": [ # [Output Only] Metadata about this warning in key:
+ # value format. For example:
+ #
+ # "data": [
+ # {
+ # "key": "scope",
+ # "value": "zones/us-east1-d"
+ # }]
+ {
+ "key": "A String", # [Output Only] A key that provides more detail on the warning being
+ # returned. For example, for warnings where there are no results in a list
+ # request for a particular zone, this key might be scope and
+ # the key value might be the zone name. Other examples might be a key
+ # indicating a deprecated resource and a suggested replacement, or a
+ # warning about invalid network settings (for example, if an instance
+ # attempts to perform IP forwarding but is not enabled for IP forwarding).
+ "value": "A String", # [Output Only] A warning data value corresponding to the key.
+ },
+ ],
+ "message": "A String", # [Output Only] A human-readable description of the warning code.
+ },
+ ],
+ "zone": "A String", # [Output Only] The URL of the zone where the operation resides. Only
+ # applicable when performing per-zone operations.
+}
+
+
+
+ list(folder, filter=None, maxResults=None, orderBy=None, pageToken=None, x__xgafv=None)
+ Lists FolderRolloutPlans in a given folder and location.
+
+Args:
+ folder: string, Folder ID for this request. (required)
+ filter: string, A filter expression that filters resources listed in the response. Most
+Compute resources support two types of filter expressions:
+expressions that support regular expressions and expressions that follow
+API improvement proposal AIP-160.
+These two types of filter expressions cannot be mixed in one request.
+
+If you want to use AIP-160, your expression must specify the field name, an
+operator, and the value that you want to use for filtering. The value
+must be a string, a number, or a boolean. The operator
+must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.
+
+For example, if you are filtering Compute Engine instances, you can
+exclude instances named `example-instance` by specifying
+`name != example-instance`.
+
+The `:*` comparison can be used to test whether a key has been defined.
+For example, to find all objects with `owner` label use:
+```
+labels.owner:*
+```
+
+You can also filter nested fields. For example, you could specify
+`scheduling.automaticRestart = false` to include instances only
+if they are not scheduled for automatic restarts. You can use filtering
+on nested fields to filter based onresource labels.
+
+To filter on multiple expressions, provide each separate expression within
+parentheses. For example:
+```
+(scheduling.automaticRestart = true)
+(cpuPlatform = "Intel Skylake")
+```
+By default, each expression is an `AND` expression. However, you
+can include `AND` and `OR` expressions explicitly.
+For example:
+```
+(cpuPlatform = "Intel Skylake") OR
+(cpuPlatform = "Intel Broadwell") AND
+(scheduling.automaticRestart = true)
+```
+
+If you want to use a regular expression, use the `eq` (equal) or `ne`
+(not equal) operator against a single un-parenthesized expression with or
+without quotes or against multiple parenthesized expressions. Examples:
+
+`fieldname eq unquoted literal`
+`fieldname eq 'single quoted literal'`
+`fieldname eq "double quoted literal"`
+`(fieldname1 eq literal) (fieldname2 ne "literal")`
+
+The literal value is interpreted as a regular expression using GoogleRE2 library syntax.
+The literal value must match the entire field.
+
+For example, to filter for instances that do not end with name "instance",
+you would use `name ne .*instance`.
+
+You cannot combine constraints on multiple fields using regular
+expressions.
+ maxResults: integer, The maximum number of results per page that should be returned.
+If the number of available results is larger than `maxResults`,
+Compute Engine returns a `nextPageToken` that can be used to get
+the next page of results in subsequent list requests. Acceptable values are
+`0` to `500`, inclusive. (Default: `500`)
+ orderBy: string, Sorts list results by a certain order. By default, results
+are returned in alphanumerical order based on the resource name.
+
+You can also sort results in descending order based on the creation
+timestamp using `orderBy="creationTimestamp desc"`. This sorts
+results based on the `creationTimestamp` field in
+reverse chronological order (newest result first). Use this to sort
+resources like operations so that the newest operation is returned first.
+
+Currently, only sorting by `name` or
+`creationTimestamp desc` is supported.
+ pageToken: string, Specifies a page token to use. Set `pageToken` to the
+`nextPageToken` returned by a previous list request to get
+the next page of results.
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Contains a list of RolloutPlan resources.
+ "etag": "A String",
+ "id": "A String", # [Output Only] Unique identifier for the resource; defined by the server.
+ "items": [ # A list of RolloutPlan resources.
+ { # RolloutPlan resource.
+ #
+ # A RolloutPlan is the customer-defined strategy to divide a large-scale change
+ # into smaller increments, referred to as "waves". Each wave targets a specific
+ # portion of the overall affected area and defines criteria that must be met
+ # before progressing to the subsequent wave.
+ "creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339
+ # text format.
+ "description": "A String", # An optional description of this resource. Provide this property when you
+ # create the resource.
+ "id": "A String", # Output only. [Output Only] The unique identifier for the resource. This identifier is
+ # defined by the server.
+ "kind": "compute#rolloutPlan", # Output only. [Output Only] Type of the resource. Always compute#rolloutPlan
+ # for rolloutPlans.
+ "locationScope": "A String", # The location scope of the rollout plan. If not specified, the location
+ # scope is considered as ZONAL.
+ "name": "A String", # Name of the resource. Provided by the client when the resource is created.
+ # The name must be 1-63 characters long, and comply withRFC1035.
+ # Specifically, the name must be 1-63 characters long and match the regular
+ # expression `[a-z]([-a-z0-9]*[a-z0-9])?`
+ # which means the first character must be a lowercase letter, and all
+ # following characters must be a dash, lowercase letter, or digit, except
+ # the last character, which cannot be a dash.
+ "selfLink": "A String", # Output only. [Output Only] Server-defined fully-qualified URL for this resource.
+ "selfLinkWithId": "A String", # Output only. [Output Only] Server-defined URL for this resource's resource id.
+ "waves": [ # Required. The waves included in this rollout plan.
+ { # A single wave in a rollout plan.
+ "displayName": "A String", # Optional. The display name of this wave of the rollout plan.
+ "number": "A String", # Output only. The wave number.
+ "orchestrationOptions": { # Options to control the pace of orchestration of a wave. These options are # Optional. The orchestration options for this wave.
+ # required only if the resource being rolled out follows the Orchestrated
+ # pattern.
+ "delays": [ # Optional. Delays, if any, to be added between batches of projects. We allow
+ # multiple Delays to be specified, letting users set separate delays
+ # between batches of projects corresponding to different locations and
+ # batches of projects corresponding to the same location.
+ { # Options to control the delay, if any, between batches of projects.
+ "delimiter": "A String", # Optional. Controls whether the delay should only be added between batches of
+ # projects corresponding to different locations, or also between
+ # batches of projects corresponding to the same location.
+ #
+ # Must be set to DELIMITER_UNSPECIFIED if no delay is to be added.
+ "duration": "A String", # Optional. The duration of the delay, if any, to be added between batches of
+ # projects. A zero duration corresponds to no delay.
+ "type": "A String", # Optional. Controls whether the specified duration is to be added at the end of
+ # each batch, or if the total processing time for each batch will be
+ # padded if needed to meet the specified duration.
+ #
+ # Must be set to TYPE_UNSPECIFIED if no delay is to be added.
+ },
+ ],
+ "maxConcurrentLocations": "A String", # Optional. Maximum number of locations to be orchestrated in parallel.
+ "maxConcurrentResourcesPerLocation": "A String", # Optional. Maximum number of resources to be orchestrated per location in
+ # parallel.
+ },
+ "selectors": [ # Required. The selectors for this wave. There is a logical AND between each selector
+ # defined in a wave, so a resource must satisfy the criteria of *all* the
+ # specified selectors to be in scope for the wave.
+ { # A selector which specifies what resource(s) are included in a given wave.
+ "locationSelector": { # Roll out to resources by location. # Optional. Roll out to resources by Cloud locations.
+ "includedLocations": [ # Optional. Example: "us-central1-a"
+ "A String",
+ ],
+ },
+ "resourceHierarchySelector": { # Roll out to resources by Cloud Resource Manager resource hierarchy # Optional. Roll out to resources by Cloud Resource Manager resource hierarchy.
+ # nodes such as projects, folders, orgs.
+ "includedFolders": [ # Optional. Format: "folders/{folder_id}"
+ "A String",
+ ],
+ "includedOrganizations": [ # Optional. Format: "organizations/{organization_id}"
+ "A String",
+ ],
+ "includedProjects": [ # Optional. Format: "projects/{project_id}"
+ "A String",
+ ],
+ },
+ },
+ ],
+ "validation": { # The validation to be performed before progressing to the next wave. # Required. The validation to be performed at the end of this wave.
+ "timeBasedValidationMetadata": { # Metadata required if type = "time". # Optional. Metadata required if type = "time".
+ "waitDuration": "A String", # Optional. The duration that the system waits in between waves. This wait starts
+ # after all changes in the wave are rolled out.
+ },
+ "type": "A String", # Required. The type of the validation. If a type of validation is associated with
+ # a metadata object, the appropriate metadata field mapping to the
+ # validation type must be provided in the validation message. Possible
+ # values are in quotes below alongside an explanation:
+ # "manual": The system waits for an end-user approval API before
+ # progressing to the next wave.
+ # "time": The system waits for a user specified duration before
+ # progressing to the next wave. TimeBasedValidation must be provided.
+ },
+ },
+ ],
+ },
+ ],
+ "nextPageToken": "A String", # [Output Only] This token allows you to get the next page of results for
+ # list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for
+ # the query parameter pageToken in the next list request.
+ # Subsequent list requests will have their own nextPageToken to
+ # continue paging through the results.
+ "selfLink": "A String", # Output only. [Output Only] Server-defined URL for this resource.
+ "unreachables": [ # Output only. [Output Only] Unreachable resources.
+ # end_interface: MixerListResponseWithEtagBuilder
+ "A String",
+ ],
+ "warning": { # [Output Only] Informational warning message.
+ "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute
+ # Engine returns NO_RESULTS_ON_PAGE if there
+ # are no results in the response.
+ "data": [ # [Output Only] Metadata about this warning in key:
+ # value format. For example:
+ #
+ # "data": [
+ # {
+ # "key": "scope",
+ # "value": "zones/us-east1-d"
+ # }]
+ {
+ "key": "A String", # [Output Only] A key that provides more detail on the warning being
+ # returned. For example, for warnings where there are no results in a list
+ # request for a particular zone, this key might be scope and
+ # the key value might be the zone name. Other examples might be a key
+ # indicating a deprecated resource and a suggested replacement, or a
+ # warning about invalid network settings (for example, if an instance
+ # attempts to perform IP forwarding but is not enabled for IP forwarding).
+ "value": "A String", # [Output Only] A warning data value corresponding to the key.
+ },
+ ],
+ "message": "A String", # [Output Only] A human-readable description of the warning code.
+ },
+}
+
+
+
+ list_next(previous_request, previous_response)
+ Retrieves the next page of results.
+
+Args:
+ previous_request: The request for the previous page. (required)
+ previous_response: The response from the request for the previous page. (required)
+
+Returns:
+ A request object that you can call 'execute()' on to request the next
+ page. Returns None if there are no more items in the collection.
+
+
+
+
\ No newline at end of file
diff --git a/docs/dyn/compute_preview.folderRollouts.html b/docs/dyn/compute_preview.folderRollouts.html
new file mode 100644
index 0000000000..c77beae114
--- /dev/null
+++ b/docs/dyn/compute_preview.folderRollouts.html
@@ -0,0 +1,2016 @@
+
+
+
+Compute Engine API . folderRollouts
+Instance Methods
+
+ advance(folder, rollout, currentWaveNumber=None, requestId=None, x__xgafv=None)
+Advances a Rollout to the next wave, or completes it if no waves remain.
+
+ cancel(folder, rollout, requestId=None, rollback=None, x__xgafv=None)
+Cancels a Rollout.
+
+ close()
+Close httplib2 connections.
+
+ delete(folder, rollout, requestId=None, x__xgafv=None)
+Deletes a Rollout.
+
+ get(folder, rollout, x__xgafv=None)
+Gets details of a single folder-scoped Rollout.
+
+ list(folder, filter=None, maxResults=None, orderBy=None, pageToken=None, x__xgafv=None)
+Lists Rollouts in a given folder and location.
+
+ list_next(previous_request, previous_response)
+Retrieves the next page of results.
+
+ pause(folder, rollout, etag=None, requestId=None, x__xgafv=None)
+Pauses a Rollout.
+
+ resume(folder, rollout, etag=None, requestId=None, x__xgafv=None)
+Resumes a Rollout.
+Method Details
+
+ advance(folder, rollout, currentWaveNumber=None, requestId=None, x__xgafv=None)
+ Advances a Rollout to the next wave, or completes it if no waves remain.
+
+Args:
+ folder: string, Required. Folder ID for this request. (required)
+ rollout: string, Required. Name of the Rollout resource to advance. (required)
+ currentWaveNumber: string, Required. Wave number of the current wave.
+ requestId: string, An optional request ID to identify requests. Specify a unique request ID so
+that if you must retry your request, the server will know to ignore the
+request if it has already been completed.
+
+For example, consider a situation where you make an initial request and
+the request times out. If you make the request again with the same
+request ID, the server can check if original operation with the same
+request ID was received, and if so, will ignore the second request. This
+prevents clients from accidentally creating duplicate commitments.
+
+The request ID must be
+a valid UUID with the exception that zero UUID is not supported
+(00000000-0000-0000-0000-000000000000).
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Represents an Operation resource.
+ #
+ # Google Compute Engine has three Operation resources:
+ #
+ # * [Global](/compute/docs/reference/rest/v1/globalOperations)
+ # * [Regional](/compute/docs/reference/rest/v1/regionOperations)
+ # * [Zonal](/compute/docs/reference/rest/v1/zoneOperations)
+ #
+ # You can use an operation resource to manage asynchronous API requests.
+ # For more information, readHandling
+ # API responses.
+ #
+ # Operations can be global, regional or zonal.
+ #
+ # - For global operations, use the `globalOperations`
+ # resource.
+ # - For regional operations, use the
+ # `regionOperations` resource.
+ # - For zonal operations, use
+ # the `zoneOperations` resource.
+ #
+ #
+ #
+ # For more information, read
+ # Global, Regional, and Zonal Resources.
+ #
+ # Note that completed Operation resources have a limited
+ # retention period.
+ "clientOperationId": "A String", # [Output Only] The value of `requestId` if you provided it in the request.
+ # Not present otherwise.
+ "creationTimestamp": "A String", # [Deprecated] This field is deprecated.
+ "description": "A String", # [Output Only] A textual description of the operation, which is
+ # set when the operation is created.
+ "details": { # [Output Only] Extended details about the operation's execution.
+ "data": { # Machine readable data from the message.
+ "a_key": "",
+ },
+ "message": "A String", # Human or AI readable details on execution of the operation.
+ },
+ "endTime": "A String", # [Output Only] The time that this operation was completed. This value is inRFC3339
+ # text format.
+ "error": { # [Output Only] If errors are generated during processing of the operation,
+ # this field will be populated.
+ "errors": [ # [Output Only] The array of errors encountered while processing this
+ # operation.
+ { # Represents a single error encountered during the processing of an
+ # operation.
+ "code": "A String", # [Output Only] The error type identifier for this error.
+ "errorDetails": [ # [Output Only] An optional list of messages that contain the error
+ # details. There is a set of defined message types to use for providing
+ # details.The syntax depends on the error code. For example,
+ # QuotaExceededInfo will have details when the error code is
+ # QUOTA_EXCEEDED.
+ { # Container for structured error details providing additional context
+ # specific to the encountered error code.
+ "errorInfo": { # Describes the cause of the error with structured details. # Error information containing structured domain, reason, and metadata.
+ #
+ # Example of an error when contacting the "pubsub.googleapis.com" API when it
+ # is not enabled:
+ #
+ # { "reason": "API_DISABLED"
+ # "domain": "googleapis.com"
+ # "metadata": {
+ # "resource": "projects/123",
+ # "service": "pubsub.googleapis.com"
+ # }
+ # }
+ #
+ # This response indicates that the pubsub.googleapis.com API is not enabled.
+ #
+ # Example of an error that is returned when attempting to create a Spanner
+ # instance in a region that is out of stock:
+ #
+ # { "reason": "STOCKOUT"
+ # "domain": "spanner.googleapis.com",
+ # "metadata": {
+ # "availableRegions": "us-central1,us-east2"
+ # }
+ # }
+ "domain": "A String", # The logical grouping to which the "reason" belongs. The error domain
+ # is typically the registered service name of the tool or product that
+ # generates the error. Example: "pubsub.googleapis.com". If the error is
+ # generated by some common infrastructure, the error domain must be a
+ # globally unique value that identifies the infrastructure. For Google API
+ # infrastructure, the error domain is "googleapis.com".
+ "metadatas": { # Additional structured details about this error.
+ #
+ # Keys must match a regular expression of `a-z+` but should
+ # ideally be lowerCamelCase. Also, they must be limited to 64 characters in
+ # length. When identifying the current value of an exceeded limit, the units
+ # should be contained in the key, not the value. For example, rather than
+ # `{"instanceLimit": "100/request"}`, should be returned as,
+ # `{"instanceLimitPerRequest": "100"}`, if the client exceeds the number of
+ # instances that can be created in a single (batch) request.
+ "a_key": "A String",
+ },
+ "reason": "A String", # The reason of the error. This is a constant value that identifies the
+ # proximate cause of the error. Error reasons are unique within a particular
+ # domain of errors. This should be at most 63 characters and match a
+ # regular expression of `A-Z+[A-Z0-9]`, which represents
+ # UPPER_SNAKE_CASE.
+ },
+ "help": { # Provides links to documentation or for performing an out of band action. # Links and information to help the user resolve the error.
+ #
+ # For example, if a quota check failed with an error indicating the calling
+ # project hasn't enabled the accessed service, this can contain a URL pointing
+ # directly to the right place in the developer console to flip the bit.
+ "links": [ # URL(s) pointing to additional information on handling the current error.
+ { # Describes a URL link.
+ "description": "A String", # Describes what the link offers.
+ "url": "A String", # The URL of the link.
+ },
+ ],
+ },
+ "localizedMessage": { # Provides a localized error message that is safe to return to the user # A localized human-readable error message intended for end users.
+ # which can be attached to an RPC error.
+ "locale": "A String", # The locale used following the specification defined at
+ # https://www.rfc-editor.org/rfc/bcp/bcp47.txt.
+ # Examples are: "en-US", "fr-CH", "es-MX"
+ "message": "A String", # The localized error message in the above locale.
+ },
+ "quotaInfo": { # Additional details for quota exceeded error for resource quota. # Details about quota limits and metrics when a quota is exceeded.
+ "dimensions": { # The map holding related quota dimensions.
+ "a_key": "A String",
+ },
+ "futureLimit": 3.14, # Future quota limit being rolled out. The limit's unit depends on the quota
+ # type or metric.
+ "limit": 3.14, # Current effective quota limit. The limit's unit depends on the quota type
+ # or metric.
+ "limitName": "A String", # The name of the quota limit.
+ "metricName": "A String", # The Compute Engine quota metric name.
+ "rolloutStatus": "A String", # Rollout status of the future quota limit.
+ },
+ },
+ ],
+ "location": "A String", # [Output Only] Indicates the field in the request that caused the error.
+ # This property is optional.
+ "message": "A String", # [Output Only] An optional, human-readable error message.
+ },
+ ],
+ },
+ "getHealthOperationMetadata": { # Metadata for GetHealth operations. # Output only. Metadata for GetHealth operations.
+ "healthInfo": { # Health information. # Output only. The health information.
+ "availabilitySloStatus": "A String", # Output only. The availability SLO status.
+ "healthStatus": "A String", # Output only. The health status.
+ "repairCategory": "A String", # Output only. The repair category.
+ "unhealthyReason": "A String", # Output only. The reason for unhealthy status.
+ "updateTime": "A String", # Output only. The time when health info was updated.
+ },
+ },
+ "getVersionOperationMetadata": {
+ "inlineSbomInfo": {
+ "currentComponentVersions": { # A mapping of components to their currently-applied versions or other
+ # appropriate identifiers.
+ "a_key": "A String",
+ },
+ "targetComponentVersions": { # A mapping of components to their target versions or other appropriate
+ # identifiers.
+ "a_key": "A String",
+ },
+ },
+ },
+ "httpErrorMessage": "A String", # [Output Only] If the operation fails, this field contains the HTTP error
+ # message that was returned, such as `NOT FOUND`.
+ "httpErrorStatusCode": 42, # [Output Only] If the operation fails, this field contains the HTTP error
+ # status code that was returned. For example, a `404` means the
+ # resource was not found.
+ "id": "A String", # [Output Only] The unique identifier for the operation. This identifier is
+ # defined by the server.
+ "insertTime": "A String", # [Output Only] The time that this operation was requested.
+ # This value is inRFC3339
+ # text format.
+ "instancesBulkInsertOperationMetadata": {
+ "perLocationStatus": { # Status information per location (location name is key).
+ # Example key: zones/us-central1-a
+ "a_key": {
+ "createdVmCount": 42, # [Output Only] Count of VMs successfully created so far.
+ "deletedVmCount": 42, # [Output Only] Count of VMs that got deleted during rollback.
+ "failedToCreateVmCount": 42, # [Output Only] Count of VMs that started creating but encountered an
+ # error.
+ "status": "A String", # [Output Only] Creation status of BulkInsert operation - information
+ # if the flow is rolling forward or rolling back.
+ "targetVmCount": 42, # [Output Only] Count of VMs originally planned to be created.
+ },
+ },
+ },
+ "instancesTroubleshootOperationMetadata": { # [Output Only] Operation metadata for instances.troubleshoot. # Output only. [Output Only] Operation metadata for instances.troubleshoot.
+ "troubleshootOutput": "A String", # Output only. [Output Only] Serialized output of the troubleshooting diagnostic run.
+ },
+ "kind": "compute#operation", # Output only. [Output Only] Type of the resource. Always `compute#operation` for
+ # Operation resources.
+ "name": "A String", # [Output Only] Name of the operation.
+ "operationGroupId": "A String", # Output only. [Output Only] An ID that represents a group of operations, such as when a
+ # group of operations results from a `bulkInsert` API request.
+ "operationType": "A String", # [Output Only] The type of operation, such as `insert`,
+ # `update`, or `delete`, and so on.
+ "progress": 42, # [Output Only] An optional progress indicator that ranges from 0 to 100.
+ # There is no requirement that this be linear or support any granularity of
+ # operations. This should not be used to guess when the operation will be
+ # complete. This number should monotonically increase as the operation
+ # progresses.
+ "region": "A String", # [Output Only] The URL of the region where the operation resides. Only
+ # applicable when performing regional operations.
+ "selfLink": "A String", # [Output Only] Server-defined URL for the resource.
+ "setCommonInstanceMetadataOperationMetadata": { # Output only. [Output Only] If the operation is for projects.setCommonInstanceMetadata,
+ # this field will contain information on all underlying zonal actions and
+ # their state.
+ "clientOperationId": "A String", # [Output Only] The client operation id.
+ "perLocationOperations": { # [Output Only] Status information per location (location name is key).
+ # Example key: zones/us-central1-a
+ "a_key": {
+ "error": { # The `Status` type defines a logical error model that is suitable for # [Output Only] If state is `ABANDONED` or `FAILED`, this field is
+ # populated.
+ # different programming environments, including REST APIs and RPC APIs. It is
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+ # three pieces of data: error code, error message, and error details.
+ #
+ # You can find out more about this error model and how to work with it in the
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
+ "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+ "details": [ # A list of messages that carry the error details. There is a common set of
+ # message types for APIs to use.
+ {
+ "a_key": "", # Properties of the object. Contains field @type with type URL.
+ },
+ ],
+ "message": "A String", # A developer-facing error message, which should be in English. Any
+ # user-facing error message should be localized and sent in the
+ # google.rpc.Status.details field, or localized by the client.
+ },
+ "state": "A String", # [Output Only] Status of the action, which can be one of the following:
+ # `PROPAGATING`, `PROPAGATED`, `ABANDONED`, `FAILED`, or `DONE`.
+ },
+ },
+ },
+ "startTime": "A String", # [Output Only] The time that this operation was started by the server.
+ # This value is inRFC3339
+ # text format.
+ "status": "A String", # [Output Only] The status of the operation, which can be one of the
+ # following:
+ # `PENDING`, `RUNNING`, or `DONE`.
+ "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the
+ # operation.
+ "targetId": "A String", # [Output Only] The unique target ID, which identifies a specific incarnation
+ # of the target resource.
+ "targetLink": "A String", # [Output Only] The URL of the resource that the operation modifies. For
+ # operations related to creating a snapshot, this points to the disk
+ # that the snapshot was created from.
+ "user": "A String", # [Output Only] User who requested the operation, for example:
+ # `user@example.com` or
+ # `alice_smith_identifier (global/workforcePools/example-com-us-employees)`.
+ "warnings": [ # [Output Only] If warning messages are generated during processing of the
+ # operation, this field will be populated.
+ {
+ "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute
+ # Engine returns NO_RESULTS_ON_PAGE if there
+ # are no results in the response.
+ "data": [ # [Output Only] Metadata about this warning in key:
+ # value format. For example:
+ #
+ # "data": [
+ # {
+ # "key": "scope",
+ # "value": "zones/us-east1-d"
+ # }]
+ {
+ "key": "A String", # [Output Only] A key that provides more detail on the warning being
+ # returned. For example, for warnings where there are no results in a list
+ # request for a particular zone, this key might be scope and
+ # the key value might be the zone name. Other examples might be a key
+ # indicating a deprecated resource and a suggested replacement, or a
+ # warning about invalid network settings (for example, if an instance
+ # attempts to perform IP forwarding but is not enabled for IP forwarding).
+ "value": "A String", # [Output Only] A warning data value corresponding to the key.
+ },
+ ],
+ "message": "A String", # [Output Only] A human-readable description of the warning code.
+ },
+ ],
+ "zone": "A String", # [Output Only] The URL of the zone where the operation resides. Only
+ # applicable when performing per-zone operations.
+}
+
+
+
+ cancel(folder, rollout, requestId=None, rollback=None, x__xgafv=None)
+ Cancels a Rollout.
+
+Args:
+ folder: string, Required. Folder ID for this request. (required)
+ rollout: string, Name of the Rollout resource to cancel. (required)
+ requestId: string, An optional request ID to identify requests. Specify a unique request ID so
+that if you must retry your request, the server will know to ignore the
+request if it has already been completed.
+
+For example, consider a situation where you make an initial request and
+the request times out. If you make the request again with the same
+request ID, the server can check if original operation with the same
+request ID was received, and if so, will ignore the second request. This
+prevents clients from accidentally creating duplicate commitments.
+
+The request ID must be
+a valid UUID with the exception that zero UUID is not supported
+(00000000-0000-0000-0000-000000000000).
+ rollback: boolean, Optional. If true, then the ongoing rollout must be rolled back. Else, just cancel
+the rollout without taking any further actions. Note that products must
+support at least one of these options, however, it does not need to support
+both.
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Represents an Operation resource.
+ #
+ # Google Compute Engine has three Operation resources:
+ #
+ # * [Global](/compute/docs/reference/rest/v1/globalOperations)
+ # * [Regional](/compute/docs/reference/rest/v1/regionOperations)
+ # * [Zonal](/compute/docs/reference/rest/v1/zoneOperations)
+ #
+ # You can use an operation resource to manage asynchronous API requests.
+ # For more information, readHandling
+ # API responses.
+ #
+ # Operations can be global, regional or zonal.
+ #
+ # - For global operations, use the `globalOperations`
+ # resource.
+ # - For regional operations, use the
+ # `regionOperations` resource.
+ # - For zonal operations, use
+ # the `zoneOperations` resource.
+ #
+ #
+ #
+ # For more information, read
+ # Global, Regional, and Zonal Resources.
+ #
+ # Note that completed Operation resources have a limited
+ # retention period.
+ "clientOperationId": "A String", # [Output Only] The value of `requestId` if you provided it in the request.
+ # Not present otherwise.
+ "creationTimestamp": "A String", # [Deprecated] This field is deprecated.
+ "description": "A String", # [Output Only] A textual description of the operation, which is
+ # set when the operation is created.
+ "details": { # [Output Only] Extended details about the operation's execution.
+ "data": { # Machine readable data from the message.
+ "a_key": "",
+ },
+ "message": "A String", # Human or AI readable details on execution of the operation.
+ },
+ "endTime": "A String", # [Output Only] The time that this operation was completed. This value is inRFC3339
+ # text format.
+ "error": { # [Output Only] If errors are generated during processing of the operation,
+ # this field will be populated.
+ "errors": [ # [Output Only] The array of errors encountered while processing this
+ # operation.
+ { # Represents a single error encountered during the processing of an
+ # operation.
+ "code": "A String", # [Output Only] The error type identifier for this error.
+ "errorDetails": [ # [Output Only] An optional list of messages that contain the error
+ # details. There is a set of defined message types to use for providing
+ # details.The syntax depends on the error code. For example,
+ # QuotaExceededInfo will have details when the error code is
+ # QUOTA_EXCEEDED.
+ { # Container for structured error details providing additional context
+ # specific to the encountered error code.
+ "errorInfo": { # Describes the cause of the error with structured details. # Error information containing structured domain, reason, and metadata.
+ #
+ # Example of an error when contacting the "pubsub.googleapis.com" API when it
+ # is not enabled:
+ #
+ # { "reason": "API_DISABLED"
+ # "domain": "googleapis.com"
+ # "metadata": {
+ # "resource": "projects/123",
+ # "service": "pubsub.googleapis.com"
+ # }
+ # }
+ #
+ # This response indicates that the pubsub.googleapis.com API is not enabled.
+ #
+ # Example of an error that is returned when attempting to create a Spanner
+ # instance in a region that is out of stock:
+ #
+ # { "reason": "STOCKOUT"
+ # "domain": "spanner.googleapis.com",
+ # "metadata": {
+ # "availableRegions": "us-central1,us-east2"
+ # }
+ # }
+ "domain": "A String", # The logical grouping to which the "reason" belongs. The error domain
+ # is typically the registered service name of the tool or product that
+ # generates the error. Example: "pubsub.googleapis.com". If the error is
+ # generated by some common infrastructure, the error domain must be a
+ # globally unique value that identifies the infrastructure. For Google API
+ # infrastructure, the error domain is "googleapis.com".
+ "metadatas": { # Additional structured details about this error.
+ #
+ # Keys must match a regular expression of `a-z+` but should
+ # ideally be lowerCamelCase. Also, they must be limited to 64 characters in
+ # length. When identifying the current value of an exceeded limit, the units
+ # should be contained in the key, not the value. For example, rather than
+ # `{"instanceLimit": "100/request"}`, should be returned as,
+ # `{"instanceLimitPerRequest": "100"}`, if the client exceeds the number of
+ # instances that can be created in a single (batch) request.
+ "a_key": "A String",
+ },
+ "reason": "A String", # The reason of the error. This is a constant value that identifies the
+ # proximate cause of the error. Error reasons are unique within a particular
+ # domain of errors. This should be at most 63 characters and match a
+ # regular expression of `A-Z+[A-Z0-9]`, which represents
+ # UPPER_SNAKE_CASE.
+ },
+ "help": { # Provides links to documentation or for performing an out of band action. # Links and information to help the user resolve the error.
+ #
+ # For example, if a quota check failed with an error indicating the calling
+ # project hasn't enabled the accessed service, this can contain a URL pointing
+ # directly to the right place in the developer console to flip the bit.
+ "links": [ # URL(s) pointing to additional information on handling the current error.
+ { # Describes a URL link.
+ "description": "A String", # Describes what the link offers.
+ "url": "A String", # The URL of the link.
+ },
+ ],
+ },
+ "localizedMessage": { # Provides a localized error message that is safe to return to the user # A localized human-readable error message intended for end users.
+ # which can be attached to an RPC error.
+ "locale": "A String", # The locale used following the specification defined at
+ # https://www.rfc-editor.org/rfc/bcp/bcp47.txt.
+ # Examples are: "en-US", "fr-CH", "es-MX"
+ "message": "A String", # The localized error message in the above locale.
+ },
+ "quotaInfo": { # Additional details for quota exceeded error for resource quota. # Details about quota limits and metrics when a quota is exceeded.
+ "dimensions": { # The map holding related quota dimensions.
+ "a_key": "A String",
+ },
+ "futureLimit": 3.14, # Future quota limit being rolled out. The limit's unit depends on the quota
+ # type or metric.
+ "limit": 3.14, # Current effective quota limit. The limit's unit depends on the quota type
+ # or metric.
+ "limitName": "A String", # The name of the quota limit.
+ "metricName": "A String", # The Compute Engine quota metric name.
+ "rolloutStatus": "A String", # Rollout status of the future quota limit.
+ },
+ },
+ ],
+ "location": "A String", # [Output Only] Indicates the field in the request that caused the error.
+ # This property is optional.
+ "message": "A String", # [Output Only] An optional, human-readable error message.
+ },
+ ],
+ },
+ "getHealthOperationMetadata": { # Metadata for GetHealth operations. # Output only. Metadata for GetHealth operations.
+ "healthInfo": { # Health information. # Output only. The health information.
+ "availabilitySloStatus": "A String", # Output only. The availability SLO status.
+ "healthStatus": "A String", # Output only. The health status.
+ "repairCategory": "A String", # Output only. The repair category.
+ "unhealthyReason": "A String", # Output only. The reason for unhealthy status.
+ "updateTime": "A String", # Output only. The time when health info was updated.
+ },
+ },
+ "getVersionOperationMetadata": {
+ "inlineSbomInfo": {
+ "currentComponentVersions": { # A mapping of components to their currently-applied versions or other
+ # appropriate identifiers.
+ "a_key": "A String",
+ },
+ "targetComponentVersions": { # A mapping of components to their target versions or other appropriate
+ # identifiers.
+ "a_key": "A String",
+ },
+ },
+ },
+ "httpErrorMessage": "A String", # [Output Only] If the operation fails, this field contains the HTTP error
+ # message that was returned, such as `NOT FOUND`.
+ "httpErrorStatusCode": 42, # [Output Only] If the operation fails, this field contains the HTTP error
+ # status code that was returned. For example, a `404` means the
+ # resource was not found.
+ "id": "A String", # [Output Only] The unique identifier for the operation. This identifier is
+ # defined by the server.
+ "insertTime": "A String", # [Output Only] The time that this operation was requested.
+ # This value is inRFC3339
+ # text format.
+ "instancesBulkInsertOperationMetadata": {
+ "perLocationStatus": { # Status information per location (location name is key).
+ # Example key: zones/us-central1-a
+ "a_key": {
+ "createdVmCount": 42, # [Output Only] Count of VMs successfully created so far.
+ "deletedVmCount": 42, # [Output Only] Count of VMs that got deleted during rollback.
+ "failedToCreateVmCount": 42, # [Output Only] Count of VMs that started creating but encountered an
+ # error.
+ "status": "A String", # [Output Only] Creation status of BulkInsert operation - information
+ # if the flow is rolling forward or rolling back.
+ "targetVmCount": 42, # [Output Only] Count of VMs originally planned to be created.
+ },
+ },
+ },
+ "instancesTroubleshootOperationMetadata": { # [Output Only] Operation metadata for instances.troubleshoot. # Output only. [Output Only] Operation metadata for instances.troubleshoot.
+ "troubleshootOutput": "A String", # Output only. [Output Only] Serialized output of the troubleshooting diagnostic run.
+ },
+ "kind": "compute#operation", # Output only. [Output Only] Type of the resource. Always `compute#operation` for
+ # Operation resources.
+ "name": "A String", # [Output Only] Name of the operation.
+ "operationGroupId": "A String", # Output only. [Output Only] An ID that represents a group of operations, such as when a
+ # group of operations results from a `bulkInsert` API request.
+ "operationType": "A String", # [Output Only] The type of operation, such as `insert`,
+ # `update`, or `delete`, and so on.
+ "progress": 42, # [Output Only] An optional progress indicator that ranges from 0 to 100.
+ # There is no requirement that this be linear or support any granularity of
+ # operations. This should not be used to guess when the operation will be
+ # complete. This number should monotonically increase as the operation
+ # progresses.
+ "region": "A String", # [Output Only] The URL of the region where the operation resides. Only
+ # applicable when performing regional operations.
+ "selfLink": "A String", # [Output Only] Server-defined URL for the resource.
+ "setCommonInstanceMetadataOperationMetadata": { # Output only. [Output Only] If the operation is for projects.setCommonInstanceMetadata,
+ # this field will contain information on all underlying zonal actions and
+ # their state.
+ "clientOperationId": "A String", # [Output Only] The client operation id.
+ "perLocationOperations": { # [Output Only] Status information per location (location name is key).
+ # Example key: zones/us-central1-a
+ "a_key": {
+ "error": { # The `Status` type defines a logical error model that is suitable for # [Output Only] If state is `ABANDONED` or `FAILED`, this field is
+ # populated.
+ # different programming environments, including REST APIs and RPC APIs. It is
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+ # three pieces of data: error code, error message, and error details.
+ #
+ # You can find out more about this error model and how to work with it in the
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
+ "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+ "details": [ # A list of messages that carry the error details. There is a common set of
+ # message types for APIs to use.
+ {
+ "a_key": "", # Properties of the object. Contains field @type with type URL.
+ },
+ ],
+ "message": "A String", # A developer-facing error message, which should be in English. Any
+ # user-facing error message should be localized and sent in the
+ # google.rpc.Status.details field, or localized by the client.
+ },
+ "state": "A String", # [Output Only] Status of the action, which can be one of the following:
+ # `PROPAGATING`, `PROPAGATED`, `ABANDONED`, `FAILED`, or `DONE`.
+ },
+ },
+ },
+ "startTime": "A String", # [Output Only] The time that this operation was started by the server.
+ # This value is inRFC3339
+ # text format.
+ "status": "A String", # [Output Only] The status of the operation, which can be one of the
+ # following:
+ # `PENDING`, `RUNNING`, or `DONE`.
+ "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the
+ # operation.
+ "targetId": "A String", # [Output Only] The unique target ID, which identifies a specific incarnation
+ # of the target resource.
+ "targetLink": "A String", # [Output Only] The URL of the resource that the operation modifies. For
+ # operations related to creating a snapshot, this points to the disk
+ # that the snapshot was created from.
+ "user": "A String", # [Output Only] User who requested the operation, for example:
+ # `user@example.com` or
+ # `alice_smith_identifier (global/workforcePools/example-com-us-employees)`.
+ "warnings": [ # [Output Only] If warning messages are generated during processing of the
+ # operation, this field will be populated.
+ {
+ "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute
+ # Engine returns NO_RESULTS_ON_PAGE if there
+ # are no results in the response.
+ "data": [ # [Output Only] Metadata about this warning in key:
+ # value format. For example:
+ #
+ # "data": [
+ # {
+ # "key": "scope",
+ # "value": "zones/us-east1-d"
+ # }]
+ {
+ "key": "A String", # [Output Only] A key that provides more detail on the warning being
+ # returned. For example, for warnings where there are no results in a list
+ # request for a particular zone, this key might be scope and
+ # the key value might be the zone name. Other examples might be a key
+ # indicating a deprecated resource and a suggested replacement, or a
+ # warning about invalid network settings (for example, if an instance
+ # attempts to perform IP forwarding but is not enabled for IP forwarding).
+ "value": "A String", # [Output Only] A warning data value corresponding to the key.
+ },
+ ],
+ "message": "A String", # [Output Only] A human-readable description of the warning code.
+ },
+ ],
+ "zone": "A String", # [Output Only] The URL of the zone where the operation resides. Only
+ # applicable when performing per-zone operations.
+}
+
+
+
+ close()
+ Close httplib2 connections.
+
+
+
+ delete(folder, rollout, requestId=None, x__xgafv=None)
+ Deletes a Rollout.
+
+Args:
+ folder: string, Required. Folder ID for this request. (required)
+ rollout: string, Name of the Rollout resource to delete. (required)
+ requestId: string, An optional request ID to identify requests. Specify a unique request ID so
+that if you must retry your request, the server will know to ignore the
+request if it has already been completed.
+
+For example, consider a situation where you make an initial request and
+the request times out. If you make the request again with the same
+request ID, the server can check if original operation with the same
+request ID was received, and if so, will ignore the second request. This
+prevents clients from accidentally creating duplicate commitments.
+
+The request ID must be
+a valid UUID with the exception that zero UUID is not supported
+(00000000-0000-0000-0000-000000000000).
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Represents an Operation resource.
+ #
+ # Google Compute Engine has three Operation resources:
+ #
+ # * [Global](/compute/docs/reference/rest/v1/globalOperations)
+ # * [Regional](/compute/docs/reference/rest/v1/regionOperations)
+ # * [Zonal](/compute/docs/reference/rest/v1/zoneOperations)
+ #
+ # You can use an operation resource to manage asynchronous API requests.
+ # For more information, readHandling
+ # API responses.
+ #
+ # Operations can be global, regional or zonal.
+ #
+ # - For global operations, use the `globalOperations`
+ # resource.
+ # - For regional operations, use the
+ # `regionOperations` resource.
+ # - For zonal operations, use
+ # the `zoneOperations` resource.
+ #
+ #
+ #
+ # For more information, read
+ # Global, Regional, and Zonal Resources.
+ #
+ # Note that completed Operation resources have a limited
+ # retention period.
+ "clientOperationId": "A String", # [Output Only] The value of `requestId` if you provided it in the request.
+ # Not present otherwise.
+ "creationTimestamp": "A String", # [Deprecated] This field is deprecated.
+ "description": "A String", # [Output Only] A textual description of the operation, which is
+ # set when the operation is created.
+ "details": { # [Output Only] Extended details about the operation's execution.
+ "data": { # Machine readable data from the message.
+ "a_key": "",
+ },
+ "message": "A String", # Human or AI readable details on execution of the operation.
+ },
+ "endTime": "A String", # [Output Only] The time that this operation was completed. This value is inRFC3339
+ # text format.
+ "error": { # [Output Only] If errors are generated during processing of the operation,
+ # this field will be populated.
+ "errors": [ # [Output Only] The array of errors encountered while processing this
+ # operation.
+ { # Represents a single error encountered during the processing of an
+ # operation.
+ "code": "A String", # [Output Only] The error type identifier for this error.
+ "errorDetails": [ # [Output Only] An optional list of messages that contain the error
+ # details. There is a set of defined message types to use for providing
+ # details.The syntax depends on the error code. For example,
+ # QuotaExceededInfo will have details when the error code is
+ # QUOTA_EXCEEDED.
+ { # Container for structured error details providing additional context
+ # specific to the encountered error code.
+ "errorInfo": { # Describes the cause of the error with structured details. # Error information containing structured domain, reason, and metadata.
+ #
+ # Example of an error when contacting the "pubsub.googleapis.com" API when it
+ # is not enabled:
+ #
+ # { "reason": "API_DISABLED"
+ # "domain": "googleapis.com"
+ # "metadata": {
+ # "resource": "projects/123",
+ # "service": "pubsub.googleapis.com"
+ # }
+ # }
+ #
+ # This response indicates that the pubsub.googleapis.com API is not enabled.
+ #
+ # Example of an error that is returned when attempting to create a Spanner
+ # instance in a region that is out of stock:
+ #
+ # { "reason": "STOCKOUT"
+ # "domain": "spanner.googleapis.com",
+ # "metadata": {
+ # "availableRegions": "us-central1,us-east2"
+ # }
+ # }
+ "domain": "A String", # The logical grouping to which the "reason" belongs. The error domain
+ # is typically the registered service name of the tool or product that
+ # generates the error. Example: "pubsub.googleapis.com". If the error is
+ # generated by some common infrastructure, the error domain must be a
+ # globally unique value that identifies the infrastructure. For Google API
+ # infrastructure, the error domain is "googleapis.com".
+ "metadatas": { # Additional structured details about this error.
+ #
+ # Keys must match a regular expression of `a-z+` but should
+ # ideally be lowerCamelCase. Also, they must be limited to 64 characters in
+ # length. When identifying the current value of an exceeded limit, the units
+ # should be contained in the key, not the value. For example, rather than
+ # `{"instanceLimit": "100/request"}`, should be returned as,
+ # `{"instanceLimitPerRequest": "100"}`, if the client exceeds the number of
+ # instances that can be created in a single (batch) request.
+ "a_key": "A String",
+ },
+ "reason": "A String", # The reason of the error. This is a constant value that identifies the
+ # proximate cause of the error. Error reasons are unique within a particular
+ # domain of errors. This should be at most 63 characters and match a
+ # regular expression of `A-Z+[A-Z0-9]`, which represents
+ # UPPER_SNAKE_CASE.
+ },
+ "help": { # Provides links to documentation or for performing an out of band action. # Links and information to help the user resolve the error.
+ #
+ # For example, if a quota check failed with an error indicating the calling
+ # project hasn't enabled the accessed service, this can contain a URL pointing
+ # directly to the right place in the developer console to flip the bit.
+ "links": [ # URL(s) pointing to additional information on handling the current error.
+ { # Describes a URL link.
+ "description": "A String", # Describes what the link offers.
+ "url": "A String", # The URL of the link.
+ },
+ ],
+ },
+ "localizedMessage": { # Provides a localized error message that is safe to return to the user # A localized human-readable error message intended for end users.
+ # which can be attached to an RPC error.
+ "locale": "A String", # The locale used following the specification defined at
+ # https://www.rfc-editor.org/rfc/bcp/bcp47.txt.
+ # Examples are: "en-US", "fr-CH", "es-MX"
+ "message": "A String", # The localized error message in the above locale.
+ },
+ "quotaInfo": { # Additional details for quota exceeded error for resource quota. # Details about quota limits and metrics when a quota is exceeded.
+ "dimensions": { # The map holding related quota dimensions.
+ "a_key": "A String",
+ },
+ "futureLimit": 3.14, # Future quota limit being rolled out. The limit's unit depends on the quota
+ # type or metric.
+ "limit": 3.14, # Current effective quota limit. The limit's unit depends on the quota type
+ # or metric.
+ "limitName": "A String", # The name of the quota limit.
+ "metricName": "A String", # The Compute Engine quota metric name.
+ "rolloutStatus": "A String", # Rollout status of the future quota limit.
+ },
+ },
+ ],
+ "location": "A String", # [Output Only] Indicates the field in the request that caused the error.
+ # This property is optional.
+ "message": "A String", # [Output Only] An optional, human-readable error message.
+ },
+ ],
+ },
+ "getHealthOperationMetadata": { # Metadata for GetHealth operations. # Output only. Metadata for GetHealth operations.
+ "healthInfo": { # Health information. # Output only. The health information.
+ "availabilitySloStatus": "A String", # Output only. The availability SLO status.
+ "healthStatus": "A String", # Output only. The health status.
+ "repairCategory": "A String", # Output only. The repair category.
+ "unhealthyReason": "A String", # Output only. The reason for unhealthy status.
+ "updateTime": "A String", # Output only. The time when health info was updated.
+ },
+ },
+ "getVersionOperationMetadata": {
+ "inlineSbomInfo": {
+ "currentComponentVersions": { # A mapping of components to their currently-applied versions or other
+ # appropriate identifiers.
+ "a_key": "A String",
+ },
+ "targetComponentVersions": { # A mapping of components to their target versions or other appropriate
+ # identifiers.
+ "a_key": "A String",
+ },
+ },
+ },
+ "httpErrorMessage": "A String", # [Output Only] If the operation fails, this field contains the HTTP error
+ # message that was returned, such as `NOT FOUND`.
+ "httpErrorStatusCode": 42, # [Output Only] If the operation fails, this field contains the HTTP error
+ # status code that was returned. For example, a `404` means the
+ # resource was not found.
+ "id": "A String", # [Output Only] The unique identifier for the operation. This identifier is
+ # defined by the server.
+ "insertTime": "A String", # [Output Only] The time that this operation was requested.
+ # This value is inRFC3339
+ # text format.
+ "instancesBulkInsertOperationMetadata": {
+ "perLocationStatus": { # Status information per location (location name is key).
+ # Example key: zones/us-central1-a
+ "a_key": {
+ "createdVmCount": 42, # [Output Only] Count of VMs successfully created so far.
+ "deletedVmCount": 42, # [Output Only] Count of VMs that got deleted during rollback.
+ "failedToCreateVmCount": 42, # [Output Only] Count of VMs that started creating but encountered an
+ # error.
+ "status": "A String", # [Output Only] Creation status of BulkInsert operation - information
+ # if the flow is rolling forward or rolling back.
+ "targetVmCount": 42, # [Output Only] Count of VMs originally planned to be created.
+ },
+ },
+ },
+ "instancesTroubleshootOperationMetadata": { # [Output Only] Operation metadata for instances.troubleshoot. # Output only. [Output Only] Operation metadata for instances.troubleshoot.
+ "troubleshootOutput": "A String", # Output only. [Output Only] Serialized output of the troubleshooting diagnostic run.
+ },
+ "kind": "compute#operation", # Output only. [Output Only] Type of the resource. Always `compute#operation` for
+ # Operation resources.
+ "name": "A String", # [Output Only] Name of the operation.
+ "operationGroupId": "A String", # Output only. [Output Only] An ID that represents a group of operations, such as when a
+ # group of operations results from a `bulkInsert` API request.
+ "operationType": "A String", # [Output Only] The type of operation, such as `insert`,
+ # `update`, or `delete`, and so on.
+ "progress": 42, # [Output Only] An optional progress indicator that ranges from 0 to 100.
+ # There is no requirement that this be linear or support any granularity of
+ # operations. This should not be used to guess when the operation will be
+ # complete. This number should monotonically increase as the operation
+ # progresses.
+ "region": "A String", # [Output Only] The URL of the region where the operation resides. Only
+ # applicable when performing regional operations.
+ "selfLink": "A String", # [Output Only] Server-defined URL for the resource.
+ "setCommonInstanceMetadataOperationMetadata": { # Output only. [Output Only] If the operation is for projects.setCommonInstanceMetadata,
+ # this field will contain information on all underlying zonal actions and
+ # their state.
+ "clientOperationId": "A String", # [Output Only] The client operation id.
+ "perLocationOperations": { # [Output Only] Status information per location (location name is key).
+ # Example key: zones/us-central1-a
+ "a_key": {
+ "error": { # The `Status` type defines a logical error model that is suitable for # [Output Only] If state is `ABANDONED` or `FAILED`, this field is
+ # populated.
+ # different programming environments, including REST APIs and RPC APIs. It is
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+ # three pieces of data: error code, error message, and error details.
+ #
+ # You can find out more about this error model and how to work with it in the
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
+ "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+ "details": [ # A list of messages that carry the error details. There is a common set of
+ # message types for APIs to use.
+ {
+ "a_key": "", # Properties of the object. Contains field @type with type URL.
+ },
+ ],
+ "message": "A String", # A developer-facing error message, which should be in English. Any
+ # user-facing error message should be localized and sent in the
+ # google.rpc.Status.details field, or localized by the client.
+ },
+ "state": "A String", # [Output Only] Status of the action, which can be one of the following:
+ # `PROPAGATING`, `PROPAGATED`, `ABANDONED`, `FAILED`, or `DONE`.
+ },
+ },
+ },
+ "startTime": "A String", # [Output Only] The time that this operation was started by the server.
+ # This value is inRFC3339
+ # text format.
+ "status": "A String", # [Output Only] The status of the operation, which can be one of the
+ # following:
+ # `PENDING`, `RUNNING`, or `DONE`.
+ "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the
+ # operation.
+ "targetId": "A String", # [Output Only] The unique target ID, which identifies a specific incarnation
+ # of the target resource.
+ "targetLink": "A String", # [Output Only] The URL of the resource that the operation modifies. For
+ # operations related to creating a snapshot, this points to the disk
+ # that the snapshot was created from.
+ "user": "A String", # [Output Only] User who requested the operation, for example:
+ # `user@example.com` or
+ # `alice_smith_identifier (global/workforcePools/example-com-us-employees)`.
+ "warnings": [ # [Output Only] If warning messages are generated during processing of the
+ # operation, this field will be populated.
+ {
+ "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute
+ # Engine returns NO_RESULTS_ON_PAGE if there
+ # are no results in the response.
+ "data": [ # [Output Only] Metadata about this warning in key:
+ # value format. For example:
+ #
+ # "data": [
+ # {
+ # "key": "scope",
+ # "value": "zones/us-east1-d"
+ # }]
+ {
+ "key": "A String", # [Output Only] A key that provides more detail on the warning being
+ # returned. For example, for warnings where there are no results in a list
+ # request for a particular zone, this key might be scope and
+ # the key value might be the zone name. Other examples might be a key
+ # indicating a deprecated resource and a suggested replacement, or a
+ # warning about invalid network settings (for example, if an instance
+ # attempts to perform IP forwarding but is not enabled for IP forwarding).
+ "value": "A String", # [Output Only] A warning data value corresponding to the key.
+ },
+ ],
+ "message": "A String", # [Output Only] A human-readable description of the warning code.
+ },
+ ],
+ "zone": "A String", # [Output Only] The URL of the zone where the operation resides. Only
+ # applicable when performing per-zone operations.
+}
+
+
+
+ get(folder, rollout, x__xgafv=None)
+ Gets details of a single folder-scoped Rollout.
+
+Args:
+ folder: string, Folder ID for this request. (required)
+ rollout: string, Name of the persistent rollout to return. (required)
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Rollout resource.
+ #
+ # A Rollout is a specific instance of a RolloutPlan. It represents a single
+ # execution of a strategy to roll out a specific resource. It also provides
+ # APIs to interact with the rollout.
+ "cancellationTime": "A String", # Output only. The timestamp at which the Rollout was cancelled.
+ "completionTime": "A String", # Output only. The timestamp at which the Rollout was completed.
+ "creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339
+ # text format.
+ "currentWaveNumber": "A String", # Output only. The number of the currently running wave.
+ # Ex. 1
+ "description": "A String", # An optional description of this resource. Provide this property when you
+ # create the resource.
+ "etag": "A String", # Output only. etag of the Rollout
+ # Ex. abc1234
+ "id": "A String", # Output only. [Output Only] The unique identifier for the resource. This identifier is
+ # defined by the server.
+ "kind": "compute#rollout", # Output only. [Output Only] Type of the resource. Always compute#rollout
+ # for rollouts.
+ "name": "A String", # Name of the resource. Provided by the client when the resource is created.
+ # The name must be 1-63 characters long, and comply withRFC1035.
+ # Specifically, the name must be 1-63 characters long and match the regular
+ # expression `[a-z]([-a-z0-9]*[a-z0-9])?`
+ # which means the first character must be a lowercase letter, and all
+ # following characters must be a dash, lowercase letter, or digit, except
+ # the last character, which cannot be a dash.
+ "pauseTime": "A String", # Output only. The timestamp at which the Rollout was paused.
+ "resumeTime": "A String", # Output only. The timestamp at which the Rollout was resumed.
+ "rolloutEntity": { # Specifications of the resource to roll out. # Required. The resource being rolled out.
+ "orchestratedEntity": { # This message is used if the resource type follows the Orchestrated # Optional. Entity details for products using the Orchestrated Integration model.
+ # integration model with ProgressiveRollout.
+ "conflictBehavior": "A String", # Required. Specifies the behavior of the Rollout if an out of band update is
+ # detected in a project during a Rollout. It can be one of the following
+ # values:
+ # 1) overwrite : Overwrite the local value with the rollout value.
+ # 2) no_overwrite : Do not overwrite the local value with the rollout
+ # value.
+ "orchestrationAction": "A String", # Required. Orchestration action during the Rollout. It can be one of the following
+ # values:
+ # 1) "update": Resources will be updated by the rollout.
+ # 2) "delete": Resources will be deleted by the rollout.
+ "orchestrationSource": "A String", # Required. Fully qualified resource name of the resource which contains the source
+ # of truth of the configuration being rolled out across
+ # locations/projects. For example, in the case of a global Rollout which
+ # is applied across regions, this contains the name of the global
+ # resource created by the user which contains a payload for a resource
+ # that is orchestrated across regions. This follows the following format:
+ # //.googleapis.com/projects//locations/global//
+ # e.g.
+ # //osconfig.googleapis.com/projects/1/locations/global/policyOrchestrators/po1
+ },
+ },
+ "rolloutPlan": "A String", # Required. Rollout Plan used to model the Rollout.
+ # Ex. compute.googleapis.com/v1/projects/1234/rolloutPlans/rp1
+ "selfLink": "A String", # Output only. [Output Only] Server-defined fully-qualified URL for this resource.
+ "selfLinkWithId": "A String", # Output only. [Output Only] Server-defined URL for this resource's resource id.
+ "state": "A String", # Output only. The current state of the Rollout.
+ "waveDetails": [ # Output only. Details about each wave of the rollout.
+ { # Additional metadata about the status of each wave provided by the server.
+ "orchestratedWaveDetails": { # Details of the wave for products using the Orchestrated integration # Output only. Additional details of the wave for products using the Orchestrated
+ # Integration model.
+ # model.
+ "completedResourcesCount": "A String", # Output only. Resource completed so far.
+ "estimatedCompletionTime": "A String", # Output only. Estimated timestamp at which the wave will complete. Extrapolated from
+ # current progress.
+ "estimatedTotalResourcesCount": "A String", # Output only. Estimated total count of resources.
+ "failedLocations": [ # Output only. Locations that failed during orchestration, and ProgressiveRollout
+ # stopped retrying. There may be some successful resources rolled out in
+ # the wave as the location may have failed later in the Rollout.
+ "A String",
+ ],
+ "failedResourcesCount": "A String", # Output only. Resources failed.
+ "locationStatus": { # Output only. Status of each location in the wave. Map keys (locations) must be
+ # specified like "us-east1" or "asia-west1-a".
+ "a_key": { # Represents the status of a location in a wave.
+ "state": "A String", # Output only. Location state of the wave.
+ },
+ },
+ },
+ "waveDisplayName": "A String", # Output only. Wave name.
+ # Ex. wave1
+ "waveNumber": "A String", # Output only. System generated number for the wave.
+ },
+ ],
+}
+
+
+
+ list(folder, filter=None, maxResults=None, orderBy=None, pageToken=None, x__xgafv=None)
+ Lists Rollouts in a given folder and location.
+
+Args:
+ folder: string, Required. Folder ID for this request. (required)
+ filter: string, A filter expression that filters resources listed in the response. Most
+Compute resources support two types of filter expressions:
+expressions that support regular expressions and expressions that follow
+API improvement proposal AIP-160.
+These two types of filter expressions cannot be mixed in one request.
+
+If you want to use AIP-160, your expression must specify the field name, an
+operator, and the value that you want to use for filtering. The value
+must be a string, a number, or a boolean. The operator
+must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.
+
+For example, if you are filtering Compute Engine instances, you can
+exclude instances named `example-instance` by specifying
+`name != example-instance`.
+
+The `:*` comparison can be used to test whether a key has been defined.
+For example, to find all objects with `owner` label use:
+```
+labels.owner:*
+```
+
+You can also filter nested fields. For example, you could specify
+`scheduling.automaticRestart = false` to include instances only
+if they are not scheduled for automatic restarts. You can use filtering
+on nested fields to filter based onresource labels.
+
+To filter on multiple expressions, provide each separate expression within
+parentheses. For example:
+```
+(scheduling.automaticRestart = true)
+(cpuPlatform = "Intel Skylake")
+```
+By default, each expression is an `AND` expression. However, you
+can include `AND` and `OR` expressions explicitly.
+For example:
+```
+(cpuPlatform = "Intel Skylake") OR
+(cpuPlatform = "Intel Broadwell") AND
+(scheduling.automaticRestart = true)
+```
+
+If you want to use a regular expression, use the `eq` (equal) or `ne`
+(not equal) operator against a single un-parenthesized expression with or
+without quotes or against multiple parenthesized expressions. Examples:
+
+`fieldname eq unquoted literal`
+`fieldname eq 'single quoted literal'`
+`fieldname eq "double quoted literal"`
+`(fieldname1 eq literal) (fieldname2 ne "literal")`
+
+The literal value is interpreted as a regular expression using GoogleRE2 library syntax.
+The literal value must match the entire field.
+
+For example, to filter for instances that do not end with name "instance",
+you would use `name ne .*instance`.
+
+You cannot combine constraints on multiple fields using regular
+expressions.
+ maxResults: integer, The maximum number of results per page that should be returned.
+If the number of available results is larger than `maxResults`,
+Compute Engine returns a `nextPageToken` that can be used to get
+the next page of results in subsequent list requests. Acceptable values are
+`0` to `500`, inclusive. (Default: `500`)
+ orderBy: string, Sorts list results by a certain order. By default, results
+are returned in alphanumerical order based on the resource name.
+
+You can also sort results in descending order based on the creation
+timestamp using `orderBy="creationTimestamp desc"`. This sorts
+results based on the `creationTimestamp` field in
+reverse chronological order (newest result first). Use this to sort
+resources like operations so that the newest operation is returned first.
+
+Currently, only sorting by `name` or
+`creationTimestamp desc` is supported.
+ pageToken: string, Specifies a page token to use. Set `pageToken` to the
+`nextPageToken` returned by a previous list request to get
+the next page of results.
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ {
+ "etag": "A String",
+ "id": "A String", # [Output Only] Unique identifier for the resource; defined by the server.
+ "items": [ # A list of Rollout resources.
+ { # Rollout resource.
+ #
+ # A Rollout is a specific instance of a RolloutPlan. It represents a single
+ # execution of a strategy to roll out a specific resource. It also provides
+ # APIs to interact with the rollout.
+ "cancellationTime": "A String", # Output only. The timestamp at which the Rollout was cancelled.
+ "completionTime": "A String", # Output only. The timestamp at which the Rollout was completed.
+ "creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339
+ # text format.
+ "currentWaveNumber": "A String", # Output only. The number of the currently running wave.
+ # Ex. 1
+ "description": "A String", # An optional description of this resource. Provide this property when you
+ # create the resource.
+ "etag": "A String", # Output only. etag of the Rollout
+ # Ex. abc1234
+ "id": "A String", # Output only. [Output Only] The unique identifier for the resource. This identifier is
+ # defined by the server.
+ "kind": "compute#rollout", # Output only. [Output Only] Type of the resource. Always compute#rollout
+ # for rollouts.
+ "name": "A String", # Name of the resource. Provided by the client when the resource is created.
+ # The name must be 1-63 characters long, and comply withRFC1035.
+ # Specifically, the name must be 1-63 characters long and match the regular
+ # expression `[a-z]([-a-z0-9]*[a-z0-9])?`
+ # which means the first character must be a lowercase letter, and all
+ # following characters must be a dash, lowercase letter, or digit, except
+ # the last character, which cannot be a dash.
+ "pauseTime": "A String", # Output only. The timestamp at which the Rollout was paused.
+ "resumeTime": "A String", # Output only. The timestamp at which the Rollout was resumed.
+ "rolloutEntity": { # Specifications of the resource to roll out. # Required. The resource being rolled out.
+ "orchestratedEntity": { # This message is used if the resource type follows the Orchestrated # Optional. Entity details for products using the Orchestrated Integration model.
+ # integration model with ProgressiveRollout.
+ "conflictBehavior": "A String", # Required. Specifies the behavior of the Rollout if an out of band update is
+ # detected in a project during a Rollout. It can be one of the following
+ # values:
+ # 1) overwrite : Overwrite the local value with the rollout value.
+ # 2) no_overwrite : Do not overwrite the local value with the rollout
+ # value.
+ "orchestrationAction": "A String", # Required. Orchestration action during the Rollout. It can be one of the following
+ # values:
+ # 1) "update": Resources will be updated by the rollout.
+ # 2) "delete": Resources will be deleted by the rollout.
+ "orchestrationSource": "A String", # Required. Fully qualified resource name of the resource which contains the source
+ # of truth of the configuration being rolled out across
+ # locations/projects. For example, in the case of a global Rollout which
+ # is applied across regions, this contains the name of the global
+ # resource created by the user which contains a payload for a resource
+ # that is orchestrated across regions. This follows the following format:
+ # //.googleapis.com/projects//locations/global//
+ # e.g.
+ # //osconfig.googleapis.com/projects/1/locations/global/policyOrchestrators/po1
+ },
+ },
+ "rolloutPlan": "A String", # Required. Rollout Plan used to model the Rollout.
+ # Ex. compute.googleapis.com/v1/projects/1234/rolloutPlans/rp1
+ "selfLink": "A String", # Output only. [Output Only] Server-defined fully-qualified URL for this resource.
+ "selfLinkWithId": "A String", # Output only. [Output Only] Server-defined URL for this resource's resource id.
+ "state": "A String", # Output only. The current state of the Rollout.
+ "waveDetails": [ # Output only. Details about each wave of the rollout.
+ { # Additional metadata about the status of each wave provided by the server.
+ "orchestratedWaveDetails": { # Details of the wave for products using the Orchestrated integration # Output only. Additional details of the wave for products using the Orchestrated
+ # Integration model.
+ # model.
+ "completedResourcesCount": "A String", # Output only. Resource completed so far.
+ "estimatedCompletionTime": "A String", # Output only. Estimated timestamp at which the wave will complete. Extrapolated from
+ # current progress.
+ "estimatedTotalResourcesCount": "A String", # Output only. Estimated total count of resources.
+ "failedLocations": [ # Output only. Locations that failed during orchestration, and ProgressiveRollout
+ # stopped retrying. There may be some successful resources rolled out in
+ # the wave as the location may have failed later in the Rollout.
+ "A String",
+ ],
+ "failedResourcesCount": "A String", # Output only. Resources failed.
+ "locationStatus": { # Output only. Status of each location in the wave. Map keys (locations) must be
+ # specified like "us-east1" or "asia-west1-a".
+ "a_key": { # Represents the status of a location in a wave.
+ "state": "A String", # Output only. Location state of the wave.
+ },
+ },
+ },
+ "waveDisplayName": "A String", # Output only. Wave name.
+ # Ex. wave1
+ "waveNumber": "A String", # Output only. System generated number for the wave.
+ },
+ ],
+ },
+ ],
+ "nextPageToken": "A String", # [Output Only] This token allows you to get the next page of results for
+ # list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for
+ # the query parameter pageToken in the next list request.
+ # Subsequent list requests will have their own nextPageToken to
+ # continue paging through the results.
+ "selfLink": "A String", # Output only. [Output Only] Server-defined URL for this resource.
+ "unreachables": [ # Output only. [Output Only] Unreachable resources.
+ # end_interface: MixerListResponseWithEtagBuilder
+ "A String",
+ ],
+ "warning": { # [Output Only] Informational warning message.
+ "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute
+ # Engine returns NO_RESULTS_ON_PAGE if there
+ # are no results in the response.
+ "data": [ # [Output Only] Metadata about this warning in key:
+ # value format. For example:
+ #
+ # "data": [
+ # {
+ # "key": "scope",
+ # "value": "zones/us-east1-d"
+ # }]
+ {
+ "key": "A String", # [Output Only] A key that provides more detail on the warning being
+ # returned. For example, for warnings where there are no results in a list
+ # request for a particular zone, this key might be scope and
+ # the key value might be the zone name. Other examples might be a key
+ # indicating a deprecated resource and a suggested replacement, or a
+ # warning about invalid network settings (for example, if an instance
+ # attempts to perform IP forwarding but is not enabled for IP forwarding).
+ "value": "A String", # [Output Only] A warning data value corresponding to the key.
+ },
+ ],
+ "message": "A String", # [Output Only] A human-readable description of the warning code.
+ },
+}
+
+
+
+ list_next(previous_request, previous_response)
+ Retrieves the next page of results.
+
+Args:
+ previous_request: The request for the previous page. (required)
+ previous_response: The response from the request for the previous page. (required)
+
+Returns:
+ A request object that you can call 'execute()' on to request the next
+ page. Returns None if there are no more items in the collection.
+
+
+
+
+ pause(folder, rollout, etag=None, requestId=None, x__xgafv=None)
+ Pauses a Rollout.
+
+Args:
+ folder: string, Required. Folder ID for this request. (required)
+ rollout: string, Required. Name of the Rollout resource to pause. (required)
+ etag: string, The etag of the Rollout.
+If this is provided, the request will only succeed if the etag matches
+the current etag of the Rollout.
+ requestId: string, An optional request ID to identify requests. Specify a unique request ID so
+that if you must retry your request, the server will know to ignore the
+request if it has already been completed.
+
+For example, consider a situation where you make an initial request and
+the request times out. If you make the request again with the same
+request ID, the server can check if original operation with the same
+request ID was received, and if so, will ignore the second request. This
+prevents clients from accidentally creating duplicate commitments.
+
+The request ID must be
+a valid UUID with the exception that zero UUID is not supported
+(00000000-0000-0000-0000-000000000000).
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Represents an Operation resource.
+ #
+ # Google Compute Engine has three Operation resources:
+ #
+ # * [Global](/compute/docs/reference/rest/v1/globalOperations)
+ # * [Regional](/compute/docs/reference/rest/v1/regionOperations)
+ # * [Zonal](/compute/docs/reference/rest/v1/zoneOperations)
+ #
+ # You can use an operation resource to manage asynchronous API requests.
+ # For more information, readHandling
+ # API responses.
+ #
+ # Operations can be global, regional or zonal.
+ #
+ # - For global operations, use the `globalOperations`
+ # resource.
+ # - For regional operations, use the
+ # `regionOperations` resource.
+ # - For zonal operations, use
+ # the `zoneOperations` resource.
+ #
+ #
+ #
+ # For more information, read
+ # Global, Regional, and Zonal Resources.
+ #
+ # Note that completed Operation resources have a limited
+ # retention period.
+ "clientOperationId": "A String", # [Output Only] The value of `requestId` if you provided it in the request.
+ # Not present otherwise.
+ "creationTimestamp": "A String", # [Deprecated] This field is deprecated.
+ "description": "A String", # [Output Only] A textual description of the operation, which is
+ # set when the operation is created.
+ "details": { # [Output Only] Extended details about the operation's execution.
+ "data": { # Machine readable data from the message.
+ "a_key": "",
+ },
+ "message": "A String", # Human or AI readable details on execution of the operation.
+ },
+ "endTime": "A String", # [Output Only] The time that this operation was completed. This value is inRFC3339
+ # text format.
+ "error": { # [Output Only] If errors are generated during processing of the operation,
+ # this field will be populated.
+ "errors": [ # [Output Only] The array of errors encountered while processing this
+ # operation.
+ { # Represents a single error encountered during the processing of an
+ # operation.
+ "code": "A String", # [Output Only] The error type identifier for this error.
+ "errorDetails": [ # [Output Only] An optional list of messages that contain the error
+ # details. There is a set of defined message types to use for providing
+ # details.The syntax depends on the error code. For example,
+ # QuotaExceededInfo will have details when the error code is
+ # QUOTA_EXCEEDED.
+ { # Container for structured error details providing additional context
+ # specific to the encountered error code.
+ "errorInfo": { # Describes the cause of the error with structured details. # Error information containing structured domain, reason, and metadata.
+ #
+ # Example of an error when contacting the "pubsub.googleapis.com" API when it
+ # is not enabled:
+ #
+ # { "reason": "API_DISABLED"
+ # "domain": "googleapis.com"
+ # "metadata": {
+ # "resource": "projects/123",
+ # "service": "pubsub.googleapis.com"
+ # }
+ # }
+ #
+ # This response indicates that the pubsub.googleapis.com API is not enabled.
+ #
+ # Example of an error that is returned when attempting to create a Spanner
+ # instance in a region that is out of stock:
+ #
+ # { "reason": "STOCKOUT"
+ # "domain": "spanner.googleapis.com",
+ # "metadata": {
+ # "availableRegions": "us-central1,us-east2"
+ # }
+ # }
+ "domain": "A String", # The logical grouping to which the "reason" belongs. The error domain
+ # is typically the registered service name of the tool or product that
+ # generates the error. Example: "pubsub.googleapis.com". If the error is
+ # generated by some common infrastructure, the error domain must be a
+ # globally unique value that identifies the infrastructure. For Google API
+ # infrastructure, the error domain is "googleapis.com".
+ "metadatas": { # Additional structured details about this error.
+ #
+ # Keys must match a regular expression of `a-z+` but should
+ # ideally be lowerCamelCase. Also, they must be limited to 64 characters in
+ # length. When identifying the current value of an exceeded limit, the units
+ # should be contained in the key, not the value. For example, rather than
+ # `{"instanceLimit": "100/request"}`, should be returned as,
+ # `{"instanceLimitPerRequest": "100"}`, if the client exceeds the number of
+ # instances that can be created in a single (batch) request.
+ "a_key": "A String",
+ },
+ "reason": "A String", # The reason of the error. This is a constant value that identifies the
+ # proximate cause of the error. Error reasons are unique within a particular
+ # domain of errors. This should be at most 63 characters and match a
+ # regular expression of `A-Z+[A-Z0-9]`, which represents
+ # UPPER_SNAKE_CASE.
+ },
+ "help": { # Provides links to documentation or for performing an out of band action. # Links and information to help the user resolve the error.
+ #
+ # For example, if a quota check failed with an error indicating the calling
+ # project hasn't enabled the accessed service, this can contain a URL pointing
+ # directly to the right place in the developer console to flip the bit.
+ "links": [ # URL(s) pointing to additional information on handling the current error.
+ { # Describes a URL link.
+ "description": "A String", # Describes what the link offers.
+ "url": "A String", # The URL of the link.
+ },
+ ],
+ },
+ "localizedMessage": { # Provides a localized error message that is safe to return to the user # A localized human-readable error message intended for end users.
+ # which can be attached to an RPC error.
+ "locale": "A String", # The locale used following the specification defined at
+ # https://www.rfc-editor.org/rfc/bcp/bcp47.txt.
+ # Examples are: "en-US", "fr-CH", "es-MX"
+ "message": "A String", # The localized error message in the above locale.
+ },
+ "quotaInfo": { # Additional details for quota exceeded error for resource quota. # Details about quota limits and metrics when a quota is exceeded.
+ "dimensions": { # The map holding related quota dimensions.
+ "a_key": "A String",
+ },
+ "futureLimit": 3.14, # Future quota limit being rolled out. The limit's unit depends on the quota
+ # type or metric.
+ "limit": 3.14, # Current effective quota limit. The limit's unit depends on the quota type
+ # or metric.
+ "limitName": "A String", # The name of the quota limit.
+ "metricName": "A String", # The Compute Engine quota metric name.
+ "rolloutStatus": "A String", # Rollout status of the future quota limit.
+ },
+ },
+ ],
+ "location": "A String", # [Output Only] Indicates the field in the request that caused the error.
+ # This property is optional.
+ "message": "A String", # [Output Only] An optional, human-readable error message.
+ },
+ ],
+ },
+ "getHealthOperationMetadata": { # Metadata for GetHealth operations. # Output only. Metadata for GetHealth operations.
+ "healthInfo": { # Health information. # Output only. The health information.
+ "availabilitySloStatus": "A String", # Output only. The availability SLO status.
+ "healthStatus": "A String", # Output only. The health status.
+ "repairCategory": "A String", # Output only. The repair category.
+ "unhealthyReason": "A String", # Output only. The reason for unhealthy status.
+ "updateTime": "A String", # Output only. The time when health info was updated.
+ },
+ },
+ "getVersionOperationMetadata": {
+ "inlineSbomInfo": {
+ "currentComponentVersions": { # A mapping of components to their currently-applied versions or other
+ # appropriate identifiers.
+ "a_key": "A String",
+ },
+ "targetComponentVersions": { # A mapping of components to their target versions or other appropriate
+ # identifiers.
+ "a_key": "A String",
+ },
+ },
+ },
+ "httpErrorMessage": "A String", # [Output Only] If the operation fails, this field contains the HTTP error
+ # message that was returned, such as `NOT FOUND`.
+ "httpErrorStatusCode": 42, # [Output Only] If the operation fails, this field contains the HTTP error
+ # status code that was returned. For example, a `404` means the
+ # resource was not found.
+ "id": "A String", # [Output Only] The unique identifier for the operation. This identifier is
+ # defined by the server.
+ "insertTime": "A String", # [Output Only] The time that this operation was requested.
+ # This value is inRFC3339
+ # text format.
+ "instancesBulkInsertOperationMetadata": {
+ "perLocationStatus": { # Status information per location (location name is key).
+ # Example key: zones/us-central1-a
+ "a_key": {
+ "createdVmCount": 42, # [Output Only] Count of VMs successfully created so far.
+ "deletedVmCount": 42, # [Output Only] Count of VMs that got deleted during rollback.
+ "failedToCreateVmCount": 42, # [Output Only] Count of VMs that started creating but encountered an
+ # error.
+ "status": "A String", # [Output Only] Creation status of BulkInsert operation - information
+ # if the flow is rolling forward or rolling back.
+ "targetVmCount": 42, # [Output Only] Count of VMs originally planned to be created.
+ },
+ },
+ },
+ "instancesTroubleshootOperationMetadata": { # [Output Only] Operation metadata for instances.troubleshoot. # Output only. [Output Only] Operation metadata for instances.troubleshoot.
+ "troubleshootOutput": "A String", # Output only. [Output Only] Serialized output of the troubleshooting diagnostic run.
+ },
+ "kind": "compute#operation", # Output only. [Output Only] Type of the resource. Always `compute#operation` for
+ # Operation resources.
+ "name": "A String", # [Output Only] Name of the operation.
+ "operationGroupId": "A String", # Output only. [Output Only] An ID that represents a group of operations, such as when a
+ # group of operations results from a `bulkInsert` API request.
+ "operationType": "A String", # [Output Only] The type of operation, such as `insert`,
+ # `update`, or `delete`, and so on.
+ "progress": 42, # [Output Only] An optional progress indicator that ranges from 0 to 100.
+ # There is no requirement that this be linear or support any granularity of
+ # operations. This should not be used to guess when the operation will be
+ # complete. This number should monotonically increase as the operation
+ # progresses.
+ "region": "A String", # [Output Only] The URL of the region where the operation resides. Only
+ # applicable when performing regional operations.
+ "selfLink": "A String", # [Output Only] Server-defined URL for the resource.
+ "setCommonInstanceMetadataOperationMetadata": { # Output only. [Output Only] If the operation is for projects.setCommonInstanceMetadata,
+ # this field will contain information on all underlying zonal actions and
+ # their state.
+ "clientOperationId": "A String", # [Output Only] The client operation id.
+ "perLocationOperations": { # [Output Only] Status information per location (location name is key).
+ # Example key: zones/us-central1-a
+ "a_key": {
+ "error": { # The `Status` type defines a logical error model that is suitable for # [Output Only] If state is `ABANDONED` or `FAILED`, this field is
+ # populated.
+ # different programming environments, including REST APIs and RPC APIs. It is
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+ # three pieces of data: error code, error message, and error details.
+ #
+ # You can find out more about this error model and how to work with it in the
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
+ "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+ "details": [ # A list of messages that carry the error details. There is a common set of
+ # message types for APIs to use.
+ {
+ "a_key": "", # Properties of the object. Contains field @type with type URL.
+ },
+ ],
+ "message": "A String", # A developer-facing error message, which should be in English. Any
+ # user-facing error message should be localized and sent in the
+ # google.rpc.Status.details field, or localized by the client.
+ },
+ "state": "A String", # [Output Only] Status of the action, which can be one of the following:
+ # `PROPAGATING`, `PROPAGATED`, `ABANDONED`, `FAILED`, or `DONE`.
+ },
+ },
+ },
+ "startTime": "A String", # [Output Only] The time that this operation was started by the server.
+ # This value is inRFC3339
+ # text format.
+ "status": "A String", # [Output Only] The status of the operation, which can be one of the
+ # following:
+ # `PENDING`, `RUNNING`, or `DONE`.
+ "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the
+ # operation.
+ "targetId": "A String", # [Output Only] The unique target ID, which identifies a specific incarnation
+ # of the target resource.
+ "targetLink": "A String", # [Output Only] The URL of the resource that the operation modifies. For
+ # operations related to creating a snapshot, this points to the disk
+ # that the snapshot was created from.
+ "user": "A String", # [Output Only] User who requested the operation, for example:
+ # `user@example.com` or
+ # `alice_smith_identifier (global/workforcePools/example-com-us-employees)`.
+ "warnings": [ # [Output Only] If warning messages are generated during processing of the
+ # operation, this field will be populated.
+ {
+ "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute
+ # Engine returns NO_RESULTS_ON_PAGE if there
+ # are no results in the response.
+ "data": [ # [Output Only] Metadata about this warning in key:
+ # value format. For example:
+ #
+ # "data": [
+ # {
+ # "key": "scope",
+ # "value": "zones/us-east1-d"
+ # }]
+ {
+ "key": "A String", # [Output Only] A key that provides more detail on the warning being
+ # returned. For example, for warnings where there are no results in a list
+ # request for a particular zone, this key might be scope and
+ # the key value might be the zone name. Other examples might be a key
+ # indicating a deprecated resource and a suggested replacement, or a
+ # warning about invalid network settings (for example, if an instance
+ # attempts to perform IP forwarding but is not enabled for IP forwarding).
+ "value": "A String", # [Output Only] A warning data value corresponding to the key.
+ },
+ ],
+ "message": "A String", # [Output Only] A human-readable description of the warning code.
+ },
+ ],
+ "zone": "A String", # [Output Only] The URL of the zone where the operation resides. Only
+ # applicable when performing per-zone operations.
+}
+
+
+
+ resume(folder, rollout, etag=None, requestId=None, x__xgafv=None)
+ Resumes a Rollout.
+
+Args:
+ folder: string, Required. Folder ID for this request. (required)
+ rollout: string, Required. Name of the Rollout resource to resume. (required)
+ etag: string, The etag of the Rollout.
+If this is provided, the request will only succeed if the etag matches
+the current etag of the Rollout.
+ requestId: string, An optional request ID to identify requests. Specify a unique request ID so
+that if you must retry your request, the server will know to ignore the
+request if it has already been completed.
+
+For example, consider a situation where you make an initial request and
+the request times out. If you make the request again with the same
+request ID, the server can check if original operation with the same
+request ID was received, and if so, will ignore the second request. This
+prevents clients from accidentally creating duplicate commitments.
+
+The request ID must be
+a valid UUID with the exception that zero UUID is not supported
+(00000000-0000-0000-0000-000000000000).
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Represents an Operation resource.
+ #
+ # Google Compute Engine has three Operation resources:
+ #
+ # * [Global](/compute/docs/reference/rest/v1/globalOperations)
+ # * [Regional](/compute/docs/reference/rest/v1/regionOperations)
+ # * [Zonal](/compute/docs/reference/rest/v1/zoneOperations)
+ #
+ # You can use an operation resource to manage asynchronous API requests.
+ # For more information, readHandling
+ # API responses.
+ #
+ # Operations can be global, regional or zonal.
+ #
+ # - For global operations, use the `globalOperations`
+ # resource.
+ # - For regional operations, use the
+ # `regionOperations` resource.
+ # - For zonal operations, use
+ # the `zoneOperations` resource.
+ #
+ #
+ #
+ # For more information, read
+ # Global, Regional, and Zonal Resources.
+ #
+ # Note that completed Operation resources have a limited
+ # retention period.
+ "clientOperationId": "A String", # [Output Only] The value of `requestId` if you provided it in the request.
+ # Not present otherwise.
+ "creationTimestamp": "A String", # [Deprecated] This field is deprecated.
+ "description": "A String", # [Output Only] A textual description of the operation, which is
+ # set when the operation is created.
+ "details": { # [Output Only] Extended details about the operation's execution.
+ "data": { # Machine readable data from the message.
+ "a_key": "",
+ },
+ "message": "A String", # Human or AI readable details on execution of the operation.
+ },
+ "endTime": "A String", # [Output Only] The time that this operation was completed. This value is inRFC3339
+ # text format.
+ "error": { # [Output Only] If errors are generated during processing of the operation,
+ # this field will be populated.
+ "errors": [ # [Output Only] The array of errors encountered while processing this
+ # operation.
+ { # Represents a single error encountered during the processing of an
+ # operation.
+ "code": "A String", # [Output Only] The error type identifier for this error.
+ "errorDetails": [ # [Output Only] An optional list of messages that contain the error
+ # details. There is a set of defined message types to use for providing
+ # details.The syntax depends on the error code. For example,
+ # QuotaExceededInfo will have details when the error code is
+ # QUOTA_EXCEEDED.
+ { # Container for structured error details providing additional context
+ # specific to the encountered error code.
+ "errorInfo": { # Describes the cause of the error with structured details. # Error information containing structured domain, reason, and metadata.
+ #
+ # Example of an error when contacting the "pubsub.googleapis.com" API when it
+ # is not enabled:
+ #
+ # { "reason": "API_DISABLED"
+ # "domain": "googleapis.com"
+ # "metadata": {
+ # "resource": "projects/123",
+ # "service": "pubsub.googleapis.com"
+ # }
+ # }
+ #
+ # This response indicates that the pubsub.googleapis.com API is not enabled.
+ #
+ # Example of an error that is returned when attempting to create a Spanner
+ # instance in a region that is out of stock:
+ #
+ # { "reason": "STOCKOUT"
+ # "domain": "spanner.googleapis.com",
+ # "metadata": {
+ # "availableRegions": "us-central1,us-east2"
+ # }
+ # }
+ "domain": "A String", # The logical grouping to which the "reason" belongs. The error domain
+ # is typically the registered service name of the tool or product that
+ # generates the error. Example: "pubsub.googleapis.com". If the error is
+ # generated by some common infrastructure, the error domain must be a
+ # globally unique value that identifies the infrastructure. For Google API
+ # infrastructure, the error domain is "googleapis.com".
+ "metadatas": { # Additional structured details about this error.
+ #
+ # Keys must match a regular expression of `a-z+` but should
+ # ideally be lowerCamelCase. Also, they must be limited to 64 characters in
+ # length. When identifying the current value of an exceeded limit, the units
+ # should be contained in the key, not the value. For example, rather than
+ # `{"instanceLimit": "100/request"}`, should be returned as,
+ # `{"instanceLimitPerRequest": "100"}`, if the client exceeds the number of
+ # instances that can be created in a single (batch) request.
+ "a_key": "A String",
+ },
+ "reason": "A String", # The reason of the error. This is a constant value that identifies the
+ # proximate cause of the error. Error reasons are unique within a particular
+ # domain of errors. This should be at most 63 characters and match a
+ # regular expression of `A-Z+[A-Z0-9]`, which represents
+ # UPPER_SNAKE_CASE.
+ },
+ "help": { # Provides links to documentation or for performing an out of band action. # Links and information to help the user resolve the error.
+ #
+ # For example, if a quota check failed with an error indicating the calling
+ # project hasn't enabled the accessed service, this can contain a URL pointing
+ # directly to the right place in the developer console to flip the bit.
+ "links": [ # URL(s) pointing to additional information on handling the current error.
+ { # Describes a URL link.
+ "description": "A String", # Describes what the link offers.
+ "url": "A String", # The URL of the link.
+ },
+ ],
+ },
+ "localizedMessage": { # Provides a localized error message that is safe to return to the user # A localized human-readable error message intended for end users.
+ # which can be attached to an RPC error.
+ "locale": "A String", # The locale used following the specification defined at
+ # https://www.rfc-editor.org/rfc/bcp/bcp47.txt.
+ # Examples are: "en-US", "fr-CH", "es-MX"
+ "message": "A String", # The localized error message in the above locale.
+ },
+ "quotaInfo": { # Additional details for quota exceeded error for resource quota. # Details about quota limits and metrics when a quota is exceeded.
+ "dimensions": { # The map holding related quota dimensions.
+ "a_key": "A String",
+ },
+ "futureLimit": 3.14, # Future quota limit being rolled out. The limit's unit depends on the quota
+ # type or metric.
+ "limit": 3.14, # Current effective quota limit. The limit's unit depends on the quota type
+ # or metric.
+ "limitName": "A String", # The name of the quota limit.
+ "metricName": "A String", # The Compute Engine quota metric name.
+ "rolloutStatus": "A String", # Rollout status of the future quota limit.
+ },
+ },
+ ],
+ "location": "A String", # [Output Only] Indicates the field in the request that caused the error.
+ # This property is optional.
+ "message": "A String", # [Output Only] An optional, human-readable error message.
+ },
+ ],
+ },
+ "getHealthOperationMetadata": { # Metadata for GetHealth operations. # Output only. Metadata for GetHealth operations.
+ "healthInfo": { # Health information. # Output only. The health information.
+ "availabilitySloStatus": "A String", # Output only. The availability SLO status.
+ "healthStatus": "A String", # Output only. The health status.
+ "repairCategory": "A String", # Output only. The repair category.
+ "unhealthyReason": "A String", # Output only. The reason for unhealthy status.
+ "updateTime": "A String", # Output only. The time when health info was updated.
+ },
+ },
+ "getVersionOperationMetadata": {
+ "inlineSbomInfo": {
+ "currentComponentVersions": { # A mapping of components to their currently-applied versions or other
+ # appropriate identifiers.
+ "a_key": "A String",
+ },
+ "targetComponentVersions": { # A mapping of components to their target versions or other appropriate
+ # identifiers.
+ "a_key": "A String",
+ },
+ },
+ },
+ "httpErrorMessage": "A String", # [Output Only] If the operation fails, this field contains the HTTP error
+ # message that was returned, such as `NOT FOUND`.
+ "httpErrorStatusCode": 42, # [Output Only] If the operation fails, this field contains the HTTP error
+ # status code that was returned. For example, a `404` means the
+ # resource was not found.
+ "id": "A String", # [Output Only] The unique identifier for the operation. This identifier is
+ # defined by the server.
+ "insertTime": "A String", # [Output Only] The time that this operation was requested.
+ # This value is inRFC3339
+ # text format.
+ "instancesBulkInsertOperationMetadata": {
+ "perLocationStatus": { # Status information per location (location name is key).
+ # Example key: zones/us-central1-a
+ "a_key": {
+ "createdVmCount": 42, # [Output Only] Count of VMs successfully created so far.
+ "deletedVmCount": 42, # [Output Only] Count of VMs that got deleted during rollback.
+ "failedToCreateVmCount": 42, # [Output Only] Count of VMs that started creating but encountered an
+ # error.
+ "status": "A String", # [Output Only] Creation status of BulkInsert operation - information
+ # if the flow is rolling forward or rolling back.
+ "targetVmCount": 42, # [Output Only] Count of VMs originally planned to be created.
+ },
+ },
+ },
+ "instancesTroubleshootOperationMetadata": { # [Output Only] Operation metadata for instances.troubleshoot. # Output only. [Output Only] Operation metadata for instances.troubleshoot.
+ "troubleshootOutput": "A String", # Output only. [Output Only] Serialized output of the troubleshooting diagnostic run.
+ },
+ "kind": "compute#operation", # Output only. [Output Only] Type of the resource. Always `compute#operation` for
+ # Operation resources.
+ "name": "A String", # [Output Only] Name of the operation.
+ "operationGroupId": "A String", # Output only. [Output Only] An ID that represents a group of operations, such as when a
+ # group of operations results from a `bulkInsert` API request.
+ "operationType": "A String", # [Output Only] The type of operation, such as `insert`,
+ # `update`, or `delete`, and so on.
+ "progress": 42, # [Output Only] An optional progress indicator that ranges from 0 to 100.
+ # There is no requirement that this be linear or support any granularity of
+ # operations. This should not be used to guess when the operation will be
+ # complete. This number should monotonically increase as the operation
+ # progresses.
+ "region": "A String", # [Output Only] The URL of the region where the operation resides. Only
+ # applicable when performing regional operations.
+ "selfLink": "A String", # [Output Only] Server-defined URL for the resource.
+ "setCommonInstanceMetadataOperationMetadata": { # Output only. [Output Only] If the operation is for projects.setCommonInstanceMetadata,
+ # this field will contain information on all underlying zonal actions and
+ # their state.
+ "clientOperationId": "A String", # [Output Only] The client operation id.
+ "perLocationOperations": { # [Output Only] Status information per location (location name is key).
+ # Example key: zones/us-central1-a
+ "a_key": {
+ "error": { # The `Status` type defines a logical error model that is suitable for # [Output Only] If state is `ABANDONED` or `FAILED`, this field is
+ # populated.
+ # different programming environments, including REST APIs and RPC APIs. It is
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+ # three pieces of data: error code, error message, and error details.
+ #
+ # You can find out more about this error model and how to work with it in the
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
+ "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+ "details": [ # A list of messages that carry the error details. There is a common set of
+ # message types for APIs to use.
+ {
+ "a_key": "", # Properties of the object. Contains field @type with type URL.
+ },
+ ],
+ "message": "A String", # A developer-facing error message, which should be in English. Any
+ # user-facing error message should be localized and sent in the
+ # google.rpc.Status.details field, or localized by the client.
+ },
+ "state": "A String", # [Output Only] Status of the action, which can be one of the following:
+ # `PROPAGATING`, `PROPAGATED`, `ABANDONED`, `FAILED`, or `DONE`.
+ },
+ },
+ },
+ "startTime": "A String", # [Output Only] The time that this operation was started by the server.
+ # This value is inRFC3339
+ # text format.
+ "status": "A String", # [Output Only] The status of the operation, which can be one of the
+ # following:
+ # `PENDING`, `RUNNING`, or `DONE`.
+ "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the
+ # operation.
+ "targetId": "A String", # [Output Only] The unique target ID, which identifies a specific incarnation
+ # of the target resource.
+ "targetLink": "A String", # [Output Only] The URL of the resource that the operation modifies. For
+ # operations related to creating a snapshot, this points to the disk
+ # that the snapshot was created from.
+ "user": "A String", # [Output Only] User who requested the operation, for example:
+ # `user@example.com` or
+ # `alice_smith_identifier (global/workforcePools/example-com-us-employees)`.
+ "warnings": [ # [Output Only] If warning messages are generated during processing of the
+ # operation, this field will be populated.
+ {
+ "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute
+ # Engine returns NO_RESULTS_ON_PAGE if there
+ # are no results in the response.
+ "data": [ # [Output Only] Metadata about this warning in key:
+ # value format. For example:
+ #
+ # "data": [
+ # {
+ # "key": "scope",
+ # "value": "zones/us-east1-d"
+ # }]
+ {
+ "key": "A String", # [Output Only] A key that provides more detail on the warning being
+ # returned. For example, for warnings where there are no results in a list
+ # request for a particular zone, this key might be scope and
+ # the key value might be the zone name. Other examples might be a key
+ # indicating a deprecated resource and a suggested replacement, or a
+ # warning about invalid network settings (for example, if an instance
+ # attempts to perform IP forwarding but is not enabled for IP forwarding).
+ "value": "A String", # [Output Only] A warning data value corresponding to the key.
+ },
+ ],
+ "message": "A String", # [Output Only] A human-readable description of the warning code.
+ },
+ ],
+ "zone": "A String", # [Output Only] The URL of the zone where the operation resides. Only
+ # applicable when performing per-zone operations.
+}
+
+
+
\ No newline at end of file
diff --git a/docs/dyn/compute_preview.html b/docs/dyn/compute_preview.html
index 5bc53dec41..ba51c73322 100644
--- a/docs/dyn/compute_preview.html
+++ b/docs/dyn/compute_preview.html
@@ -154,6 +154,16 @@ Instance Methods
Returns the folderGlobalVmExtensionPolicies Resource.
+
+Returns the folderRolloutPlans Resource.
+
+
+ folderRollouts()
+
+Returns the folderRollouts Resource.
+
folderZoneVmExtensionPolicies()
@@ -369,6 +379,11 @@ Instance Methods
Returns the networkFirewallPolicies Resource.
+
+Returns the networkLocationBindings Resource.
+
diff --git a/docs/dyn/compute_preview.instanceTemplates.html b/docs/dyn/compute_preview.instanceTemplates.html
index 893bd50da1..6d78025e92 100644
--- a/docs/dyn/compute_preview.instanceTemplates.html
+++ b/docs/dyn/compute_preview.instanceTemplates.html
@@ -283,7 +283,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -1756,7 +1762,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -3200,7 +3212,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -4662,7 +4680,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
diff --git a/docs/dyn/compute_preview.instances.html b/docs/dyn/compute_preview.instances.html
index de1caed516..05cb45543f 100644
--- a/docs/dyn/compute_preview.instances.html
+++ b/docs/dyn/compute_preview.instances.html
@@ -1625,7 +1625,13 @@ Method Details
# instance to forward routes. For more information, seeEnabling IP Forwarding.
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -4250,6 +4256,21 @@ Method Details
# example `n2-standard-4` and not URLs or partial URLs.
"A String",
],
+ "metadataOverrides": [ # Metadata key/value pairs assigned to instances created from this
+ # selection. Key/value pairs specified here override keys specified in the
+ # instance properties on a key-by-key basis.
+ { # Metadata
+ "key": "A String", # Key for the metadata entry. Keys must conform to the following
+ # regexp: [a-zA-Z0-9-_]+, and be less than 128 bytes in length.
+ # This is reflected as part of a URL in the metadata server. Additionally, to
+ # avoid ambiguity, keys must not conflict with any other metadata keys
+ # for the project.
+ "value": "A String", # Value for the metadata entry. These are free-form strings, and only
+ # have meaning as interpreted by the image running in the instance. The
+ # only restriction placed on values is that their size must be less than
+ # or equal to 262144 bytes (256 KiB).
+ },
+ ],
"minCpuPlatform": "A String", # Name of the minimum CPU platform to be used by this instance selection.
# e.g. 'Intel Ice Lake'.
"rank": "A String", # Rank when prioritizing the shape flexibilities.
@@ -4295,7 +4316,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -6944,7 +6971,13 @@ Method Details
# instance to forward routes. For more information, seeEnabling IP Forwarding.
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -9351,7 +9384,13 @@ Method Details
# instance to forward routes. For more information, seeEnabling IP Forwarding.
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -11065,7 +11104,13 @@ Method Details
# instance to forward routes. For more information, seeEnabling IP Forwarding.
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -21133,7 +21178,13 @@ Method Details
# instance to forward routes. For more information, seeEnabling IP Forwarding.
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
diff --git a/docs/dyn/compute_preview.machineImages.html b/docs/dyn/compute_preview.machineImages.html
index 1f6d82cf7c..533382587f 100644
--- a/docs/dyn/compute_preview.machineImages.html
+++ b/docs/dyn/compute_preview.machineImages.html
@@ -486,7 +486,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -2631,7 +2637,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -4795,7 +4807,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
diff --git a/docs/dyn/compute_preview.networkLocationBindings.html b/docs/dyn/compute_preview.networkLocationBindings.html
new file mode 100644
index 0000000000..c874da659b
--- /dev/null
+++ b/docs/dyn/compute_preview.networkLocationBindings.html
@@ -0,0 +1,334 @@
+
+
+
+Compute Engine API . networkLocationBindings
+Instance Methods
+
+ close()
+Close httplib2 connections.
+
+ get(project, region, networkLocationBinding, x__xgafv=None)
+Returns the specified NetworkLocationBinding resource in the given scope.
+
+ list(project, region, filter=None, maxResults=None, orderBy=None, pageToken=None, x__xgafv=None)
+Lists the NetworkLocationBindings for a project in the given scope.
+
+ list_next(previous_request, previous_response)
+Retrieves the next page of results.
+Method Details
+
+ close()
+ Close httplib2 connections.
+
+
+
+ get(project, region, networkLocationBinding, x__xgafv=None)
+ Returns the specified NetworkLocationBinding resource in the given scope.
+
+Args:
+ project: string, Project ID for this request. (required)
+ region: string, Name of the region of this request. (required)
+ networkLocationBinding: string, Name of the NetworkLocationBinding resource to return. (required)
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # A regional, read-only resource that reflects the physical location(s) (i.e.
+ # clusters) to which a special-purpose VPC network is bound, across the zones
+ # of a region. Its lifecycle is managed by the service: it is created when a
+ # network using a network profile that requires location binding is created,
+ # and deleted when that network is deleted.
+ "creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339
+ # text format.
+ "description": "A String", # Output only. [Output Only] An optional textual description of the resource.
+ "id": "A String", # Output only. [Output Only] The unique identifier for the resource type. The server
+ # generates this identifier.
+ "kind": "compute#networkLocationBinding", # Output only. [Output Only] Type of the resource. Alwayscompute#networkLocationBinding for network location bindings.
+ "name": "A String", # Output only. [Output Only] Name of the resource. The name is generated by the server
+ # when the associated network is created.
+ "network": "A String", # Output only. [Output Only] The network this network location binding belongs to.
+ "region": "A String", # Output only. [Output Only] URL of the region where the network location binding
+ # resides. You must specify this field as part of the HTTP request URL. It
+ # is not settable as a field in the request body.
+ "selfLink": "A String", # Output only. [Output Only] Server-defined URL for the resource.
+ "selfLinkWithId": "A String", # Output only. [Output Only] Server-defined URL for this resource with the resource id.
+ "state": "A String", # Output only. [Output Only] State of the binding.
+ "status": { # Status and derived information about the network location binding. # Output only. [Output Only] Status and derived information about the network location
+ # binding.
+ "bindingType": "A String", # Output only. [Output Only] Indicates whether a single cluster, specific clusters, or
+ # all clusters are allowed for instance creation.
+ "zonalBindings": { # Output only. [Output Only] The mapping of zones to their binding information, keyed
+ # by the zone, e.g. zones/us-central1-a.
+ "a_key": { # Binding information for a single zone.
+ "prodClusters": [ # Output only. [Output Only] Prod cluster names in the zone that this network could
+ # schedule instances in.
+ "A String",
+ ],
+ },
+ },
+ },
+}
+
+
+
+ list(project, region, filter=None, maxResults=None, orderBy=None, pageToken=None, x__xgafv=None)
+ Lists the NetworkLocationBindings for a project in the given scope.
+
+Args:
+ project: string, Project ID for this request. (required)
+ region: string, Name of the region of this request. (required)
+ filter: string, A filter expression that filters resources listed in the response. Most
+Compute resources support two types of filter expressions:
+expressions that support regular expressions and expressions that follow
+API improvement proposal AIP-160.
+These two types of filter expressions cannot be mixed in one request.
+
+If you want to use AIP-160, your expression must specify the field name, an
+operator, and the value that you want to use for filtering. The value
+must be a string, a number, or a boolean. The operator
+must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.
+
+For example, if you are filtering Compute Engine instances, you can
+exclude instances named `example-instance` by specifying
+`name != example-instance`.
+
+The `:*` comparison can be used to test whether a key has been defined.
+For example, to find all objects with `owner` label use:
+```
+labels.owner:*
+```
+
+You can also filter nested fields. For example, you could specify
+`scheduling.automaticRestart = false` to include instances only
+if they are not scheduled for automatic restarts. You can use filtering
+on nested fields to filter based onresource labels.
+
+To filter on multiple expressions, provide each separate expression within
+parentheses. For example:
+```
+(scheduling.automaticRestart = true)
+(cpuPlatform = "Intel Skylake")
+```
+By default, each expression is an `AND` expression. However, you
+can include `AND` and `OR` expressions explicitly.
+For example:
+```
+(cpuPlatform = "Intel Skylake") OR
+(cpuPlatform = "Intel Broadwell") AND
+(scheduling.automaticRestart = true)
+```
+
+If you want to use a regular expression, use the `eq` (equal) or `ne`
+(not equal) operator against a single un-parenthesized expression with or
+without quotes or against multiple parenthesized expressions. Examples:
+
+`fieldname eq unquoted literal`
+`fieldname eq 'single quoted literal'`
+`fieldname eq "double quoted literal"`
+`(fieldname1 eq literal) (fieldname2 ne "literal")`
+
+The literal value is interpreted as a regular expression using GoogleRE2 library syntax.
+The literal value must match the entire field.
+
+For example, to filter for instances that do not end with name "instance",
+you would use `name ne .*instance`.
+
+You cannot combine constraints on multiple fields using regular
+expressions.
+ maxResults: integer, The maximum number of results per page that should be returned.
+If the number of available results is larger than `maxResults`,
+Compute Engine returns a `nextPageToken` that can be used to get
+the next page of results in subsequent list requests. Acceptable values are
+`0` to `500`, inclusive. (Default: `500`)
+ orderBy: string, Sorts list results by a certain order. By default, results
+are returned in alphanumerical order based on the resource name.
+
+You can also sort results in descending order based on the creation
+timestamp using `orderBy="creationTimestamp desc"`. This sorts
+results based on the `creationTimestamp` field in
+reverse chronological order (newest result first). Use this to sort
+resources like operations so that the newest operation is returned first.
+
+Currently, only sorting by `name` or
+`creationTimestamp desc` is supported.
+ pageToken: string, Specifies a page token to use. Set `pageToken` to the
+`nextPageToken` returned by a previous list request to get
+the next page of results.
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Response message for NetworkLocationBindings.List.
+ "etag": "A String", # Server-defined ETag for optimistic concurrency control.
+ "id": "A String", # [Output Only] Unique identifier for the resource; defined by the server.
+ "items": [ # A list of NetworkLocationBinding resources.
+ { # A regional, read-only resource that reflects the physical location(s) (i.e.
+ # clusters) to which a special-purpose VPC network is bound, across the zones
+ # of a region. Its lifecycle is managed by the service: it is created when a
+ # network using a network profile that requires location binding is created,
+ # and deleted when that network is deleted.
+ "creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339
+ # text format.
+ "description": "A String", # Output only. [Output Only] An optional textual description of the resource.
+ "id": "A String", # Output only. [Output Only] The unique identifier for the resource type. The server
+ # generates this identifier.
+ "kind": "compute#networkLocationBinding", # Output only. [Output Only] Type of the resource. Alwayscompute#networkLocationBinding for network location bindings.
+ "name": "A String", # Output only. [Output Only] Name of the resource. The name is generated by the server
+ # when the associated network is created.
+ "network": "A String", # Output only. [Output Only] The network this network location binding belongs to.
+ "region": "A String", # Output only. [Output Only] URL of the region where the network location binding
+ # resides. You must specify this field as part of the HTTP request URL. It
+ # is not settable as a field in the request body.
+ "selfLink": "A String", # Output only. [Output Only] Server-defined URL for the resource.
+ "selfLinkWithId": "A String", # Output only. [Output Only] Server-defined URL for this resource with the resource id.
+ "state": "A String", # Output only. [Output Only] State of the binding.
+ "status": { # Status and derived information about the network location binding. # Output only. [Output Only] Status and derived information about the network location
+ # binding.
+ "bindingType": "A String", # Output only. [Output Only] Indicates whether a single cluster, specific clusters, or
+ # all clusters are allowed for instance creation.
+ "zonalBindings": { # Output only. [Output Only] The mapping of zones to their binding information, keyed
+ # by the zone, e.g. zones/us-central1-a.
+ "a_key": { # Binding information for a single zone.
+ "prodClusters": [ # Output only. [Output Only] Prod cluster names in the zone that this network could
+ # schedule instances in.
+ "A String",
+ ],
+ },
+ },
+ },
+ },
+ ],
+ "kind": "compute#networkLocationBindingList", # Output only. [Output Only] Type of the resource. Alwayscompute#networkLocationBindingList for a list of network
+ # location bindings.
+ "nextPageToken": "A String", # [Output Only] This token allows you to get the next page of results for
+ # list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for
+ # the query parameter pageToken in the next list request.
+ # Subsequent list requests will have their own nextPageToken to
+ # continue paging through the results.
+ "selfLink": "A String", # [Output Only] Server-defined URL for this resource.
+ "unreachables": [ # Output only. [Output Only] Unreachable resources.
+ # end_interface: MixerListResponseWithEtagBuilder
+ "A String",
+ ],
+ "warning": { # [Output Only] Informational warning message.
+ "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute
+ # Engine returns NO_RESULTS_ON_PAGE if there
+ # are no results in the response.
+ "data": [ # [Output Only] Metadata about this warning in key:
+ # value format. For example:
+ #
+ # "data": [
+ # {
+ # "key": "scope",
+ # "value": "zones/us-east1-d"
+ # }]
+ {
+ "key": "A String", # [Output Only] A key that provides more detail on the warning being
+ # returned. For example, for warnings where there are no results in a list
+ # request for a particular zone, this key might be scope and
+ # the key value might be the zone name. Other examples might be a key
+ # indicating a deprecated resource and a suggested replacement, or a
+ # warning about invalid network settings (for example, if an instance
+ # attempts to perform IP forwarding but is not enabled for IP forwarding).
+ "value": "A String", # [Output Only] A warning data value corresponding to the key.
+ },
+ ],
+ "message": "A String", # [Output Only] A human-readable description of the warning code.
+ },
+}
+
+
+
+ list_next(previous_request, previous_response)
+ Retrieves the next page of results.
+
+Args:
+ previous_request: The request for the previous page. (required)
+ previous_response: The response from the request for the previous page. (required)
+
+Returns:
+ A request object that you can call 'execute()' on to request the next
+ page. Returns None if there are no more items in the collection.
+
+
+
+
\ No newline at end of file
diff --git a/docs/dyn/compute_preview.networks.html b/docs/dyn/compute_preview.networks.html
index 9ab76d0418..bd95cfd854 100644
--- a/docs/dyn/compute_preview.networks.html
+++ b/docs/dyn/compute_preview.networks.html
@@ -1238,6 +1238,10 @@ Method Details
"networkFirewallPolicyEnforcementOrder": "A String", # The network firewall policy enforcement order. Can be either
# AFTER_CLASSIC_FIREWALL or BEFORE_CLASSIC_FIREWALL. Defaults to
# AFTER_CLASSIC_FIREWALL if the field is not specified.
+ "networkLocationBindings": [ # Output only. [Output Only] List of server-defined fully-qualified URLs of regional
+ # network location bindings in this VPC network.
+ "A String",
+ ],
"networkProfile": "A String", # A full or partial URL of the network profile to apply to this network.
# This field can be set only at resource creation time. For example, the
# following are valid URLs:
@@ -2002,6 +2006,10 @@ Method Details
"networkFirewallPolicyEnforcementOrder": "A String", # The network firewall policy enforcement order. Can be either
# AFTER_CLASSIC_FIREWALL or BEFORE_CLASSIC_FIREWALL. Defaults to
# AFTER_CLASSIC_FIREWALL if the field is not specified.
+ "networkLocationBindings": [ # Output only. [Output Only] List of server-defined fully-qualified URLs of regional
+ # network location bindings in this VPC network.
+ "A String",
+ ],
"networkProfile": "A String", # A full or partial URL of the network profile to apply to this network.
# This field can be set only at resource creation time. For example, the
# following are valid URLs:
@@ -2580,6 +2588,10 @@ Method Details
"networkFirewallPolicyEnforcementOrder": "A String", # The network firewall policy enforcement order. Can be either
# AFTER_CLASSIC_FIREWALL or BEFORE_CLASSIC_FIREWALL. Defaults to
# AFTER_CLASSIC_FIREWALL if the field is not specified.
+ "networkLocationBindings": [ # Output only. [Output Only] List of server-defined fully-qualified URLs of regional
+ # network location bindings in this VPC network.
+ "A String",
+ ],
"networkProfile": "A String", # A full or partial URL of the network profile to apply to this network.
# This field can be set only at resource creation time. For example, the
# following are valid URLs:
@@ -2984,6 +2996,10 @@ Method Details
"networkFirewallPolicyEnforcementOrder": "A String", # The network firewall policy enforcement order. Can be either
# AFTER_CLASSIC_FIREWALL or BEFORE_CLASSIC_FIREWALL. Defaults to
# AFTER_CLASSIC_FIREWALL if the field is not specified.
+ "networkLocationBindings": [ # Output only. [Output Only] List of server-defined fully-qualified URLs of regional
+ # network location bindings in this VPC network.
+ "A String",
+ ],
"networkProfile": "A String", # A full or partial URL of the network profile to apply to this network.
# This field can be set only at resource creation time. For example, the
# following are valid URLs:
diff --git a/docs/dyn/compute_preview.regionDisks.html b/docs/dyn/compute_preview.regionDisks.html
index 4bf718f976..d31d00bc7f 100644
--- a/docs/dyn/compute_preview.regionDisks.html
+++ b/docs/dyn/compute_preview.regionDisks.html
@@ -1018,7 +1018,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
diff --git a/docs/dyn/compute_preview.regionInstanceTemplates.html b/docs/dyn/compute_preview.regionInstanceTemplates.html
index 524022e394..fb9e639f1b 100644
--- a/docs/dyn/compute_preview.regionInstanceTemplates.html
+++ b/docs/dyn/compute_preview.regionInstanceTemplates.html
@@ -493,7 +493,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -1567,7 +1573,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -3030,7 +3042,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
diff --git a/docs/dyn/compute_preview.regionInstances.html b/docs/dyn/compute_preview.regionInstances.html
index e01346b3f0..1207e36341 100644
--- a/docs/dyn/compute_preview.regionInstances.html
+++ b/docs/dyn/compute_preview.regionInstances.html
@@ -579,6 +579,21 @@ Method Details
# example `n2-standard-4` and not URLs or partial URLs.
"A String",
],
+ "metadataOverrides": [ # Metadata key/value pairs assigned to instances created from this
+ # selection. Key/value pairs specified here override keys specified in the
+ # instance properties on a key-by-key basis.
+ { # Metadata
+ "key": "A String", # Key for the metadata entry. Keys must conform to the following
+ # regexp: [a-zA-Z0-9-_]+, and be less than 128 bytes in length.
+ # This is reflected as part of a URL in the metadata server. Additionally, to
+ # avoid ambiguity, keys must not conflict with any other metadata keys
+ # for the project.
+ "value": "A String", # Value for the metadata entry. These are free-form strings, and only
+ # have meaning as interpreted by the image running in the instance. The
+ # only restriction placed on values is that their size must be less than
+ # or equal to 262144 bytes (256 KiB).
+ },
+ ],
"minCpuPlatform": "A String", # Name of the minimum CPU platform to be used by this instance selection.
# e.g. 'Intel Ice Lake'.
"rank": "A String", # Rank when prioritizing the shape flexibilities.
@@ -624,7 +639,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
diff --git a/docs/dyn/compute_preview.regionSnapshots.html b/docs/dyn/compute_preview.regionSnapshots.html
index fafd34ef53..4ee5dbafa9 100644
--- a/docs/dyn/compute_preview.regionSnapshots.html
+++ b/docs/dyn/compute_preview.regionSnapshots.html
@@ -629,7 +629,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -1345,7 +1346,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -2081,7 +2083,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
diff --git a/docs/dyn/compute_preview.regionSslCertificates.html b/docs/dyn/compute_preview.regionSslCertificates.html
index 4f80f4a16e..8188fced55 100644
--- a/docs/dyn/compute_preview.regionSslCertificates.html
+++ b/docs/dyn/compute_preview.regionSslCertificates.html
@@ -81,7 +81,7 @@ Instance Methods
delete(project, region, sslCertificate, requestId=None, x__xgafv=None)
Deletes the specified SslCertificate resource in the region.
- fetchEncryptionKey(project, region, x__xgafv=None)
+ fetchEncryptionKey(project, region, name=None, x__xgafv=None)
Returns the public encryption key used to encrypt the TLS private key
get(project, region, sslCertificate, x__xgafv=None)
@@ -415,13 +415,15 @@ Method Details
- fetchEncryptionKey(project, region, x__xgafv=None)
+ fetchEncryptionKey(project, region, name=None, x__xgafv=None)
Returns the public encryption key used to encrypt the TLS private key
before upload.
Args:
project: string, Project ID for this request. (required)
region: string, Name of the region scoping this request. (required)
+ name: string, Required. Name of the SslCertificate resource to be created. The name must be 1-63
+characters long, and comply withRFC1035.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
diff --git a/docs/dyn/compute_preview.regionTargetHttpsProxies.html b/docs/dyn/compute_preview.regionTargetHttpsProxies.html
index 73f751e6ca..cfc04c81a5 100644
--- a/docs/dyn/compute_preview.regionTargetHttpsProxies.html
+++ b/docs/dyn/compute_preview.regionTargetHttpsProxies.html
@@ -558,7 +558,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -733,7 +733,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -1297,7 +1297,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -1524,7 +1524,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
diff --git a/docs/dyn/compute_preview.snapshots.html b/docs/dyn/compute_preview.snapshots.html
index 600e4dc7fb..2fcc18585d 100644
--- a/docs/dyn/compute_preview.snapshots.html
+++ b/docs/dyn/compute_preview.snapshots.html
@@ -627,7 +627,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -1344,7 +1345,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -2079,7 +2081,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
diff --git a/docs/dyn/compute_preview.sslCertificates.html b/docs/dyn/compute_preview.sslCertificates.html
index 69f39eb531..91f50929cb 100644
--- a/docs/dyn/compute_preview.sslCertificates.html
+++ b/docs/dyn/compute_preview.sslCertificates.html
@@ -87,7 +87,7 @@ Instance Methods
delete(project, sslCertificate, requestId=None, x__xgafv=None)
Deletes the specified SslCertificate resource.
- fetchEncryptionKey(project, x__xgafv=None)
+ fetchEncryptionKey(project, name=None, x__xgafv=None)
Returns the public encryption key used to encrypt the TLS private key
get(project, sslCertificate, x__xgafv=None)
@@ -701,12 +701,14 @@ Method Details
- fetchEncryptionKey(project, x__xgafv=None)
+ fetchEncryptionKey(project, name=None, x__xgafv=None)
Returns the public encryption key used to encrypt the TLS private key
before upload.
Args:
project: string, Project ID for this request. (required)
+ name: string, Required. Name of the SslCertificate resource to be created. The name must be 1-63
+characters long, and comply withRFC1035.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
diff --git a/docs/dyn/compute_preview.targetHttpsProxies.html b/docs/dyn/compute_preview.targetHttpsProxies.html
index f0c5201fbe..4b1d04eb20 100644
--- a/docs/dyn/compute_preview.targetHttpsProxies.html
+++ b/docs/dyn/compute_preview.targetHttpsProxies.html
@@ -348,7 +348,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -924,7 +924,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -1098,7 +1098,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -1661,7 +1661,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
@@ -1887,7 +1887,7 @@ Method Details
# Certificate Manager Certificates accepted formats are:
#
# - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.
- # - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
+ # - https://certificatemanager.{universeDomain}/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.
"A String",
],
"sslPolicy": "A String", # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
diff --git a/docs/dyn/compute_v1.addresses.html b/docs/dyn/compute_v1.addresses.html
index a9991a165a..a9e71a122b 100644
--- a/docs/dyn/compute_v1.addresses.html
+++ b/docs/dyn/compute_v1.addresses.html
@@ -293,6 +293,9 @@ Method Details
# character must be a lowercase letter or digit.
"network": "A String", # The URL of the network in which to reserve the address. This field can
# only be used with INTERNAL type with theVPC_PEERING purpose.
+ "networkAttachment": "A String", # Optional. The URL of the network attachment that this address comes from in the
+ # following format:
+ # projects/{project}/regions/{region_name}/networkAttachments/{network_attachment_name}.
"networkTier": "A String", # This signifies the networking tier used for configuring this address and
# can only take the following values: PREMIUM orSTANDARD. Internal IP addresses are always Premium Tier;
# global external IP addresses are always Premium Tier; regional external IP
@@ -336,6 +339,9 @@ Method Details
# the HTTP request URL. *This field is not applicable to global
# addresses.*
"selfLink": "A String", # [Output Only] Server-defined URL for the resource.
+ "serviceClassId": "A String", # Optional. Producer Service's Service class ID for the region of this address. Can
+ # only be used with network_attachment. It is not possible to use on its own;
+ # however, network_attachment can be used without service_class_id.
"status": "A String", # Output only. [Output Only] The status of the address, which can be one ofRESERVING, RESERVED, or IN_USE.
# An address that is RESERVING is currently in the process of
# being reserved. A RESERVED address is currently reserved and
@@ -832,6 +838,9 @@ Method Details
# character must be a lowercase letter or digit.
"network": "A String", # The URL of the network in which to reserve the address. This field can
# only be used with INTERNAL type with theVPC_PEERING purpose.
+ "networkAttachment": "A String", # Optional. The URL of the network attachment that this address comes from in the
+ # following format:
+ # projects/{project}/regions/{region_name}/networkAttachments/{network_attachment_name}.
"networkTier": "A String", # This signifies the networking tier used for configuring this address and
# can only take the following values: PREMIUM orSTANDARD. Internal IP addresses are always Premium Tier;
# global external IP addresses are always Premium Tier; regional external IP
@@ -875,6 +884,9 @@ Method Details
# the HTTP request URL. *This field is not applicable to global
# addresses.*
"selfLink": "A String", # [Output Only] Server-defined URL for the resource.
+ "serviceClassId": "A String", # Optional. Producer Service's Service class ID for the region of this address. Can
+ # only be used with network_attachment. It is not possible to use on its own;
+ # however, network_attachment can be used without service_class_id.
"status": "A String", # Output only. [Output Only] The status of the address, which can be one ofRESERVING, RESERVED, or IN_USE.
# An address that is RESERVING is currently in the process of
# being reserved. A RESERVED address is currently reserved and
@@ -977,6 +989,9 @@ Method Details
# character must be a lowercase letter or digit.
"network": "A String", # The URL of the network in which to reserve the address. This field can
# only be used with INTERNAL type with theVPC_PEERING purpose.
+ "networkAttachment": "A String", # Optional. The URL of the network attachment that this address comes from in the
+ # following format:
+ # projects/{project}/regions/{region_name}/networkAttachments/{network_attachment_name}.
"networkTier": "A String", # This signifies the networking tier used for configuring this address and
# can only take the following values: PREMIUM orSTANDARD. Internal IP addresses are always Premium Tier;
# global external IP addresses are always Premium Tier; regional external IP
@@ -1020,6 +1035,9 @@ Method Details
# the HTTP request URL. *This field is not applicable to global
# addresses.*
"selfLink": "A String", # [Output Only] Server-defined URL for the resource.
+ "serviceClassId": "A String", # Optional. Producer Service's Service class ID for the region of this address. Can
+ # only be used with network_attachment. It is not possible to use on its own;
+ # however, network_attachment can be used without service_class_id.
"status": "A String", # Output only. [Output Only] The status of the address, which can be one ofRESERVING, RESERVED, or IN_USE.
# An address that is RESERVING is currently in the process of
# being reserved. A RESERVED address is currently reserved and
@@ -1502,6 +1520,9 @@ Method Details
# character must be a lowercase letter or digit.
"network": "A String", # The URL of the network in which to reserve the address. This field can
# only be used with INTERNAL type with theVPC_PEERING purpose.
+ "networkAttachment": "A String", # Optional. The URL of the network attachment that this address comes from in the
+ # following format:
+ # projects/{project}/regions/{region_name}/networkAttachments/{network_attachment_name}.
"networkTier": "A String", # This signifies the networking tier used for configuring this address and
# can only take the following values: PREMIUM orSTANDARD. Internal IP addresses are always Premium Tier;
# global external IP addresses are always Premium Tier; regional external IP
@@ -1545,6 +1566,9 @@ Method Details
# the HTTP request URL. *This field is not applicable to global
# addresses.*
"selfLink": "A String", # [Output Only] Server-defined URL for the resource.
+ "serviceClassId": "A String", # Optional. Producer Service's Service class ID for the region of this address. Can
+ # only be used with network_attachment. It is not possible to use on its own;
+ # however, network_attachment can be used without service_class_id.
"status": "A String", # Output only. [Output Only] The status of the address, which can be one ofRESERVING, RESERVED, or IN_USE.
# An address that is RESERVING is currently in the process of
# being reserved. A RESERVED address is currently reserved and
diff --git a/docs/dyn/compute_v1.backendServices.html b/docs/dyn/compute_v1.backendServices.html
index 5995baa484..7fbb6a7fb8 100644
--- a/docs/dyn/compute_v1.backendServices.html
+++ b/docs/dyn/compute_v1.backendServices.html
@@ -1048,6 +1048,19 @@ Method Details
],
"description": "A String", # An optional description of this resource. Provide this property when you
# create the resource.
+ "dynamicForwarding": { # Defines a dynamic forwarding configuration for the backend service. # Dynamic forwarding configuration. This field is used to configure the
+ # backend service with dynamic forwarding feature which together with Service
+ # Extension allows customized and complex routing logic.
+ "forwardProxy": { # Defines Dynamic Forwarding Proxy configuration. # Dynamic Forwarding Proxy configuration.
+ "enabled": True or False, # A boolean flag enabling dynamic forwarding proxy.
+ "proxyMode": "A String", # Determines the dynamic forwarding proxy mode.
+ },
+ "ipPortSelection": { # Defines a IP:PORT based dynamic forwarding configuration for the backend # IP:PORT based dynamic forwarding configuration.
+ # service. Some ranges are restricted: Restricted
+ # ranges.
+ "enabled": True or False, # A boolean flag enabling IP:PORT based dynamic forwarding.
+ },
+ },
"edgeSecurityPolicy": "A String", # [Output Only] The resource URL for the edge security policy associated with
# this backend service.
"enableCDN": True or False, # If true, enables Cloud CDN for the backend service of a
@@ -3099,6 +3112,19 @@ Method Details
],
"description": "A String", # An optional description of this resource. Provide this property when you
# create the resource.
+ "dynamicForwarding": { # Defines a dynamic forwarding configuration for the backend service. # Dynamic forwarding configuration. This field is used to configure the
+ # backend service with dynamic forwarding feature which together with Service
+ # Extension allows customized and complex routing logic.
+ "forwardProxy": { # Defines Dynamic Forwarding Proxy configuration. # Dynamic Forwarding Proxy configuration.
+ "enabled": True or False, # A boolean flag enabling dynamic forwarding proxy.
+ "proxyMode": "A String", # Determines the dynamic forwarding proxy mode.
+ },
+ "ipPortSelection": { # Defines a IP:PORT based dynamic forwarding configuration for the backend # IP:PORT based dynamic forwarding configuration.
+ # service. Some ranges are restricted: Restricted
+ # ranges.
+ "enabled": True or False, # A boolean flag enabling IP:PORT based dynamic forwarding.
+ },
+ },
"edgeSecurityPolicy": "A String", # [Output Only] The resource URL for the edge security policy associated with
# this backend service.
"enableCDN": True or False, # If true, enables Cloud CDN for the backend service of a
@@ -4896,6 +4922,19 @@ Method Details
],
"description": "A String", # An optional description of this resource. Provide this property when you
# create the resource.
+ "dynamicForwarding": { # Defines a dynamic forwarding configuration for the backend service. # Dynamic forwarding configuration. This field is used to configure the
+ # backend service with dynamic forwarding feature which together with Service
+ # Extension allows customized and complex routing logic.
+ "forwardProxy": { # Defines Dynamic Forwarding Proxy configuration. # Dynamic Forwarding Proxy configuration.
+ "enabled": True or False, # A boolean flag enabling dynamic forwarding proxy.
+ "proxyMode": "A String", # Determines the dynamic forwarding proxy mode.
+ },
+ "ipPortSelection": { # Defines a IP:PORT based dynamic forwarding configuration for the backend # IP:PORT based dynamic forwarding configuration.
+ # service. Some ranges are restricted: Restricted
+ # ranges.
+ "enabled": True or False, # A boolean flag enabling IP:PORT based dynamic forwarding.
+ },
+ },
"edgeSecurityPolicy": "A String", # [Output Only] The resource URL for the edge security policy associated with
# this backend service.
"enableCDN": True or False, # If true, enables Cloud CDN for the backend service of a
@@ -6629,6 +6668,19 @@ Method Details
],
"description": "A String", # An optional description of this resource. Provide this property when you
# create the resource.
+ "dynamicForwarding": { # Defines a dynamic forwarding configuration for the backend service. # Dynamic forwarding configuration. This field is used to configure the
+ # backend service with dynamic forwarding feature which together with Service
+ # Extension allows customized and complex routing logic.
+ "forwardProxy": { # Defines Dynamic Forwarding Proxy configuration. # Dynamic Forwarding Proxy configuration.
+ "enabled": True or False, # A boolean flag enabling dynamic forwarding proxy.
+ "proxyMode": "A String", # Determines the dynamic forwarding proxy mode.
+ },
+ "ipPortSelection": { # Defines a IP:PORT based dynamic forwarding configuration for the backend # IP:PORT based dynamic forwarding configuration.
+ # service. Some ranges are restricted: Restricted
+ # ranges.
+ "enabled": True or False, # A boolean flag enabling IP:PORT based dynamic forwarding.
+ },
+ },
"edgeSecurityPolicy": "A String", # [Output Only] The resource URL for the edge security policy associated with
# this backend service.
"enableCDN": True or False, # If true, enables Cloud CDN for the backend service of a
@@ -8103,6 +8155,19 @@ Method Details
],
"description": "A String", # An optional description of this resource. Provide this property when you
# create the resource.
+ "dynamicForwarding": { # Defines a dynamic forwarding configuration for the backend service. # Dynamic forwarding configuration. This field is used to configure the
+ # backend service with dynamic forwarding feature which together with Service
+ # Extension allows customized and complex routing logic.
+ "forwardProxy": { # Defines Dynamic Forwarding Proxy configuration. # Dynamic Forwarding Proxy configuration.
+ "enabled": True or False, # A boolean flag enabling dynamic forwarding proxy.
+ "proxyMode": "A String", # Determines the dynamic forwarding proxy mode.
+ },
+ "ipPortSelection": { # Defines a IP:PORT based dynamic forwarding configuration for the backend # IP:PORT based dynamic forwarding configuration.
+ # service. Some ranges are restricted: Restricted
+ # ranges.
+ "enabled": True or False, # A boolean flag enabling IP:PORT based dynamic forwarding.
+ },
+ },
"edgeSecurityPolicy": "A String", # [Output Only] The resource URL for the edge security policy associated with
# this backend service.
"enableCDN": True or False, # If true, enables Cloud CDN for the backend service of a
@@ -9523,6 +9588,19 @@ Method Details
],
"description": "A String", # An optional description of this resource. Provide this property when you
# create the resource.
+ "dynamicForwarding": { # Defines a dynamic forwarding configuration for the backend service. # Dynamic forwarding configuration. This field is used to configure the
+ # backend service with dynamic forwarding feature which together with Service
+ # Extension allows customized and complex routing logic.
+ "forwardProxy": { # Defines Dynamic Forwarding Proxy configuration. # Dynamic Forwarding Proxy configuration.
+ "enabled": True or False, # A boolean flag enabling dynamic forwarding proxy.
+ "proxyMode": "A String", # Determines the dynamic forwarding proxy mode.
+ },
+ "ipPortSelection": { # Defines a IP:PORT based dynamic forwarding configuration for the backend # IP:PORT based dynamic forwarding configuration.
+ # service. Some ranges are restricted: Restricted
+ # ranges.
+ "enabled": True or False, # A boolean flag enabling IP:PORT based dynamic forwarding.
+ },
+ },
"edgeSecurityPolicy": "A String", # [Output Only] The resource URL for the edge security policy associated with
# this backend service.
"enableCDN": True or False, # If true, enables Cloud CDN for the backend service of a
@@ -12704,6 +12782,19 @@ Method Details
],
"description": "A String", # An optional description of this resource. Provide this property when you
# create the resource.
+ "dynamicForwarding": { # Defines a dynamic forwarding configuration for the backend service. # Dynamic forwarding configuration. This field is used to configure the
+ # backend service with dynamic forwarding feature which together with Service
+ # Extension allows customized and complex routing logic.
+ "forwardProxy": { # Defines Dynamic Forwarding Proxy configuration. # Dynamic Forwarding Proxy configuration.
+ "enabled": True or False, # A boolean flag enabling dynamic forwarding proxy.
+ "proxyMode": "A String", # Determines the dynamic forwarding proxy mode.
+ },
+ "ipPortSelection": { # Defines a IP:PORT based dynamic forwarding configuration for the backend # IP:PORT based dynamic forwarding configuration.
+ # service. Some ranges are restricted: Restricted
+ # ranges.
+ "enabled": True or False, # A boolean flag enabling IP:PORT based dynamic forwarding.
+ },
+ },
"edgeSecurityPolicy": "A String", # [Output Only] The resource URL for the edge security policy associated with
# this backend service.
"enableCDN": True or False, # If true, enables Cloud CDN for the backend service of a
diff --git a/docs/dyn/compute_v1.disks.html b/docs/dyn/compute_v1.disks.html
index bd013af221..a2c45aa5bd 100644
--- a/docs/dyn/compute_v1.disks.html
+++ b/docs/dyn/compute_v1.disks.html
@@ -980,6 +980,79 @@ Method Details
# disk from an instant snapshot that was later deleted and recreated under
# the same name, the source instant snapshot ID would identify the exact
# version of the instant snapshot that was used.
+ "sourceMachineImage": "A String", # The machine image to create the disk from. You can provide this as a
+ # partial or full URL to the resource. For example, the following are valid
+ # values:
+ #
+ #
+ # - https://www.googleapis.com/compute/v1/projects/project/global/machineImages/machineImage
+ # - projects/project/global/machineImages/machineImage
+ # - global/machineImages/machineImage
+ "sourceMachineImageDiskDeviceName": "A String", # The device name of a disk within a given machine image. The
+ # source_machine_image must be specified.
+ "sourceMachineImageEncryptionKey": { # Thecustomer-supplied
+ # encryption key of the source machine image. Required if the source
+ # machine image is protected by a customer-supplied encryption key.
+ "kmsKeyName": "A String", # The name of the encryption key that is stored in Google Cloud KMS.
+ # For example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ #
+ # The fully-qualifed key name may be returned for resource GET requests. For
+ # example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ # /cryptoKeyVersions/1
+ "kmsKeyServiceAccount": "A String", # The service account being used for the encryption request for the given KMS
+ # key. If absent, the Compute Engine default service account is used.
+ # For example:
+ #
+ # "kmsKeyServiceAccount": "name@project_id.iam.gserviceaccount.com/
+ "rawKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies a 256-bit customer-supplied
+ # encryption key, encoded in RFC
+ # 4648 base64 to either encrypt or decrypt this resource. You can
+ # provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rawKey":
+ # "SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0="
+ "rsaEncryptedKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit
+ # customer-supplied encryption key to either encrypt or decrypt this
+ # resource. You can provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rsaEncryptedKey":
+ # "ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH
+ # z0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD
+ # D6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe=="
+ #
+ # The key must meet the following requirements before you can provide it to
+ # Compute Engine:
+ #
+ # 1. The key is wrapped using a RSA public key certificate provided by
+ # Google.
+ # 2. After being wrapped, the key must be encoded in RFC 4648 base64
+ # encoding.
+ #
+ # Gets the RSA public key certificate provided by Google at:
+ #
+ #
+ # https://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem
+ "sha256": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # [Output only] TheRFC
+ # 4648 base64 encoded SHA-256 hash of the customer-supplied
+ # encryption key that protects this resource.
+ },
+ "sourceMachineImageId": "A String", # Output only. [Output Only] The unique ID of the machine image used to create this disk.
+ # This value identifies the exact machine image that was used to create this
+ # persistent disk. For example, if you created the persistent disk from a
+ # machine image that was later deleted and recreated under the same name, the
+ # source machine image ID would identify the exact version of the machine
+ # image that was used.
"sourceSnapshot": "A String", # The source snapshot used to create this disk. You can provide this as a
# partial or full URL to the resource. For example, the following are valid
# values:
@@ -2041,7 +2114,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -3230,6 +3304,79 @@ Method Details
# disk from an instant snapshot that was later deleted and recreated under
# the same name, the source instant snapshot ID would identify the exact
# version of the instant snapshot that was used.
+ "sourceMachineImage": "A String", # The machine image to create the disk from. You can provide this as a
+ # partial or full URL to the resource. For example, the following are valid
+ # values:
+ #
+ #
+ # - https://www.googleapis.com/compute/v1/projects/project/global/machineImages/machineImage
+ # - projects/project/global/machineImages/machineImage
+ # - global/machineImages/machineImage
+ "sourceMachineImageDiskDeviceName": "A String", # The device name of a disk within a given machine image. The
+ # source_machine_image must be specified.
+ "sourceMachineImageEncryptionKey": { # Thecustomer-supplied
+ # encryption key of the source machine image. Required if the source
+ # machine image is protected by a customer-supplied encryption key.
+ "kmsKeyName": "A String", # The name of the encryption key that is stored in Google Cloud KMS.
+ # For example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ #
+ # The fully-qualifed key name may be returned for resource GET requests. For
+ # example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ # /cryptoKeyVersions/1
+ "kmsKeyServiceAccount": "A String", # The service account being used for the encryption request for the given KMS
+ # key. If absent, the Compute Engine default service account is used.
+ # For example:
+ #
+ # "kmsKeyServiceAccount": "name@project_id.iam.gserviceaccount.com/
+ "rawKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies a 256-bit customer-supplied
+ # encryption key, encoded in RFC
+ # 4648 base64 to either encrypt or decrypt this resource. You can
+ # provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rawKey":
+ # "SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0="
+ "rsaEncryptedKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit
+ # customer-supplied encryption key to either encrypt or decrypt this
+ # resource. You can provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rsaEncryptedKey":
+ # "ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH
+ # z0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD
+ # D6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe=="
+ #
+ # The key must meet the following requirements before you can provide it to
+ # Compute Engine:
+ #
+ # 1. The key is wrapped using a RSA public key certificate provided by
+ # Google.
+ # 2. After being wrapped, the key must be encoded in RFC 4648 base64
+ # encoding.
+ #
+ # Gets the RSA public key certificate provided by Google at:
+ #
+ #
+ # https://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem
+ "sha256": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # [Output only] TheRFC
+ # 4648 base64 encoded SHA-256 hash of the customer-supplied
+ # encryption key that protects this resource.
+ },
+ "sourceMachineImageId": "A String", # Output only. [Output Only] The unique ID of the machine image used to create this disk.
+ # This value identifies the exact machine image that was used to create this
+ # persistent disk. For example, if you created the persistent disk from a
+ # machine image that was later deleted and recreated under the same name, the
+ # source machine image ID would identify the exact version of the machine
+ # image that was used.
"sourceSnapshot": "A String", # The source snapshot used to create this disk. You can provide this as a
# partial or full URL to the resource. For example, the following are valid
# values:
@@ -4132,6 +4279,79 @@ Method Details
# disk from an instant snapshot that was later deleted and recreated under
# the same name, the source instant snapshot ID would identify the exact
# version of the instant snapshot that was used.
+ "sourceMachineImage": "A String", # The machine image to create the disk from. You can provide this as a
+ # partial or full URL to the resource. For example, the following are valid
+ # values:
+ #
+ #
+ # - https://www.googleapis.com/compute/v1/projects/project/global/machineImages/machineImage
+ # - projects/project/global/machineImages/machineImage
+ # - global/machineImages/machineImage
+ "sourceMachineImageDiskDeviceName": "A String", # The device name of a disk within a given machine image. The
+ # source_machine_image must be specified.
+ "sourceMachineImageEncryptionKey": { # Thecustomer-supplied
+ # encryption key of the source machine image. Required if the source
+ # machine image is protected by a customer-supplied encryption key.
+ "kmsKeyName": "A String", # The name of the encryption key that is stored in Google Cloud KMS.
+ # For example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ #
+ # The fully-qualifed key name may be returned for resource GET requests. For
+ # example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ # /cryptoKeyVersions/1
+ "kmsKeyServiceAccount": "A String", # The service account being used for the encryption request for the given KMS
+ # key. If absent, the Compute Engine default service account is used.
+ # For example:
+ #
+ # "kmsKeyServiceAccount": "name@project_id.iam.gserviceaccount.com/
+ "rawKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies a 256-bit customer-supplied
+ # encryption key, encoded in RFC
+ # 4648 base64 to either encrypt or decrypt this resource. You can
+ # provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rawKey":
+ # "SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0="
+ "rsaEncryptedKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit
+ # customer-supplied encryption key to either encrypt or decrypt this
+ # resource. You can provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rsaEncryptedKey":
+ # "ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH
+ # z0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD
+ # D6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe=="
+ #
+ # The key must meet the following requirements before you can provide it to
+ # Compute Engine:
+ #
+ # 1. The key is wrapped using a RSA public key certificate provided by
+ # Google.
+ # 2. After being wrapped, the key must be encoded in RFC 4648 base64
+ # encoding.
+ #
+ # Gets the RSA public key certificate provided by Google at:
+ #
+ #
+ # https://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem
+ "sha256": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # [Output only] TheRFC
+ # 4648 base64 encoded SHA-256 hash of the customer-supplied
+ # encryption key that protects this resource.
+ },
+ "sourceMachineImageId": "A String", # Output only. [Output Only] The unique ID of the machine image used to create this disk.
+ # This value identifies the exact machine image that was used to create this
+ # persistent disk. For example, if you created the persistent disk from a
+ # machine image that was later deleted and recreated under the same name, the
+ # source machine image ID would identify the exact version of the machine
+ # image that was used.
"sourceSnapshot": "A String", # The source snapshot used to create this disk. You can provide this as a
# partial or full URL to the resource. For example, the following are valid
# values:
@@ -5043,6 +5263,79 @@ Method Details
# disk from an instant snapshot that was later deleted and recreated under
# the same name, the source instant snapshot ID would identify the exact
# version of the instant snapshot that was used.
+ "sourceMachineImage": "A String", # The machine image to create the disk from. You can provide this as a
+ # partial or full URL to the resource. For example, the following are valid
+ # values:
+ #
+ #
+ # - https://www.googleapis.com/compute/v1/projects/project/global/machineImages/machineImage
+ # - projects/project/global/machineImages/machineImage
+ # - global/machineImages/machineImage
+ "sourceMachineImageDiskDeviceName": "A String", # The device name of a disk within a given machine image. The
+ # source_machine_image must be specified.
+ "sourceMachineImageEncryptionKey": { # Thecustomer-supplied
+ # encryption key of the source machine image. Required if the source
+ # machine image is protected by a customer-supplied encryption key.
+ "kmsKeyName": "A String", # The name of the encryption key that is stored in Google Cloud KMS.
+ # For example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ #
+ # The fully-qualifed key name may be returned for resource GET requests. For
+ # example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ # /cryptoKeyVersions/1
+ "kmsKeyServiceAccount": "A String", # The service account being used for the encryption request for the given KMS
+ # key. If absent, the Compute Engine default service account is used.
+ # For example:
+ #
+ # "kmsKeyServiceAccount": "name@project_id.iam.gserviceaccount.com/
+ "rawKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies a 256-bit customer-supplied
+ # encryption key, encoded in RFC
+ # 4648 base64 to either encrypt or decrypt this resource. You can
+ # provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rawKey":
+ # "SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0="
+ "rsaEncryptedKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit
+ # customer-supplied encryption key to either encrypt or decrypt this
+ # resource. You can provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rsaEncryptedKey":
+ # "ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH
+ # z0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD
+ # D6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe=="
+ #
+ # The key must meet the following requirements before you can provide it to
+ # Compute Engine:
+ #
+ # 1. The key is wrapped using a RSA public key certificate provided by
+ # Google.
+ # 2. After being wrapped, the key must be encoded in RFC 4648 base64
+ # encoding.
+ #
+ # Gets the RSA public key certificate provided by Google at:
+ #
+ #
+ # https://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem
+ "sha256": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # [Output only] TheRFC
+ # 4648 base64 encoded SHA-256 hash of the customer-supplied
+ # encryption key that protects this resource.
+ },
+ "sourceMachineImageId": "A String", # Output only. [Output Only] The unique ID of the machine image used to create this disk.
+ # This value identifies the exact machine image that was used to create this
+ # persistent disk. For example, if you created the persistent disk from a
+ # machine image that was later deleted and recreated under the same name, the
+ # source machine image ID would identify the exact version of the machine
+ # image that was used.
"sourceSnapshot": "A String", # The source snapshot used to create this disk. You can provide this as a
# partial or full URL to the resource. For example, the following are valid
# values:
@@ -8441,6 +8734,79 @@ Method Details
# disk from an instant snapshot that was later deleted and recreated under
# the same name, the source instant snapshot ID would identify the exact
# version of the instant snapshot that was used.
+ "sourceMachineImage": "A String", # The machine image to create the disk from. You can provide this as a
+ # partial or full URL to the resource. For example, the following are valid
+ # values:
+ #
+ #
+ # - https://www.googleapis.com/compute/v1/projects/project/global/machineImages/machineImage
+ # - projects/project/global/machineImages/machineImage
+ # - global/machineImages/machineImage
+ "sourceMachineImageDiskDeviceName": "A String", # The device name of a disk within a given machine image. The
+ # source_machine_image must be specified.
+ "sourceMachineImageEncryptionKey": { # Thecustomer-supplied
+ # encryption key of the source machine image. Required if the source
+ # machine image is protected by a customer-supplied encryption key.
+ "kmsKeyName": "A String", # The name of the encryption key that is stored in Google Cloud KMS.
+ # For example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ #
+ # The fully-qualifed key name may be returned for resource GET requests. For
+ # example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ # /cryptoKeyVersions/1
+ "kmsKeyServiceAccount": "A String", # The service account being used for the encryption request for the given KMS
+ # key. If absent, the Compute Engine default service account is used.
+ # For example:
+ #
+ # "kmsKeyServiceAccount": "name@project_id.iam.gserviceaccount.com/
+ "rawKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies a 256-bit customer-supplied
+ # encryption key, encoded in RFC
+ # 4648 base64 to either encrypt or decrypt this resource. You can
+ # provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rawKey":
+ # "SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0="
+ "rsaEncryptedKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit
+ # customer-supplied encryption key to either encrypt or decrypt this
+ # resource. You can provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rsaEncryptedKey":
+ # "ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH
+ # z0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD
+ # D6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe=="
+ #
+ # The key must meet the following requirements before you can provide it to
+ # Compute Engine:
+ #
+ # 1. The key is wrapped using a RSA public key certificate provided by
+ # Google.
+ # 2. After being wrapped, the key must be encoded in RFC 4648 base64
+ # encoding.
+ #
+ # Gets the RSA public key certificate provided by Google at:
+ #
+ #
+ # https://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem
+ "sha256": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # [Output only] TheRFC
+ # 4648 base64 encoded SHA-256 hash of the customer-supplied
+ # encryption key that protects this resource.
+ },
+ "sourceMachineImageId": "A String", # Output only. [Output Only] The unique ID of the machine image used to create this disk.
+ # This value identifies the exact machine image that was used to create this
+ # persistent disk. For example, if you created the persistent disk from a
+ # machine image that was later deleted and recreated under the same name, the
+ # source machine image ID would identify the exact version of the machine
+ # image that was used.
"sourceSnapshot": "A String", # The source snapshot used to create this disk. You can provide this as a
# partial or full URL to the resource. For example, the following are valid
# values:
diff --git a/docs/dyn/compute_v1.firewallPolicies.html b/docs/dyn/compute_v1.firewallPolicies.html
index 24da69511d..d942dbcc43 100644
--- a/docs/dyn/compute_v1.firewallPolicies.html
+++ b/docs/dyn/compute_v1.firewallPolicies.html
@@ -1811,6 +1811,16 @@ Method Details
],
"parent": "A String", # Output only. [Output Only] The parent of the firewall policy.
# This field is not applicable to network firewall policies.
+ "policySource": "A String", # Indicates the source of this Firewall Policy. This field is optional on
+ # creation and defaults to USER_DEFINED.
+ #
+ # The USER_DEFINED value indicates a regular firewall policy.
+ #
+ # The SYSTEM value indicates a system-level policy managed by an
+ # internal service like GKE. This SYSTEM value is reserved for
+ # internal services and cannot be set by users during policy creation.
+ # Policies with a SYSTEM source cannot be modified or deleted by
+ # users.
"policyType": "A String", # The type of the firewall policy. This field can be one of
# VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY.
#
@@ -2874,6 +2884,16 @@ Method Details
],
"parent": "A String", # Output only. [Output Only] The parent of the firewall policy.
# This field is not applicable to network firewall policies.
+ "policySource": "A String", # Indicates the source of this Firewall Policy. This field is optional on
+ # creation and defaults to USER_DEFINED.
+ #
+ # The USER_DEFINED value indicates a regular firewall policy.
+ #
+ # The SYSTEM value indicates a system-level policy managed by an
+ # internal service like GKE. This SYSTEM value is reserved for
+ # internal services and cannot be set by users during policy creation.
+ # Policies with a SYSTEM source cannot be modified or deleted by
+ # users.
"policyType": "A String", # The type of the firewall policy. This field can be one of
# VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY.
#
@@ -3722,6 +3742,16 @@ Method Details
],
"parent": "A String", # Output only. [Output Only] The parent of the firewall policy.
# This field is not applicable to network firewall policies.
+ "policySource": "A String", # Indicates the source of this Firewall Policy. This field is optional on
+ # creation and defaults to USER_DEFINED.
+ #
+ # The USER_DEFINED value indicates a regular firewall policy.
+ #
+ # The SYSTEM value indicates a system-level policy managed by an
+ # internal service like GKE. This SYSTEM value is reserved for
+ # internal services and cannot be set by users during policy creation.
+ # Policies with a SYSTEM source cannot be modified or deleted by
+ # users.
"policyType": "A String", # The type of the firewall policy. This field can be one of
# VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY.
#
@@ -4576,6 +4606,16 @@ Method Details
],
"parent": "A String", # Output only. [Output Only] The parent of the firewall policy.
# This field is not applicable to network firewall policies.
+ "policySource": "A String", # Indicates the source of this Firewall Policy. This field is optional on
+ # creation and defaults to USER_DEFINED.
+ #
+ # The USER_DEFINED value indicates a regular firewall policy.
+ #
+ # The SYSTEM value indicates a system-level policy managed by an
+ # internal service like GKE. This SYSTEM value is reserved for
+ # internal services and cannot be set by users during policy creation.
+ # Policies with a SYSTEM source cannot be modified or deleted by
+ # users.
"policyType": "A String", # The type of the firewall policy. This field can be one of
# VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY.
#
diff --git a/docs/dyn/compute_v1.forwardingRules.html b/docs/dyn/compute_v1.forwardingRules.html
index 9be49d7d78..2e3ffb4e98 100644
--- a/docs/dyn/compute_v1.forwardingRules.html
+++ b/docs/dyn/compute_v1.forwardingRules.html
@@ -277,6 +277,63 @@ Method Details
# When creating a global external Passthrough Network Load Balancer
# forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud generated child
# forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ "IPAddresses": [ # IP addresses for which this forwarding rule accepts traffic. All IP
+ # addresses must have the same IP version, IPv4 or IPv6. When a client sends
+ # traffic that matches one of the specified IP addresses, protocol and ports,
+ # the forwarding rule directs the traffic to the referencedbackendService. All IP addresses are served by the same set of
+ # backends, and they share the target capacities specified in the backend
+ # service fairly.
+ #
+ # Global external Passthrough Network Load Balancer requires two IP addresses
+ # for each forwarding rule to provide high availability when both IP
+ # addresses are used to serve client requests. The two IP addresses must come
+ # from global IP pools that belong to two distinct Availability
+ # Groups, represented by the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0 andPASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1. TheIPAddresses field specifies zero, one, or two IP addresses:
+ #
+ # - If omitted, Google Cloud assigns two ephemeral IP addresses, one from
+ # each Availability Group.
+ # - If you specify one IP address that references an existing static IP
+ # address resource from one Availability Group, Google Cloud assigns an
+ # ephemeral IP address from the other Availability Group.
+ # - If you specify two IP addresses that reference existing static IP
+ # address resources, they are required to be from different Availability
+ # Groups.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, each IP address can be one of the following:
+ #
+ # - A static or ephemeral IPv4 address from a Google-owned IP pool.
+ # - A static IPv4 address from a global public delegated prefix.
+ # - A static or ephemeral IPv6 /96 prefix from a Google-owned IP pool.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, the two IP addresses
+ # can be of different types. One IP address can be from a BYOIP prefix while
+ # the other is from a Google-owned IP pool. One IP address can be static
+ # while the other is ephemeral. However, both IP addresses must have the same
+ # IP version, IPv4 or IPv6.
+ #
+ # The IP addresses can only be set at creation and cannot be updated.
+ #
+ # When creating a global external Passthrough Network Load Balancer
+ # forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud-generated child
+ # forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ #
+ # Refer to the IPAddress field for the formats that can be used
+ # to specify IP addresses while creating a forwarding rule.
+ #
+ # Because Passthrough Network Load Balancers do not terminate or translate
+ # traffic, the backend stack types must be compatible with the forwarding
+ # rule IP version:
+ #
+ # - If the forwarding rule IP version is IPv4, backends should be
+ # configured as dual-stack or IPv4-only.
+ # - If the forwarding rule IP version is IPv6, backends should be
+ # configured as dual-stack or IPv6-only.
+ "A String",
+ ],
"IPProtocol": "A String", # The IP protocol to which this rule applies.
#
# For protocol forwarding, valid
@@ -314,6 +371,31 @@ Method Details
"reference": "A String", # Output only. The resource name.
},
],
+ "availabilityGroup": "A String", # Output only. [Output Only] Specifies the load balancing availability group, one of the
+ # two that collectively provide high availability.
+ #
+ # Specifies the availability group of the forwarding rule. This
+ # field is for use by global external passthrough load balancers (load
+ # balancing scheme EXTERNAL_PASSTHROUGH) and is set for the
+ # child forwarding rules only. The possible values are:
+ #
+ # - AVAILABILITY_GROUP0: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP0 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port, and
+ # backend service settings as the parent forwarding rule, but has only one of
+ # the two IP addresses of the parent forwarding rule, the one with the
+ # purpose PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0.
+ # - AVAILABILITY_GROUP1: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP1 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port and backend
+ # service settings as the parent forwarding rule, but has only one of the two
+ # IP addresses of the parent forwarding rule, the one with the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1.
+ #
+ #
+ #
+ # For each global external Passthrough Network Load Balancer forwarding rule
+ # (a parent forwarding rule) that you create, Google Cloud generates two
+ # output-only child forwarding rules, one forAVAILABILITY_GROUP0 and one forAVAILABILITY_GROUP1.
"backendService": "A String", # Identifies the backend service to which the forwarding rule sends traffic.
#
# It is a required field for the following load balancers:
@@ -333,6 +415,16 @@ Method Details
# sourceIPRanges specified.
# Always empty if the current forwarding rule does not have sourceIPRanges
# specified.
+ "childForwardingRules": [ # Output only. [Output Only] The resource URLs for the child forwarding rules.
+ #
+ # Applicable only to the parent forwarding rule of global
+ # external passthrough load balancers. This field contains the list of child
+ # forwarding rule URLs associated with the parent forwarding rule: one for
+ # each availability group. AVAILABILITY_GROUP0 will be the first element, and
+ # AVAILABILITY_GROUP1 will be the second element. Refer to theavailabilityGroup field for further details. It cannot be set
+ # by any other forwarding rules.
+ "A String",
+ ],
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339
# text format.
"description": "A String", # An optional description of this resource. Provide this property when you
@@ -508,6 +600,11 @@ Method Details
"noAutomateDnsZone": True or False, # This is used in PSC consumer ForwardingRule to control whether it should
# try to auto-generate a DNS zone or not. Non-PSC forwarding rules do not use
# this field. Once set, this field is not mutable.
+ "parentForwardingRule": "A String", # Output only. [Output Only] The resource URL for the parent forwarding rule.
+ #
+ # Applicable only to the child forwarding rules of global external
+ # passthrough load balancers. This field contains the URL of the parent
+ # forwarding rule.
"portRange": "A String", # The ports, portRange, and allPorts
# fields are mutually exclusive. Only packets addressed to ports in the
# specified range will be forwarded to the backends configured with this
@@ -1113,6 +1210,63 @@ Method Details
# When creating a global external Passthrough Network Load Balancer
# forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud generated child
# forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ "IPAddresses": [ # IP addresses for which this forwarding rule accepts traffic. All IP
+ # addresses must have the same IP version, IPv4 or IPv6. When a client sends
+ # traffic that matches one of the specified IP addresses, protocol and ports,
+ # the forwarding rule directs the traffic to the referencedbackendService. All IP addresses are served by the same set of
+ # backends, and they share the target capacities specified in the backend
+ # service fairly.
+ #
+ # Global external Passthrough Network Load Balancer requires two IP addresses
+ # for each forwarding rule to provide high availability when both IP
+ # addresses are used to serve client requests. The two IP addresses must come
+ # from global IP pools that belong to two distinct Availability
+ # Groups, represented by the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0 andPASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1. TheIPAddresses field specifies zero, one, or two IP addresses:
+ #
+ # - If omitted, Google Cloud assigns two ephemeral IP addresses, one from
+ # each Availability Group.
+ # - If you specify one IP address that references an existing static IP
+ # address resource from one Availability Group, Google Cloud assigns an
+ # ephemeral IP address from the other Availability Group.
+ # - If you specify two IP addresses that reference existing static IP
+ # address resources, they are required to be from different Availability
+ # Groups.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, each IP address can be one of the following:
+ #
+ # - A static or ephemeral IPv4 address from a Google-owned IP pool.
+ # - A static IPv4 address from a global public delegated prefix.
+ # - A static or ephemeral IPv6 /96 prefix from a Google-owned IP pool.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, the two IP addresses
+ # can be of different types. One IP address can be from a BYOIP prefix while
+ # the other is from a Google-owned IP pool. One IP address can be static
+ # while the other is ephemeral. However, both IP addresses must have the same
+ # IP version, IPv4 or IPv6.
+ #
+ # The IP addresses can only be set at creation and cannot be updated.
+ #
+ # When creating a global external Passthrough Network Load Balancer
+ # forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud-generated child
+ # forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ #
+ # Refer to the IPAddress field for the formats that can be used
+ # to specify IP addresses while creating a forwarding rule.
+ #
+ # Because Passthrough Network Load Balancers do not terminate or translate
+ # traffic, the backend stack types must be compatible with the forwarding
+ # rule IP version:
+ #
+ # - If the forwarding rule IP version is IPv4, backends should be
+ # configured as dual-stack or IPv4-only.
+ # - If the forwarding rule IP version is IPv6, backends should be
+ # configured as dual-stack or IPv6-only.
+ "A String",
+ ],
"IPProtocol": "A String", # The IP protocol to which this rule applies.
#
# For protocol forwarding, valid
@@ -1150,6 +1304,31 @@ Method Details
"reference": "A String", # Output only. The resource name.
},
],
+ "availabilityGroup": "A String", # Output only. [Output Only] Specifies the load balancing availability group, one of the
+ # two that collectively provide high availability.
+ #
+ # Specifies the availability group of the forwarding rule. This
+ # field is for use by global external passthrough load balancers (load
+ # balancing scheme EXTERNAL_PASSTHROUGH) and is set for the
+ # child forwarding rules only. The possible values are:
+ #
+ # - AVAILABILITY_GROUP0: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP0 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port, and
+ # backend service settings as the parent forwarding rule, but has only one of
+ # the two IP addresses of the parent forwarding rule, the one with the
+ # purpose PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0.
+ # - AVAILABILITY_GROUP1: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP1 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port and backend
+ # service settings as the parent forwarding rule, but has only one of the two
+ # IP addresses of the parent forwarding rule, the one with the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1.
+ #
+ #
+ #
+ # For each global external Passthrough Network Load Balancer forwarding rule
+ # (a parent forwarding rule) that you create, Google Cloud generates two
+ # output-only child forwarding rules, one forAVAILABILITY_GROUP0 and one forAVAILABILITY_GROUP1.
"backendService": "A String", # Identifies the backend service to which the forwarding rule sends traffic.
#
# It is a required field for the following load balancers:
@@ -1169,6 +1348,16 @@ Method Details
# sourceIPRanges specified.
# Always empty if the current forwarding rule does not have sourceIPRanges
# specified.
+ "childForwardingRules": [ # Output only. [Output Only] The resource URLs for the child forwarding rules.
+ #
+ # Applicable only to the parent forwarding rule of global
+ # external passthrough load balancers. This field contains the list of child
+ # forwarding rule URLs associated with the parent forwarding rule: one for
+ # each availability group. AVAILABILITY_GROUP0 will be the first element, and
+ # AVAILABILITY_GROUP1 will be the second element. Refer to theavailabilityGroup field for further details. It cannot be set
+ # by any other forwarding rules.
+ "A String",
+ ],
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339
# text format.
"description": "A String", # An optional description of this resource. Provide this property when you
@@ -1344,6 +1533,11 @@ Method Details
"noAutomateDnsZone": True or False, # This is used in PSC consumer ForwardingRule to control whether it should
# try to auto-generate a DNS zone or not. Non-PSC forwarding rules do not use
# this field. Once set, this field is not mutable.
+ "parentForwardingRule": "A String", # Output only. [Output Only] The resource URL for the parent forwarding rule.
+ #
+ # Applicable only to the child forwarding rules of global external
+ # passthrough load balancers. This field contains the URL of the parent
+ # forwarding rule.
"portRange": "A String", # The ports, portRange, and allPorts
# fields are mutually exclusive. Only packets addressed to ports in the
# specified range will be forwarded to the backends configured with this
@@ -1552,6 +1746,63 @@ Method Details
# When creating a global external Passthrough Network Load Balancer
# forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud generated child
# forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ "IPAddresses": [ # IP addresses for which this forwarding rule accepts traffic. All IP
+ # addresses must have the same IP version, IPv4 or IPv6. When a client sends
+ # traffic that matches one of the specified IP addresses, protocol and ports,
+ # the forwarding rule directs the traffic to the referencedbackendService. All IP addresses are served by the same set of
+ # backends, and they share the target capacities specified in the backend
+ # service fairly.
+ #
+ # Global external Passthrough Network Load Balancer requires two IP addresses
+ # for each forwarding rule to provide high availability when both IP
+ # addresses are used to serve client requests. The two IP addresses must come
+ # from global IP pools that belong to two distinct Availability
+ # Groups, represented by the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0 andPASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1. TheIPAddresses field specifies zero, one, or two IP addresses:
+ #
+ # - If omitted, Google Cloud assigns two ephemeral IP addresses, one from
+ # each Availability Group.
+ # - If you specify one IP address that references an existing static IP
+ # address resource from one Availability Group, Google Cloud assigns an
+ # ephemeral IP address from the other Availability Group.
+ # - If you specify two IP addresses that reference existing static IP
+ # address resources, they are required to be from different Availability
+ # Groups.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, each IP address can be one of the following:
+ #
+ # - A static or ephemeral IPv4 address from a Google-owned IP pool.
+ # - A static IPv4 address from a global public delegated prefix.
+ # - A static or ephemeral IPv6 /96 prefix from a Google-owned IP pool.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, the two IP addresses
+ # can be of different types. One IP address can be from a BYOIP prefix while
+ # the other is from a Google-owned IP pool. One IP address can be static
+ # while the other is ephemeral. However, both IP addresses must have the same
+ # IP version, IPv4 or IPv6.
+ #
+ # The IP addresses can only be set at creation and cannot be updated.
+ #
+ # When creating a global external Passthrough Network Load Balancer
+ # forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud-generated child
+ # forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ #
+ # Refer to the IPAddress field for the formats that can be used
+ # to specify IP addresses while creating a forwarding rule.
+ #
+ # Because Passthrough Network Load Balancers do not terminate or translate
+ # traffic, the backend stack types must be compatible with the forwarding
+ # rule IP version:
+ #
+ # - If the forwarding rule IP version is IPv4, backends should be
+ # configured as dual-stack or IPv4-only.
+ # - If the forwarding rule IP version is IPv6, backends should be
+ # configured as dual-stack or IPv6-only.
+ "A String",
+ ],
"IPProtocol": "A String", # The IP protocol to which this rule applies.
#
# For protocol forwarding, valid
@@ -1589,6 +1840,31 @@ Method Details
"reference": "A String", # Output only. The resource name.
},
],
+ "availabilityGroup": "A String", # Output only. [Output Only] Specifies the load balancing availability group, one of the
+ # two that collectively provide high availability.
+ #
+ # Specifies the availability group of the forwarding rule. This
+ # field is for use by global external passthrough load balancers (load
+ # balancing scheme EXTERNAL_PASSTHROUGH) and is set for the
+ # child forwarding rules only. The possible values are:
+ #
+ # - AVAILABILITY_GROUP0: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP0 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port, and
+ # backend service settings as the parent forwarding rule, but has only one of
+ # the two IP addresses of the parent forwarding rule, the one with the
+ # purpose PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0.
+ # - AVAILABILITY_GROUP1: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP1 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port and backend
+ # service settings as the parent forwarding rule, but has only one of the two
+ # IP addresses of the parent forwarding rule, the one with the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1.
+ #
+ #
+ #
+ # For each global external Passthrough Network Load Balancer forwarding rule
+ # (a parent forwarding rule) that you create, Google Cloud generates two
+ # output-only child forwarding rules, one forAVAILABILITY_GROUP0 and one forAVAILABILITY_GROUP1.
"backendService": "A String", # Identifies the backend service to which the forwarding rule sends traffic.
#
# It is a required field for the following load balancers:
@@ -1608,6 +1884,16 @@ Method Details
# sourceIPRanges specified.
# Always empty if the current forwarding rule does not have sourceIPRanges
# specified.
+ "childForwardingRules": [ # Output only. [Output Only] The resource URLs for the child forwarding rules.
+ #
+ # Applicable only to the parent forwarding rule of global
+ # external passthrough load balancers. This field contains the list of child
+ # forwarding rule URLs associated with the parent forwarding rule: one for
+ # each availability group. AVAILABILITY_GROUP0 will be the first element, and
+ # AVAILABILITY_GROUP1 will be the second element. Refer to theavailabilityGroup field for further details. It cannot be set
+ # by any other forwarding rules.
+ "A String",
+ ],
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339
# text format.
"description": "A String", # An optional description of this resource. Provide this property when you
@@ -1783,6 +2069,11 @@ Method Details
"noAutomateDnsZone": True or False, # This is used in PSC consumer ForwardingRule to control whether it should
# try to auto-generate a DNS zone or not. Non-PSC forwarding rules do not use
# this field. Once set, this field is not mutable.
+ "parentForwardingRule": "A String", # Output only. [Output Only] The resource URL for the parent forwarding rule.
+ #
+ # Applicable only to the child forwarding rules of global external
+ # passthrough load balancers. This field contains the URL of the parent
+ # forwarding rule.
"portRange": "A String", # The ports, portRange, and allPorts
# fields are mutually exclusive. Only packets addressed to ports in the
# specified range will be forwarded to the backends configured with this
@@ -2371,6 +2662,63 @@ Method Details
# When creating a global external Passthrough Network Load Balancer
# forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud generated child
# forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ "IPAddresses": [ # IP addresses for which this forwarding rule accepts traffic. All IP
+ # addresses must have the same IP version, IPv4 or IPv6. When a client sends
+ # traffic that matches one of the specified IP addresses, protocol and ports,
+ # the forwarding rule directs the traffic to the referencedbackendService. All IP addresses are served by the same set of
+ # backends, and they share the target capacities specified in the backend
+ # service fairly.
+ #
+ # Global external Passthrough Network Load Balancer requires two IP addresses
+ # for each forwarding rule to provide high availability when both IP
+ # addresses are used to serve client requests. The two IP addresses must come
+ # from global IP pools that belong to two distinct Availability
+ # Groups, represented by the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0 andPASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1. TheIPAddresses field specifies zero, one, or two IP addresses:
+ #
+ # - If omitted, Google Cloud assigns two ephemeral IP addresses, one from
+ # each Availability Group.
+ # - If you specify one IP address that references an existing static IP
+ # address resource from one Availability Group, Google Cloud assigns an
+ # ephemeral IP address from the other Availability Group.
+ # - If you specify two IP addresses that reference existing static IP
+ # address resources, they are required to be from different Availability
+ # Groups.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, each IP address can be one of the following:
+ #
+ # - A static or ephemeral IPv4 address from a Google-owned IP pool.
+ # - A static IPv4 address from a global public delegated prefix.
+ # - A static or ephemeral IPv6 /96 prefix from a Google-owned IP pool.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, the two IP addresses
+ # can be of different types. One IP address can be from a BYOIP prefix while
+ # the other is from a Google-owned IP pool. One IP address can be static
+ # while the other is ephemeral. However, both IP addresses must have the same
+ # IP version, IPv4 or IPv6.
+ #
+ # The IP addresses can only be set at creation and cannot be updated.
+ #
+ # When creating a global external Passthrough Network Load Balancer
+ # forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud-generated child
+ # forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ #
+ # Refer to the IPAddress field for the formats that can be used
+ # to specify IP addresses while creating a forwarding rule.
+ #
+ # Because Passthrough Network Load Balancers do not terminate or translate
+ # traffic, the backend stack types must be compatible with the forwarding
+ # rule IP version:
+ #
+ # - If the forwarding rule IP version is IPv4, backends should be
+ # configured as dual-stack or IPv4-only.
+ # - If the forwarding rule IP version is IPv6, backends should be
+ # configured as dual-stack or IPv6-only.
+ "A String",
+ ],
"IPProtocol": "A String", # The IP protocol to which this rule applies.
#
# For protocol forwarding, valid
@@ -2408,6 +2756,31 @@ Method Details
"reference": "A String", # Output only. The resource name.
},
],
+ "availabilityGroup": "A String", # Output only. [Output Only] Specifies the load balancing availability group, one of the
+ # two that collectively provide high availability.
+ #
+ # Specifies the availability group of the forwarding rule. This
+ # field is for use by global external passthrough load balancers (load
+ # balancing scheme EXTERNAL_PASSTHROUGH) and is set for the
+ # child forwarding rules only. The possible values are:
+ #
+ # - AVAILABILITY_GROUP0: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP0 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port, and
+ # backend service settings as the parent forwarding rule, but has only one of
+ # the two IP addresses of the parent forwarding rule, the one with the
+ # purpose PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0.
+ # - AVAILABILITY_GROUP1: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP1 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port and backend
+ # service settings as the parent forwarding rule, but has only one of the two
+ # IP addresses of the parent forwarding rule, the one with the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1.
+ #
+ #
+ #
+ # For each global external Passthrough Network Load Balancer forwarding rule
+ # (a parent forwarding rule) that you create, Google Cloud generates two
+ # output-only child forwarding rules, one forAVAILABILITY_GROUP0 and one forAVAILABILITY_GROUP1.
"backendService": "A String", # Identifies the backend service to which the forwarding rule sends traffic.
#
# It is a required field for the following load balancers:
@@ -2427,6 +2800,16 @@ Method Details
# sourceIPRanges specified.
# Always empty if the current forwarding rule does not have sourceIPRanges
# specified.
+ "childForwardingRules": [ # Output only. [Output Only] The resource URLs for the child forwarding rules.
+ #
+ # Applicable only to the parent forwarding rule of global
+ # external passthrough load balancers. This field contains the list of child
+ # forwarding rule URLs associated with the parent forwarding rule: one for
+ # each availability group. AVAILABILITY_GROUP0 will be the first element, and
+ # AVAILABILITY_GROUP1 will be the second element. Refer to theavailabilityGroup field for further details. It cannot be set
+ # by any other forwarding rules.
+ "A String",
+ ],
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339
# text format.
"description": "A String", # An optional description of this resource. Provide this property when you
@@ -2602,6 +2985,11 @@ Method Details
"noAutomateDnsZone": True or False, # This is used in PSC consumer ForwardingRule to control whether it should
# try to auto-generate a DNS zone or not. Non-PSC forwarding rules do not use
# this field. Once set, this field is not mutable.
+ "parentForwardingRule": "A String", # Output only. [Output Only] The resource URL for the parent forwarding rule.
+ #
+ # Applicable only to the child forwarding rules of global external
+ # passthrough load balancers. This field contains the URL of the parent
+ # forwarding rule.
"portRange": "A String", # The ports, portRange, and allPorts
# fields are mutually exclusive. Only packets addressed to ports in the
# specified range will be forwarded to the backends configured with this
@@ -2862,6 +3250,63 @@ Method Details
# When creating a global external Passthrough Network Load Balancer
# forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud generated child
# forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ "IPAddresses": [ # IP addresses for which this forwarding rule accepts traffic. All IP
+ # addresses must have the same IP version, IPv4 or IPv6. When a client sends
+ # traffic that matches one of the specified IP addresses, protocol and ports,
+ # the forwarding rule directs the traffic to the referencedbackendService. All IP addresses are served by the same set of
+ # backends, and they share the target capacities specified in the backend
+ # service fairly.
+ #
+ # Global external Passthrough Network Load Balancer requires two IP addresses
+ # for each forwarding rule to provide high availability when both IP
+ # addresses are used to serve client requests. The two IP addresses must come
+ # from global IP pools that belong to two distinct Availability
+ # Groups, represented by the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0 andPASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1. TheIPAddresses field specifies zero, one, or two IP addresses:
+ #
+ # - If omitted, Google Cloud assigns two ephemeral IP addresses, one from
+ # each Availability Group.
+ # - If you specify one IP address that references an existing static IP
+ # address resource from one Availability Group, Google Cloud assigns an
+ # ephemeral IP address from the other Availability Group.
+ # - If you specify two IP addresses that reference existing static IP
+ # address resources, they are required to be from different Availability
+ # Groups.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, each IP address can be one of the following:
+ #
+ # - A static or ephemeral IPv4 address from a Google-owned IP pool.
+ # - A static IPv4 address from a global public delegated prefix.
+ # - A static or ephemeral IPv6 /96 prefix from a Google-owned IP pool.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, the two IP addresses
+ # can be of different types. One IP address can be from a BYOIP prefix while
+ # the other is from a Google-owned IP pool. One IP address can be static
+ # while the other is ephemeral. However, both IP addresses must have the same
+ # IP version, IPv4 or IPv6.
+ #
+ # The IP addresses can only be set at creation and cannot be updated.
+ #
+ # When creating a global external Passthrough Network Load Balancer
+ # forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud-generated child
+ # forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ #
+ # Refer to the IPAddress field for the formats that can be used
+ # to specify IP addresses while creating a forwarding rule.
+ #
+ # Because Passthrough Network Load Balancers do not terminate or translate
+ # traffic, the backend stack types must be compatible with the forwarding
+ # rule IP version:
+ #
+ # - If the forwarding rule IP version is IPv4, backends should be
+ # configured as dual-stack or IPv4-only.
+ # - If the forwarding rule IP version is IPv6, backends should be
+ # configured as dual-stack or IPv6-only.
+ "A String",
+ ],
"IPProtocol": "A String", # The IP protocol to which this rule applies.
#
# For protocol forwarding, valid
@@ -2899,6 +3344,31 @@ Method Details
"reference": "A String", # Output only. The resource name.
},
],
+ "availabilityGroup": "A String", # Output only. [Output Only] Specifies the load balancing availability group, one of the
+ # two that collectively provide high availability.
+ #
+ # Specifies the availability group of the forwarding rule. This
+ # field is for use by global external passthrough load balancers (load
+ # balancing scheme EXTERNAL_PASSTHROUGH) and is set for the
+ # child forwarding rules only. The possible values are:
+ #
+ # - AVAILABILITY_GROUP0: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP0 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port, and
+ # backend service settings as the parent forwarding rule, but has only one of
+ # the two IP addresses of the parent forwarding rule, the one with the
+ # purpose PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0.
+ # - AVAILABILITY_GROUP1: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP1 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port and backend
+ # service settings as the parent forwarding rule, but has only one of the two
+ # IP addresses of the parent forwarding rule, the one with the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1.
+ #
+ #
+ #
+ # For each global external Passthrough Network Load Balancer forwarding rule
+ # (a parent forwarding rule) that you create, Google Cloud generates two
+ # output-only child forwarding rules, one forAVAILABILITY_GROUP0 and one forAVAILABILITY_GROUP1.
"backendService": "A String", # Identifies the backend service to which the forwarding rule sends traffic.
#
# It is a required field for the following load balancers:
@@ -2918,6 +3388,16 @@ Method Details
# sourceIPRanges specified.
# Always empty if the current forwarding rule does not have sourceIPRanges
# specified.
+ "childForwardingRules": [ # Output only. [Output Only] The resource URLs for the child forwarding rules.
+ #
+ # Applicable only to the parent forwarding rule of global
+ # external passthrough load balancers. This field contains the list of child
+ # forwarding rule URLs associated with the parent forwarding rule: one for
+ # each availability group. AVAILABILITY_GROUP0 will be the first element, and
+ # AVAILABILITY_GROUP1 will be the second element. Refer to theavailabilityGroup field for further details. It cannot be set
+ # by any other forwarding rules.
+ "A String",
+ ],
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339
# text format.
"description": "A String", # An optional description of this resource. Provide this property when you
@@ -3093,6 +3573,11 @@ Method Details
"noAutomateDnsZone": True or False, # This is used in PSC consumer ForwardingRule to control whether it should
# try to auto-generate a DNS zone or not. Non-PSC forwarding rules do not use
# this field. Once set, this field is not mutable.
+ "parentForwardingRule": "A String", # Output only. [Output Only] The resource URL for the parent forwarding rule.
+ #
+ # Applicable only to the child forwarding rules of global external
+ # passthrough load balancers. This field contains the URL of the parent
+ # forwarding rule.
"portRange": "A String", # The ports, portRange, and allPorts
# fields are mutually exclusive. Only packets addressed to ports in the
# specified range will be forwarded to the backends configured with this
diff --git a/docs/dyn/compute_v1.globalAddresses.html b/docs/dyn/compute_v1.globalAddresses.html
index 1ea3539bdf..1c324e5d27 100644
--- a/docs/dyn/compute_v1.globalAddresses.html
+++ b/docs/dyn/compute_v1.globalAddresses.html
@@ -502,6 +502,9 @@ Method Details
# character must be a lowercase letter or digit.
"network": "A String", # The URL of the network in which to reserve the address. This field can
# only be used with INTERNAL type with theVPC_PEERING purpose.
+ "networkAttachment": "A String", # Optional. The URL of the network attachment that this address comes from in the
+ # following format:
+ # projects/{project}/regions/{region_name}/networkAttachments/{network_attachment_name}.
"networkTier": "A String", # This signifies the networking tier used for configuring this address and
# can only take the following values: PREMIUM orSTANDARD. Internal IP addresses are always Premium Tier;
# global external IP addresses are always Premium Tier; regional external IP
@@ -545,6 +548,9 @@ Method Details
# the HTTP request URL. *This field is not applicable to global
# addresses.*
"selfLink": "A String", # [Output Only] Server-defined URL for the resource.
+ "serviceClassId": "A String", # Optional. Producer Service's Service class ID for the region of this address. Can
+ # only be used with network_attachment. It is not possible to use on its own;
+ # however, network_attachment can be used without service_class_id.
"status": "A String", # Output only. [Output Only] The status of the address, which can be one ofRESERVING, RESERVED, or IN_USE.
# An address that is RESERVING is currently in the process of
# being reserved. A RESERVED address is currently reserved and
@@ -646,6 +652,9 @@ Method Details
# character must be a lowercase letter or digit.
"network": "A String", # The URL of the network in which to reserve the address. This field can
# only be used with INTERNAL type with theVPC_PEERING purpose.
+ "networkAttachment": "A String", # Optional. The URL of the network attachment that this address comes from in the
+ # following format:
+ # projects/{project}/regions/{region_name}/networkAttachments/{network_attachment_name}.
"networkTier": "A String", # This signifies the networking tier used for configuring this address and
# can only take the following values: PREMIUM orSTANDARD. Internal IP addresses are always Premium Tier;
# global external IP addresses are always Premium Tier; regional external IP
@@ -689,6 +698,9 @@ Method Details
# the HTTP request URL. *This field is not applicable to global
# addresses.*
"selfLink": "A String", # [Output Only] Server-defined URL for the resource.
+ "serviceClassId": "A String", # Optional. Producer Service's Service class ID for the region of this address. Can
+ # only be used with network_attachment. It is not possible to use on its own;
+ # however, network_attachment can be used without service_class_id.
"status": "A String", # Output only. [Output Only] The status of the address, which can be one ofRESERVING, RESERVED, or IN_USE.
# An address that is RESERVING is currently in the process of
# being reserved. A RESERVED address is currently reserved and
@@ -1169,6 +1181,9 @@ Method Details
# character must be a lowercase letter or digit.
"network": "A String", # The URL of the network in which to reserve the address. This field can
# only be used with INTERNAL type with theVPC_PEERING purpose.
+ "networkAttachment": "A String", # Optional. The URL of the network attachment that this address comes from in the
+ # following format:
+ # projects/{project}/regions/{region_name}/networkAttachments/{network_attachment_name}.
"networkTier": "A String", # This signifies the networking tier used for configuring this address and
# can only take the following values: PREMIUM orSTANDARD. Internal IP addresses are always Premium Tier;
# global external IP addresses are always Premium Tier; regional external IP
@@ -1212,6 +1227,9 @@ Method Details
# the HTTP request URL. *This field is not applicable to global
# addresses.*
"selfLink": "A String", # [Output Only] Server-defined URL for the resource.
+ "serviceClassId": "A String", # Optional. Producer Service's Service class ID for the region of this address. Can
+ # only be used with network_attachment. It is not possible to use on its own;
+ # however, network_attachment can be used without service_class_id.
"status": "A String", # Output only. [Output Only] The status of the address, which can be one ofRESERVING, RESERVED, or IN_USE.
# An address that is RESERVING is currently in the process of
# being reserved. A RESERVED address is currently reserved and
diff --git a/docs/dyn/compute_v1.globalForwardingRules.html b/docs/dyn/compute_v1.globalForwardingRules.html
index 82370ba0f2..4239c23f11 100644
--- a/docs/dyn/compute_v1.globalForwardingRules.html
+++ b/docs/dyn/compute_v1.globalForwardingRules.html
@@ -491,6 +491,63 @@ Method Details
# When creating a global external Passthrough Network Load Balancer
# forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud generated child
# forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ "IPAddresses": [ # IP addresses for which this forwarding rule accepts traffic. All IP
+ # addresses must have the same IP version, IPv4 or IPv6. When a client sends
+ # traffic that matches one of the specified IP addresses, protocol and ports,
+ # the forwarding rule directs the traffic to the referencedbackendService. All IP addresses are served by the same set of
+ # backends, and they share the target capacities specified in the backend
+ # service fairly.
+ #
+ # Global external Passthrough Network Load Balancer requires two IP addresses
+ # for each forwarding rule to provide high availability when both IP
+ # addresses are used to serve client requests. The two IP addresses must come
+ # from global IP pools that belong to two distinct Availability
+ # Groups, represented by the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0 andPASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1. TheIPAddresses field specifies zero, one, or two IP addresses:
+ #
+ # - If omitted, Google Cloud assigns two ephemeral IP addresses, one from
+ # each Availability Group.
+ # - If you specify one IP address that references an existing static IP
+ # address resource from one Availability Group, Google Cloud assigns an
+ # ephemeral IP address from the other Availability Group.
+ # - If you specify two IP addresses that reference existing static IP
+ # address resources, they are required to be from different Availability
+ # Groups.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, each IP address can be one of the following:
+ #
+ # - A static or ephemeral IPv4 address from a Google-owned IP pool.
+ # - A static IPv4 address from a global public delegated prefix.
+ # - A static or ephemeral IPv6 /96 prefix from a Google-owned IP pool.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, the two IP addresses
+ # can be of different types. One IP address can be from a BYOIP prefix while
+ # the other is from a Google-owned IP pool. One IP address can be static
+ # while the other is ephemeral. However, both IP addresses must have the same
+ # IP version, IPv4 or IPv6.
+ #
+ # The IP addresses can only be set at creation and cannot be updated.
+ #
+ # When creating a global external Passthrough Network Load Balancer
+ # forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud-generated child
+ # forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ #
+ # Refer to the IPAddress field for the formats that can be used
+ # to specify IP addresses while creating a forwarding rule.
+ #
+ # Because Passthrough Network Load Balancers do not terminate or translate
+ # traffic, the backend stack types must be compatible with the forwarding
+ # rule IP version:
+ #
+ # - If the forwarding rule IP version is IPv4, backends should be
+ # configured as dual-stack or IPv4-only.
+ # - If the forwarding rule IP version is IPv6, backends should be
+ # configured as dual-stack or IPv6-only.
+ "A String",
+ ],
"IPProtocol": "A String", # The IP protocol to which this rule applies.
#
# For protocol forwarding, valid
@@ -528,6 +585,31 @@ Method Details
"reference": "A String", # Output only. The resource name.
},
],
+ "availabilityGroup": "A String", # Output only. [Output Only] Specifies the load balancing availability group, one of the
+ # two that collectively provide high availability.
+ #
+ # Specifies the availability group of the forwarding rule. This
+ # field is for use by global external passthrough load balancers (load
+ # balancing scheme EXTERNAL_PASSTHROUGH) and is set for the
+ # child forwarding rules only. The possible values are:
+ #
+ # - AVAILABILITY_GROUP0: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP0 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port, and
+ # backend service settings as the parent forwarding rule, but has only one of
+ # the two IP addresses of the parent forwarding rule, the one with the
+ # purpose PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0.
+ # - AVAILABILITY_GROUP1: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP1 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port and backend
+ # service settings as the parent forwarding rule, but has only one of the two
+ # IP addresses of the parent forwarding rule, the one with the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1.
+ #
+ #
+ #
+ # For each global external Passthrough Network Load Balancer forwarding rule
+ # (a parent forwarding rule) that you create, Google Cloud generates two
+ # output-only child forwarding rules, one forAVAILABILITY_GROUP0 and one forAVAILABILITY_GROUP1.
"backendService": "A String", # Identifies the backend service to which the forwarding rule sends traffic.
#
# It is a required field for the following load balancers:
@@ -547,6 +629,16 @@ Method Details
# sourceIPRanges specified.
# Always empty if the current forwarding rule does not have sourceIPRanges
# specified.
+ "childForwardingRules": [ # Output only. [Output Only] The resource URLs for the child forwarding rules.
+ #
+ # Applicable only to the parent forwarding rule of global
+ # external passthrough load balancers. This field contains the list of child
+ # forwarding rule URLs associated with the parent forwarding rule: one for
+ # each availability group. AVAILABILITY_GROUP0 will be the first element, and
+ # AVAILABILITY_GROUP1 will be the second element. Refer to theavailabilityGroup field for further details. It cannot be set
+ # by any other forwarding rules.
+ "A String",
+ ],
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339
# text format.
"description": "A String", # An optional description of this resource. Provide this property when you
@@ -722,6 +814,11 @@ Method Details
"noAutomateDnsZone": True or False, # This is used in PSC consumer ForwardingRule to control whether it should
# try to auto-generate a DNS zone or not. Non-PSC forwarding rules do not use
# this field. Once set, this field is not mutable.
+ "parentForwardingRule": "A String", # Output only. [Output Only] The resource URL for the parent forwarding rule.
+ #
+ # Applicable only to the child forwarding rules of global external
+ # passthrough load balancers. This field contains the URL of the parent
+ # forwarding rule.
"portRange": "A String", # The ports, portRange, and allPorts
# fields are mutually exclusive. Only packets addressed to ports in the
# specified range will be forwarded to the backends configured with this
@@ -929,6 +1026,63 @@ Method Details
# When creating a global external Passthrough Network Load Balancer
# forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud generated child
# forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ "IPAddresses": [ # IP addresses for which this forwarding rule accepts traffic. All IP
+ # addresses must have the same IP version, IPv4 or IPv6. When a client sends
+ # traffic that matches one of the specified IP addresses, protocol and ports,
+ # the forwarding rule directs the traffic to the referencedbackendService. All IP addresses are served by the same set of
+ # backends, and they share the target capacities specified in the backend
+ # service fairly.
+ #
+ # Global external Passthrough Network Load Balancer requires two IP addresses
+ # for each forwarding rule to provide high availability when both IP
+ # addresses are used to serve client requests. The two IP addresses must come
+ # from global IP pools that belong to two distinct Availability
+ # Groups, represented by the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0 andPASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1. TheIPAddresses field specifies zero, one, or two IP addresses:
+ #
+ # - If omitted, Google Cloud assigns two ephemeral IP addresses, one from
+ # each Availability Group.
+ # - If you specify one IP address that references an existing static IP
+ # address resource from one Availability Group, Google Cloud assigns an
+ # ephemeral IP address from the other Availability Group.
+ # - If you specify two IP addresses that reference existing static IP
+ # address resources, they are required to be from different Availability
+ # Groups.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, each IP address can be one of the following:
+ #
+ # - A static or ephemeral IPv4 address from a Google-owned IP pool.
+ # - A static IPv4 address from a global public delegated prefix.
+ # - A static or ephemeral IPv6 /96 prefix from a Google-owned IP pool.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, the two IP addresses
+ # can be of different types. One IP address can be from a BYOIP prefix while
+ # the other is from a Google-owned IP pool. One IP address can be static
+ # while the other is ephemeral. However, both IP addresses must have the same
+ # IP version, IPv4 or IPv6.
+ #
+ # The IP addresses can only be set at creation and cannot be updated.
+ #
+ # When creating a global external Passthrough Network Load Balancer
+ # forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud-generated child
+ # forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ #
+ # Refer to the IPAddress field for the formats that can be used
+ # to specify IP addresses while creating a forwarding rule.
+ #
+ # Because Passthrough Network Load Balancers do not terminate or translate
+ # traffic, the backend stack types must be compatible with the forwarding
+ # rule IP version:
+ #
+ # - If the forwarding rule IP version is IPv4, backends should be
+ # configured as dual-stack or IPv4-only.
+ # - If the forwarding rule IP version is IPv6, backends should be
+ # configured as dual-stack or IPv6-only.
+ "A String",
+ ],
"IPProtocol": "A String", # The IP protocol to which this rule applies.
#
# For protocol forwarding, valid
@@ -966,6 +1120,31 @@ Method Details
"reference": "A String", # Output only. The resource name.
},
],
+ "availabilityGroup": "A String", # Output only. [Output Only] Specifies the load balancing availability group, one of the
+ # two that collectively provide high availability.
+ #
+ # Specifies the availability group of the forwarding rule. This
+ # field is for use by global external passthrough load balancers (load
+ # balancing scheme EXTERNAL_PASSTHROUGH) and is set for the
+ # child forwarding rules only. The possible values are:
+ #
+ # - AVAILABILITY_GROUP0: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP0 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port, and
+ # backend service settings as the parent forwarding rule, but has only one of
+ # the two IP addresses of the parent forwarding rule, the one with the
+ # purpose PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0.
+ # - AVAILABILITY_GROUP1: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP1 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port and backend
+ # service settings as the parent forwarding rule, but has only one of the two
+ # IP addresses of the parent forwarding rule, the one with the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1.
+ #
+ #
+ #
+ # For each global external Passthrough Network Load Balancer forwarding rule
+ # (a parent forwarding rule) that you create, Google Cloud generates two
+ # output-only child forwarding rules, one forAVAILABILITY_GROUP0 and one forAVAILABILITY_GROUP1.
"backendService": "A String", # Identifies the backend service to which the forwarding rule sends traffic.
#
# It is a required field for the following load balancers:
@@ -985,6 +1164,16 @@ Method Details
# sourceIPRanges specified.
# Always empty if the current forwarding rule does not have sourceIPRanges
# specified.
+ "childForwardingRules": [ # Output only. [Output Only] The resource URLs for the child forwarding rules.
+ #
+ # Applicable only to the parent forwarding rule of global
+ # external passthrough load balancers. This field contains the list of child
+ # forwarding rule URLs associated with the parent forwarding rule: one for
+ # each availability group. AVAILABILITY_GROUP0 will be the first element, and
+ # AVAILABILITY_GROUP1 will be the second element. Refer to theavailabilityGroup field for further details. It cannot be set
+ # by any other forwarding rules.
+ "A String",
+ ],
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339
# text format.
"description": "A String", # An optional description of this resource. Provide this property when you
@@ -1160,6 +1349,11 @@ Method Details
"noAutomateDnsZone": True or False, # This is used in PSC consumer ForwardingRule to control whether it should
# try to auto-generate a DNS zone or not. Non-PSC forwarding rules do not use
# this field. Once set, this field is not mutable.
+ "parentForwardingRule": "A String", # Output only. [Output Only] The resource URL for the parent forwarding rule.
+ #
+ # Applicable only to the child forwarding rules of global external
+ # passthrough load balancers. This field contains the URL of the parent
+ # forwarding rule.
"portRange": "A String", # The ports, portRange, and allPorts
# fields are mutually exclusive. Only packets addressed to ports in the
# specified range will be forwarded to the backends configured with this
@@ -1747,6 +1941,63 @@ Method Details
# When creating a global external Passthrough Network Load Balancer
# forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud generated child
# forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ "IPAddresses": [ # IP addresses for which this forwarding rule accepts traffic. All IP
+ # addresses must have the same IP version, IPv4 or IPv6. When a client sends
+ # traffic that matches one of the specified IP addresses, protocol and ports,
+ # the forwarding rule directs the traffic to the referencedbackendService. All IP addresses are served by the same set of
+ # backends, and they share the target capacities specified in the backend
+ # service fairly.
+ #
+ # Global external Passthrough Network Load Balancer requires two IP addresses
+ # for each forwarding rule to provide high availability when both IP
+ # addresses are used to serve client requests. The two IP addresses must come
+ # from global IP pools that belong to two distinct Availability
+ # Groups, represented by the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0 andPASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1. TheIPAddresses field specifies zero, one, or two IP addresses:
+ #
+ # - If omitted, Google Cloud assigns two ephemeral IP addresses, one from
+ # each Availability Group.
+ # - If you specify one IP address that references an existing static IP
+ # address resource from one Availability Group, Google Cloud assigns an
+ # ephemeral IP address from the other Availability Group.
+ # - If you specify two IP addresses that reference existing static IP
+ # address resources, they are required to be from different Availability
+ # Groups.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, each IP address can be one of the following:
+ #
+ # - A static or ephemeral IPv4 address from a Google-owned IP pool.
+ # - A static IPv4 address from a global public delegated prefix.
+ # - A static or ephemeral IPv6 /96 prefix from a Google-owned IP pool.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, the two IP addresses
+ # can be of different types. One IP address can be from a BYOIP prefix while
+ # the other is from a Google-owned IP pool. One IP address can be static
+ # while the other is ephemeral. However, both IP addresses must have the same
+ # IP version, IPv4 or IPv6.
+ #
+ # The IP addresses can only be set at creation and cannot be updated.
+ #
+ # When creating a global external Passthrough Network Load Balancer
+ # forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud-generated child
+ # forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ #
+ # Refer to the IPAddress field for the formats that can be used
+ # to specify IP addresses while creating a forwarding rule.
+ #
+ # Because Passthrough Network Load Balancers do not terminate or translate
+ # traffic, the backend stack types must be compatible with the forwarding
+ # rule IP version:
+ #
+ # - If the forwarding rule IP version is IPv4, backends should be
+ # configured as dual-stack or IPv4-only.
+ # - If the forwarding rule IP version is IPv6, backends should be
+ # configured as dual-stack or IPv6-only.
+ "A String",
+ ],
"IPProtocol": "A String", # The IP protocol to which this rule applies.
#
# For protocol forwarding, valid
@@ -1784,6 +2035,31 @@ Method Details
"reference": "A String", # Output only. The resource name.
},
],
+ "availabilityGroup": "A String", # Output only. [Output Only] Specifies the load balancing availability group, one of the
+ # two that collectively provide high availability.
+ #
+ # Specifies the availability group of the forwarding rule. This
+ # field is for use by global external passthrough load balancers (load
+ # balancing scheme EXTERNAL_PASSTHROUGH) and is set for the
+ # child forwarding rules only. The possible values are:
+ #
+ # - AVAILABILITY_GROUP0: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP0 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port, and
+ # backend service settings as the parent forwarding rule, but has only one of
+ # the two IP addresses of the parent forwarding rule, the one with the
+ # purpose PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0.
+ # - AVAILABILITY_GROUP1: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP1 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port and backend
+ # service settings as the parent forwarding rule, but has only one of the two
+ # IP addresses of the parent forwarding rule, the one with the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1.
+ #
+ #
+ #
+ # For each global external Passthrough Network Load Balancer forwarding rule
+ # (a parent forwarding rule) that you create, Google Cloud generates two
+ # output-only child forwarding rules, one forAVAILABILITY_GROUP0 and one forAVAILABILITY_GROUP1.
"backendService": "A String", # Identifies the backend service to which the forwarding rule sends traffic.
#
# It is a required field for the following load balancers:
@@ -1803,6 +2079,16 @@ Method Details
# sourceIPRanges specified.
# Always empty if the current forwarding rule does not have sourceIPRanges
# specified.
+ "childForwardingRules": [ # Output only. [Output Only] The resource URLs for the child forwarding rules.
+ #
+ # Applicable only to the parent forwarding rule of global
+ # external passthrough load balancers. This field contains the list of child
+ # forwarding rule URLs associated with the parent forwarding rule: one for
+ # each availability group. AVAILABILITY_GROUP0 will be the first element, and
+ # AVAILABILITY_GROUP1 will be the second element. Refer to theavailabilityGroup field for further details. It cannot be set
+ # by any other forwarding rules.
+ "A String",
+ ],
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339
# text format.
"description": "A String", # An optional description of this resource. Provide this property when you
@@ -1978,6 +2264,11 @@ Method Details
"noAutomateDnsZone": True or False, # This is used in PSC consumer ForwardingRule to control whether it should
# try to auto-generate a DNS zone or not. Non-PSC forwarding rules do not use
# this field. Once set, this field is not mutable.
+ "parentForwardingRule": "A String", # Output only. [Output Only] The resource URL for the parent forwarding rule.
+ #
+ # Applicable only to the child forwarding rules of global external
+ # passthrough load balancers. This field contains the URL of the parent
+ # forwarding rule.
"portRange": "A String", # The ports, portRange, and allPorts
# fields are mutually exclusive. Only packets addressed to ports in the
# specified range will be forwarded to the backends configured with this
@@ -2237,6 +2528,63 @@ Method Details
# When creating a global external Passthrough Network Load Balancer
# forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud generated child
# forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ "IPAddresses": [ # IP addresses for which this forwarding rule accepts traffic. All IP
+ # addresses must have the same IP version, IPv4 or IPv6. When a client sends
+ # traffic that matches one of the specified IP addresses, protocol and ports,
+ # the forwarding rule directs the traffic to the referencedbackendService. All IP addresses are served by the same set of
+ # backends, and they share the target capacities specified in the backend
+ # service fairly.
+ #
+ # Global external Passthrough Network Load Balancer requires two IP addresses
+ # for each forwarding rule to provide high availability when both IP
+ # addresses are used to serve client requests. The two IP addresses must come
+ # from global IP pools that belong to two distinct Availability
+ # Groups, represented by the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0 andPASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1. TheIPAddresses field specifies zero, one, or two IP addresses:
+ #
+ # - If omitted, Google Cloud assigns two ephemeral IP addresses, one from
+ # each Availability Group.
+ # - If you specify one IP address that references an existing static IP
+ # address resource from one Availability Group, Google Cloud assigns an
+ # ephemeral IP address from the other Availability Group.
+ # - If you specify two IP addresses that reference existing static IP
+ # address resources, they are required to be from different Availability
+ # Groups.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, each IP address can be one of the following:
+ #
+ # - A static or ephemeral IPv4 address from a Google-owned IP pool.
+ # - A static IPv4 address from a global public delegated prefix.
+ # - A static or ephemeral IPv6 /96 prefix from a Google-owned IP pool.
+ #
+ #
+ #
+ # For global external Passthrough Network Load Balancer, the two IP addresses
+ # can be of different types. One IP address can be from a BYOIP prefix while
+ # the other is from a Google-owned IP pool. One IP address can be static
+ # while the other is ephemeral. However, both IP addresses must have the same
+ # IP version, IPv4 or IPv6.
+ #
+ # The IP addresses can only be set at creation and cannot be updated.
+ #
+ # When creating a global external Passthrough Network Load Balancer
+ # forwarding rule (a parent forwarding rule), you must use theIPAddresses field, but the Google Cloud-generated child
+ # forwarding rules set the IPAddress field instead. Refer to theavailabilityGroup field for further details.
+ #
+ # Refer to the IPAddress field for the formats that can be used
+ # to specify IP addresses while creating a forwarding rule.
+ #
+ # Because Passthrough Network Load Balancers do not terminate or translate
+ # traffic, the backend stack types must be compatible with the forwarding
+ # rule IP version:
+ #
+ # - If the forwarding rule IP version is IPv4, backends should be
+ # configured as dual-stack or IPv4-only.
+ # - If the forwarding rule IP version is IPv6, backends should be
+ # configured as dual-stack or IPv6-only.
+ "A String",
+ ],
"IPProtocol": "A String", # The IP protocol to which this rule applies.
#
# For protocol forwarding, valid
@@ -2274,6 +2622,31 @@ Method Details
"reference": "A String", # Output only. The resource name.
},
],
+ "availabilityGroup": "A String", # Output only. [Output Only] Specifies the load balancing availability group, one of the
+ # two that collectively provide high availability.
+ #
+ # Specifies the availability group of the forwarding rule. This
+ # field is for use by global external passthrough load balancers (load
+ # balancing scheme EXTERNAL_PASSTHROUGH) and is set for the
+ # child forwarding rules only. The possible values are:
+ #
+ # - AVAILABILITY_GROUP0: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP0 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port, and
+ # backend service settings as the parent forwarding rule, but has only one of
+ # the two IP addresses of the parent forwarding rule, the one with the
+ # purpose PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0.
+ # - AVAILABILITY_GROUP1: Set for the child forwarding rule
+ # that is programmed on the AVAILABILITY_GROUP1 load balancing
+ # stack. The child forwarding rule has the same IP protocol, port and backend
+ # service settings as the parent forwarding rule, but has only one of the two
+ # IP addresses of the parent forwarding rule, the one with the purposePASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1.
+ #
+ #
+ #
+ # For each global external Passthrough Network Load Balancer forwarding rule
+ # (a parent forwarding rule) that you create, Google Cloud generates two
+ # output-only child forwarding rules, one forAVAILABILITY_GROUP0 and one forAVAILABILITY_GROUP1.
"backendService": "A String", # Identifies the backend service to which the forwarding rule sends traffic.
#
# It is a required field for the following load balancers:
@@ -2293,6 +2666,16 @@ Method Details
# sourceIPRanges specified.
# Always empty if the current forwarding rule does not have sourceIPRanges
# specified.
+ "childForwardingRules": [ # Output only. [Output Only] The resource URLs for the child forwarding rules.
+ #
+ # Applicable only to the parent forwarding rule of global
+ # external passthrough load balancers. This field contains the list of child
+ # forwarding rule URLs associated with the parent forwarding rule: one for
+ # each availability group. AVAILABILITY_GROUP0 will be the first element, and
+ # AVAILABILITY_GROUP1 will be the second element. Refer to theavailabilityGroup field for further details. It cannot be set
+ # by any other forwarding rules.
+ "A String",
+ ],
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339
# text format.
"description": "A String", # An optional description of this resource. Provide this property when you
@@ -2468,6 +2851,11 @@ Method Details
"noAutomateDnsZone": True or False, # This is used in PSC consumer ForwardingRule to control whether it should
# try to auto-generate a DNS zone or not. Non-PSC forwarding rules do not use
# this field. Once set, this field is not mutable.
+ "parentForwardingRule": "A String", # Output only. [Output Only] The resource URL for the parent forwarding rule.
+ #
+ # Applicable only to the child forwarding rules of global external
+ # passthrough load balancers. This field contains the URL of the parent
+ # forwarding rule.
"portRange": "A String", # The ports, portRange, and allPorts
# fields are mutually exclusive. Only packets addressed to ports in the
# specified range will be forwarded to the backends configured with this
diff --git a/docs/dyn/compute_v1.globalPublicDelegatedPrefixes.html b/docs/dyn/compute_v1.globalPublicDelegatedPrefixes.html
index cc4349fc20..5167e56f19 100644
--- a/docs/dyn/compute_v1.globalPublicDelegatedPrefixes.html
+++ b/docs/dyn/compute_v1.globalPublicDelegatedPrefixes.html
@@ -477,11 +477,37 @@ Method Details
# delegatee project.
"mode": "A String", # The PublicDelegatedSubPrefix mode for IPv6 only.
"name": "A String", # The name of the sub public delegated prefix.
+ "purpose": "A String", # Output only. [Output Only] The purpose of the sub public delegated prefix. Inherited
+ # from parent prefix.
"region": "A String", # Output only. [Output Only] The region of the sub public delegated prefix if it is
# regional. If absent, the sub prefix is global.
"status": "A String", # Output only. [Output Only] The status of the sub public delegated prefix.
},
],
+ "purpose": "A String", # Immutable. The purpose of the public delegated prefix.
+ #
+ # This field can only be set for the top-level global public delegated
+ # prefix. It is an output-only field for the sub-delegates that inherit the
+ # value from the top-level global public delegated prefix. Once the value is
+ # set, it cannot be changed.
+ #
+ # The field cannot be set for regional public delegated prefixes.
+ #
+ # The supported values are:
+ #
+ #
+ # - APPLICATION_AND_PROXY_LOAD_BALANCERS: The global public
+ # delegated prefix can only be used by Global External Application and
+ # Proxy Load Balancers to allocate addresses for forwarding rules. This is
+ # the default value.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 0
+ # addresses for forwarding rules.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 1
+ # addresses for forwarding rules.
"region": "A String", # Output only. [Output Only] URL of the region where the public delegated prefix resides.
# This field applies only to the region resource. You must specify this
# field as part of the HTTP request URL. It is not settable as a field in
@@ -570,11 +596,37 @@ Method Details
# delegatee project.
"mode": "A String", # The PublicDelegatedSubPrefix mode for IPv6 only.
"name": "A String", # The name of the sub public delegated prefix.
+ "purpose": "A String", # Output only. [Output Only] The purpose of the sub public delegated prefix. Inherited
+ # from parent prefix.
"region": "A String", # Output only. [Output Only] The region of the sub public delegated prefix if it is
# regional. If absent, the sub prefix is global.
"status": "A String", # Output only. [Output Only] The status of the sub public delegated prefix.
},
],
+ "purpose": "A String", # Immutable. The purpose of the public delegated prefix.
+ #
+ # This field can only be set for the top-level global public delegated
+ # prefix. It is an output-only field for the sub-delegates that inherit the
+ # value from the top-level global public delegated prefix. Once the value is
+ # set, it cannot be changed.
+ #
+ # The field cannot be set for regional public delegated prefixes.
+ #
+ # The supported values are:
+ #
+ #
+ # - APPLICATION_AND_PROXY_LOAD_BALANCERS: The global public
+ # delegated prefix can only be used by Global External Application and
+ # Proxy Load Balancers to allocate addresses for forwarding rules. This is
+ # the default value.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 0
+ # addresses for forwarding rules.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 1
+ # addresses for forwarding rules.
"region": "A String", # Output only. [Output Only] URL of the region where the public delegated prefix resides.
# This field applies only to the region resource. You must specify this
# field as part of the HTTP request URL. It is not settable as a field in
@@ -1042,11 +1094,37 @@ Method Details
# delegatee project.
"mode": "A String", # The PublicDelegatedSubPrefix mode for IPv6 only.
"name": "A String", # The name of the sub public delegated prefix.
+ "purpose": "A String", # Output only. [Output Only] The purpose of the sub public delegated prefix. Inherited
+ # from parent prefix.
"region": "A String", # Output only. [Output Only] The region of the sub public delegated prefix if it is
# regional. If absent, the sub prefix is global.
"status": "A String", # Output only. [Output Only] The status of the sub public delegated prefix.
},
],
+ "purpose": "A String", # Immutable. The purpose of the public delegated prefix.
+ #
+ # This field can only be set for the top-level global public delegated
+ # prefix. It is an output-only field for the sub-delegates that inherit the
+ # value from the top-level global public delegated prefix. Once the value is
+ # set, it cannot be changed.
+ #
+ # The field cannot be set for regional public delegated prefixes.
+ #
+ # The supported values are:
+ #
+ #
+ # - APPLICATION_AND_PROXY_LOAD_BALANCERS: The global public
+ # delegated prefix can only be used by Global External Application and
+ # Proxy Load Balancers to allocate addresses for forwarding rules. This is
+ # the default value.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 0
+ # addresses for forwarding rules.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 1
+ # addresses for forwarding rules.
"region": "A String", # Output only. [Output Only] URL of the region where the public delegated prefix resides.
# This field applies only to the region resource. You must specify this
# field as part of the HTTP request URL. It is not settable as a field in
@@ -1187,11 +1265,37 @@ Method Details
# delegatee project.
"mode": "A String", # The PublicDelegatedSubPrefix mode for IPv6 only.
"name": "A String", # The name of the sub public delegated prefix.
+ "purpose": "A String", # Output only. [Output Only] The purpose of the sub public delegated prefix. Inherited
+ # from parent prefix.
"region": "A String", # Output only. [Output Only] The region of the sub public delegated prefix if it is
# regional. If absent, the sub prefix is global.
"status": "A String", # Output only. [Output Only] The status of the sub public delegated prefix.
},
],
+ "purpose": "A String", # Immutable. The purpose of the public delegated prefix.
+ #
+ # This field can only be set for the top-level global public delegated
+ # prefix. It is an output-only field for the sub-delegates that inherit the
+ # value from the top-level global public delegated prefix. Once the value is
+ # set, it cannot be changed.
+ #
+ # The field cannot be set for regional public delegated prefixes.
+ #
+ # The supported values are:
+ #
+ #
+ # - APPLICATION_AND_PROXY_LOAD_BALANCERS: The global public
+ # delegated prefix can only be used by Global External Application and
+ # Proxy Load Balancers to allocate addresses for forwarding rules. This is
+ # the default value.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 0
+ # addresses for forwarding rules.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 1
+ # addresses for forwarding rules.
"region": "A String", # Output only. [Output Only] URL of the region where the public delegated prefix resides.
# This field applies only to the region resource. You must specify this
# field as part of the HTTP request URL. It is not settable as a field in
diff --git a/docs/dyn/compute_v1.instanceTemplates.html b/docs/dyn/compute_v1.instanceTemplates.html
index e758b201af..d6f3a1359b 100644
--- a/docs/dyn/compute_v1.instanceTemplates.html
+++ b/docs/dyn/compute_v1.instanceTemplates.html
@@ -283,7 +283,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -826,6 +832,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -906,6 +927,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -1148,6 +1184,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -1197,6 +1236,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
},
"region": "A String", # Output only. [Output Only] URL of the region where the instance template resides. Only
@@ -1713,7 +1753,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -2256,6 +2302,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -2336,6 +2397,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -2578,6 +2654,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -2627,6 +2706,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
},
"region": "A String", # Output only. [Output Only] URL of the region where the instance template resides. Only
@@ -3123,7 +3203,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -3666,6 +3752,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -3746,6 +3847,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -3988,6 +4104,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -4037,6 +4156,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
},
"region": "A String", # Output only. [Output Only] URL of the region where the instance template resides. Only
@@ -4542,7 +4662,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -5085,6 +5211,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -5165,6 +5306,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -5407,6 +5563,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -5456,6 +5615,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
},
"region": "A String", # Output only. [Output Only] URL of the region where the instance template resides. Only
diff --git a/docs/dyn/compute_v1.instances.html b/docs/dyn/compute_v1.instances.html
index 9bb167e8fb..477b48e055 100644
--- a/docs/dyn/compute_v1.instances.html
+++ b/docs/dyn/compute_v1.instances.html
@@ -262,6 +262,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -619,6 +634,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -699,6 +729,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -1553,7 +1598,13 @@ Method Details
# instance to forward routes. For more information, seeEnabling IP Forwarding.
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -2219,6 +2270,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -2299,6 +2365,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -2501,6 +2582,9 @@ Method Details
# specified in the spread placement policy attached to the instance.
"gracefulShutdownTimestamp": "A String", # Output only. Specifies the timestamp, when the instance will start graceful shutdown
# process, in RFC3339 text format.
+ "protectionTier": "A String", # Output only. Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"terminationTimestamp": "A String", # Time in future when the instance will be terminated inRFC3339 text format.
},
"shutdownDetails": { # Specifies if the instance is in `PENDING_STOP` state or there is a # Output only. [Output Only] Details about the instance stopping state.
@@ -2649,6 +2733,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -2772,6 +2859,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
"zone": "A String", # Output only. [Output Only] URL of the zone where the instance resides.
# You must specify this field as part of the HTTP request URL. It is
@@ -4177,7 +4265,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -4720,6 +4814,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -4800,6 +4909,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -5042,6 +5166,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -5091,6 +5218,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
},
"locationPolicy": { # Configuration for location policy among multiple possible locations # Policy for choosing target zone. For more information, seeCreate VMs in
@@ -6747,7 +6875,13 @@ Method Details
# instance to forward routes. For more information, seeEnabling IP Forwarding.
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -7413,6 +7547,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -7493,6 +7642,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -7695,6 +7859,9 @@ Method Details
# specified in the spread placement policy attached to the instance.
"gracefulShutdownTimestamp": "A String", # Output only. Specifies the timestamp, when the instance will start graceful shutdown
# process, in RFC3339 text format.
+ "protectionTier": "A String", # Output only. Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"terminationTimestamp": "A String", # Time in future when the instance will be terminated inRFC3339 text format.
},
"shutdownDetails": { # Specifies if the instance is in `PENDING_STOP` state or there is a # Output only. [Output Only] Details about the instance stopping state.
@@ -7843,6 +8010,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -7966,6 +8136,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
"zone": "A String", # Output only. [Output Only] URL of the zone where the instance resides.
# You must specify this field as part of the HTTP request URL. It is
@@ -9117,7 +9288,13 @@ Method Details
# instance to forward routes. For more information, seeEnabling IP Forwarding.
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -9783,6 +9960,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -9863,6 +10055,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -10065,6 +10272,9 @@ Method Details
# specified in the spread placement policy attached to the instance.
"gracefulShutdownTimestamp": "A String", # Output only. Specifies the timestamp, when the instance will start graceful shutdown
# process, in RFC3339 text format.
+ "protectionTier": "A String", # Output only. Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"terminationTimestamp": "A String", # Time in future when the instance will be terminated inRFC3339 text format.
},
"shutdownDetails": { # Specifies if the instance is in `PENDING_STOP` state or there is a # Output only. [Output Only] Details about the instance stopping state.
@@ -10213,6 +10423,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -10336,6 +10549,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
"zone": "A String", # Output only. [Output Only] URL of the zone where the instance resides.
# You must specify this field as part of the HTTP request URL. It is
@@ -10785,7 +10999,13 @@ Method Details
# instance to forward routes. For more information, seeEnabling IP Forwarding.
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -11451,6 +11671,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -11531,6 +11766,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -11733,6 +11983,9 @@ Method Details
# specified in the spread placement policy attached to the instance.
"gracefulShutdownTimestamp": "A String", # Output only. Specifies the timestamp, when the instance will start graceful shutdown
# process, in RFC3339 text format.
+ "protectionTier": "A String", # Output only. Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"terminationTimestamp": "A String", # Time in future when the instance will be terminated inRFC3339 text format.
},
"shutdownDetails": { # Specifies if the instance is in `PENDING_STOP` state or there is a # Output only. [Output Only] Details about the instance stopping state.
@@ -11881,6 +12134,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -12004,6 +12260,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
"zone": "A String", # Output only. [Output Only] URL of the zone where the instance resides.
# You must specify this field as part of the HTTP request URL. It is
@@ -17309,6 +17566,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -20598,7 +20858,13 @@ Method Details
# instance to forward routes. For more information, seeEnabling IP Forwarding.
"confidentialInstanceConfig": { # A set of Confidential Instance options.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"cpuPlatform": "A String", # Output only. [Output Only] The CPU platform used by this instance.
"creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 text format.
@@ -21264,6 +21530,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -21344,6 +21625,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -21546,6 +21842,9 @@ Method Details
# specified in the spread placement policy attached to the instance.
"gracefulShutdownTimestamp": "A String", # Output only. Specifies the timestamp, when the instance will start graceful shutdown
# process, in RFC3339 text format.
+ "protectionTier": "A String", # Output only. Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"terminationTimestamp": "A String", # Time in future when the instance will be terminated inRFC3339 text format.
},
"shutdownDetails": { # Specifies if the instance is in `PENDING_STOP` state or there is a # Output only. [Output Only] Details about the instance stopping state.
@@ -21694,6 +21993,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -21817,6 +22119,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
"zone": "A String", # Output only. [Output Only] URL of the zone where the instance resides.
# You must specify this field as part of the HTTP request URL. It is
@@ -22165,6 +22468,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -22841,6 +23159,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -22921,6 +23254,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
diff --git a/docs/dyn/compute_v1.machineImages.html b/docs/dyn/compute_v1.machineImages.html
index 90fac9965d..89f6aaaea1 100644
--- a/docs/dyn/compute_v1.machineImages.html
+++ b/docs/dyn/compute_v1.machineImages.html
@@ -477,7 +477,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -1020,6 +1026,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -1100,6 +1121,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -1342,6 +1378,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -1391,6 +1430,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
},
"kind": "compute#machineImage", # Output only. [Output Only] The resource type, which is alwayscompute#machineImage for machine image.
@@ -1483,6 +1523,14 @@ Method Details
# be a dash.
"params": { # Machine Image parameters # Input only. [Input Only] Additional parameters that are passed in the request, but are
# not persisted in the resource.
+ "excludedDisks": [ # Input only. Specifies the list of disk device names that must be excluded from the
+ # new machine image.
+ "A String",
+ ],
+ "includedDisks": [ # Input only. Specifies the list of disk device names that must be included with the
+ # new machine image.
+ "A String",
+ ],
"resourceManagerTags": { # Input only. Resource manager tags to be bound to the machine image. Tag keys and values
# have the same definition as resource
# manager tags. Keys and values can be either in numeric format,
@@ -1789,6 +1837,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -1869,6 +1932,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -2078,6 +2156,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -2555,7 +2636,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -3098,6 +3185,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -3178,6 +3280,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -3420,6 +3537,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -3469,6 +3589,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
},
"kind": "compute#machineImage", # Output only. [Output Only] The resource type, which is alwayscompute#machineImage for machine image.
@@ -3561,6 +3682,14 @@ Method Details
# be a dash.
"params": { # Machine Image parameters # Input only. [Input Only] Additional parameters that are passed in the request, but are
# not persisted in the resource.
+ "excludedDisks": [ # Input only. Specifies the list of disk device names that must be excluded from the
+ # new machine image.
+ "A String",
+ ],
+ "includedDisks": [ # Input only. Specifies the list of disk device names that must be included with the
+ # new machine image.
+ "A String",
+ ],
"resourceManagerTags": { # Input only. Resource manager tags to be bound to the machine image. Tag keys and values
# have the same definition as resource
# manager tags. Keys and values can be either in numeric format,
@@ -3867,6 +3996,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -3947,6 +4091,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -4156,6 +4315,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -4643,7 +4805,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -5186,6 +5354,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -5266,6 +5449,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -5508,6 +5706,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -5557,6 +5758,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
},
"kind": "compute#machineImage", # Output only. [Output Only] The resource type, which is alwayscompute#machineImage for machine image.
@@ -5649,6 +5851,14 @@ Method Details
# be a dash.
"params": { # Machine Image parameters # Input only. [Input Only] Additional parameters that are passed in the request, but are
# not persisted in the resource.
+ "excludedDisks": [ # Input only. Specifies the list of disk device names that must be excluded from the
+ # new machine image.
+ "A String",
+ ],
+ "includedDisks": [ # Input only. Specifies the list of disk device names that must be included with the
+ # new machine image.
+ "A String",
+ ],
"resourceManagerTags": { # Input only. Resource manager tags to be bound to the machine image. Tag keys and values
# have the same definition as resource
# manager tags. Keys and values can be either in numeric format,
@@ -5955,6 +6165,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -6035,6 +6260,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -6244,6 +6484,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
diff --git a/docs/dyn/compute_v1.networkFirewallPolicies.html b/docs/dyn/compute_v1.networkFirewallPolicies.html
index d7d6fcd0fb..6141d274a8 100644
--- a/docs/dyn/compute_v1.networkFirewallPolicies.html
+++ b/docs/dyn/compute_v1.networkFirewallPolicies.html
@@ -1812,6 +1812,16 @@ Method Details
],
"parent": "A String", # Output only. [Output Only] The parent of the firewall policy.
# This field is not applicable to network firewall policies.
+ "policySource": "A String", # Indicates the source of this Firewall Policy. This field is optional on
+ # creation and defaults to USER_DEFINED.
+ #
+ # The USER_DEFINED value indicates a regular firewall policy.
+ #
+ # The SYSTEM value indicates a system-level policy managed by an
+ # internal service like GKE. This SYSTEM value is reserved for
+ # internal services and cannot be set by users during policy creation.
+ # Policies with a SYSTEM source cannot be modified or deleted by
+ # users.
"policyType": "A String", # The type of the firewall policy. This field can be one of
# VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY.
#
@@ -2972,6 +2982,16 @@ Method Details
],
"parent": "A String", # Output only. [Output Only] The parent of the firewall policy.
# This field is not applicable to network firewall policies.
+ "policySource": "A String", # Indicates the source of this Firewall Policy. This field is optional on
+ # creation and defaults to USER_DEFINED.
+ #
+ # The USER_DEFINED value indicates a regular firewall policy.
+ #
+ # The SYSTEM value indicates a system-level policy managed by an
+ # internal service like GKE. This SYSTEM value is reserved for
+ # internal services and cannot be set by users during policy creation.
+ # Policies with a SYSTEM source cannot be modified or deleted by
+ # users.
"policyType": "A String", # The type of the firewall policy. This field can be one of
# VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY.
#
@@ -4243,6 +4263,16 @@ Method Details
],
"parent": "A String", # Output only. [Output Only] The parent of the firewall policy.
# This field is not applicable to network firewall policies.
+ "policySource": "A String", # Indicates the source of this Firewall Policy. This field is optional on
+ # creation and defaults to USER_DEFINED.
+ #
+ # The USER_DEFINED value indicates a regular firewall policy.
+ #
+ # The SYSTEM value indicates a system-level policy managed by an
+ # internal service like GKE. This SYSTEM value is reserved for
+ # internal services and cannot be set by users during policy creation.
+ # Policies with a SYSTEM source cannot be modified or deleted by
+ # users.
"policyType": "A String", # The type of the firewall policy. This field can be one of
# VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY.
#
@@ -5085,6 +5115,16 @@ Method Details
],
"parent": "A String", # Output only. [Output Only] The parent of the firewall policy.
# This field is not applicable to network firewall policies.
+ "policySource": "A String", # Indicates the source of this Firewall Policy. This field is optional on
+ # creation and defaults to USER_DEFINED.
+ #
+ # The USER_DEFINED value indicates a regular firewall policy.
+ #
+ # The SYSTEM value indicates a system-level policy managed by an
+ # internal service like GKE. This SYSTEM value is reserved for
+ # internal services and cannot be set by users during policy creation.
+ # Policies with a SYSTEM source cannot be modified or deleted by
+ # users.
"policyType": "A String", # The type of the firewall policy. This field can be one of
# VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY.
#
@@ -5595,6 +5635,16 @@ Method Details
],
"parent": "A String", # Output only. [Output Only] The parent of the firewall policy.
# This field is not applicable to network firewall policies.
+ "policySource": "A String", # Indicates the source of this Firewall Policy. This field is optional on
+ # creation and defaults to USER_DEFINED.
+ #
+ # The USER_DEFINED value indicates a regular firewall policy.
+ #
+ # The SYSTEM value indicates a system-level policy managed by an
+ # internal service like GKE. This SYSTEM value is reserved for
+ # internal services and cannot be set by users during policy creation.
+ # Policies with a SYSTEM source cannot be modified or deleted by
+ # users.
"policyType": "A String", # The type of the firewall policy. This field can be one of
# VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY.
#
diff --git a/docs/dyn/compute_v1.networks.html b/docs/dyn/compute_v1.networks.html
index d5827ec45c..6bd5e0a62e 100644
--- a/docs/dyn/compute_v1.networks.html
+++ b/docs/dyn/compute_v1.networks.html
@@ -1161,6 +1161,9 @@ Method Details
# The range of internal addresses that are legal on this network. This
# range is aCIDR specification, for example:192.168.0.0/16. Provided by the client when the network is
# created.
+ "additionalTags": [ # Output only. [Output Only] Additional tags for this resource.
+ "A String",
+ ],
"autoCreateSubnetworks": True or False, # Must be set to create a VPC network. If not set, a legacy network is
# created.
#
@@ -1925,6 +1928,9 @@ Method Details
# The range of internal addresses that are legal on this network. This
# range is aCIDR specification, for example:192.168.0.0/16. Provided by the client when the network is
# created.
+ "additionalTags": [ # Output only. [Output Only] Additional tags for this resource.
+ "A String",
+ ],
"autoCreateSubnetworks": True or False, # Must be set to create a VPC network. If not set, a legacy network is
# created.
#
@@ -2494,6 +2500,9 @@ Method Details
# The range of internal addresses that are legal on this network. This
# range is aCIDR specification, for example:192.168.0.0/16. Provided by the client when the network is
# created.
+ "additionalTags": [ # Output only. [Output Only] Additional tags for this resource.
+ "A String",
+ ],
"autoCreateSubnetworks": True or False, # Must be set to create a VPC network. If not set, a legacy network is
# created.
#
@@ -2898,6 +2907,9 @@ Method Details
# The range of internal addresses that are legal on this network. This
# range is aCIDR specification, for example:192.168.0.0/16. Provided by the client when the network is
# created.
+ "additionalTags": [ # Output only. [Output Only] Additional tags for this resource.
+ "A String",
+ ],
"autoCreateSubnetworks": True or False, # Must be set to create a VPC network. If not set, a legacy network is
# created.
#
diff --git a/docs/dyn/compute_v1.publicDelegatedPrefixes.html b/docs/dyn/compute_v1.publicDelegatedPrefixes.html
index c22ab243e7..b1e51e2226 100644
--- a/docs/dyn/compute_v1.publicDelegatedPrefixes.html
+++ b/docs/dyn/compute_v1.publicDelegatedPrefixes.html
@@ -276,11 +276,37 @@ Method Details
# delegatee project.
"mode": "A String", # The PublicDelegatedSubPrefix mode for IPv6 only.
"name": "A String", # The name of the sub public delegated prefix.
+ "purpose": "A String", # Output only. [Output Only] The purpose of the sub public delegated prefix. Inherited
+ # from parent prefix.
"region": "A String", # Output only. [Output Only] The region of the sub public delegated prefix if it is
# regional. If absent, the sub prefix is global.
"status": "A String", # Output only. [Output Only] The status of the sub public delegated prefix.
},
],
+ "purpose": "A String", # Immutable. The purpose of the public delegated prefix.
+ #
+ # This field can only be set for the top-level global public delegated
+ # prefix. It is an output-only field for the sub-delegates that inherit the
+ # value from the top-level global public delegated prefix. Once the value is
+ # set, it cannot be changed.
+ #
+ # The field cannot be set for regional public delegated prefixes.
+ #
+ # The supported values are:
+ #
+ #
+ # - APPLICATION_AND_PROXY_LOAD_BALANCERS: The global public
+ # delegated prefix can only be used by Global External Application and
+ # Proxy Load Balancers to allocate addresses for forwarding rules. This is
+ # the default value.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 0
+ # addresses for forwarding rules.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 1
+ # addresses for forwarding rules.
"region": "A String", # Output only. [Output Only] URL of the region where the public delegated prefix resides.
# This field applies only to the region resource. You must specify this
# field as part of the HTTP request URL. It is not settable as a field in
@@ -1069,11 +1095,37 @@ Method Details
# delegatee project.
"mode": "A String", # The PublicDelegatedSubPrefix mode for IPv6 only.
"name": "A String", # The name of the sub public delegated prefix.
+ "purpose": "A String", # Output only. [Output Only] The purpose of the sub public delegated prefix. Inherited
+ # from parent prefix.
"region": "A String", # Output only. [Output Only] The region of the sub public delegated prefix if it is
# regional. If absent, the sub prefix is global.
"status": "A String", # Output only. [Output Only] The status of the sub public delegated prefix.
},
],
+ "purpose": "A String", # Immutable. The purpose of the public delegated prefix.
+ #
+ # This field can only be set for the top-level global public delegated
+ # prefix. It is an output-only field for the sub-delegates that inherit the
+ # value from the top-level global public delegated prefix. Once the value is
+ # set, it cannot be changed.
+ #
+ # The field cannot be set for regional public delegated prefixes.
+ #
+ # The supported values are:
+ #
+ #
+ # - APPLICATION_AND_PROXY_LOAD_BALANCERS: The global public
+ # delegated prefix can only be used by Global External Application and
+ # Proxy Load Balancers to allocate addresses for forwarding rules. This is
+ # the default value.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 0
+ # addresses for forwarding rules.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 1
+ # addresses for forwarding rules.
"region": "A String", # Output only. [Output Only] URL of the region where the public delegated prefix resides.
# This field applies only to the region resource. You must specify this
# field as part of the HTTP request URL. It is not settable as a field in
@@ -1163,11 +1215,37 @@ Method Details
# delegatee project.
"mode": "A String", # The PublicDelegatedSubPrefix mode for IPv6 only.
"name": "A String", # The name of the sub public delegated prefix.
+ "purpose": "A String", # Output only. [Output Only] The purpose of the sub public delegated prefix. Inherited
+ # from parent prefix.
"region": "A String", # Output only. [Output Only] The region of the sub public delegated prefix if it is
# regional. If absent, the sub prefix is global.
"status": "A String", # Output only. [Output Only] The status of the sub public delegated prefix.
},
],
+ "purpose": "A String", # Immutable. The purpose of the public delegated prefix.
+ #
+ # This field can only be set for the top-level global public delegated
+ # prefix. It is an output-only field for the sub-delegates that inherit the
+ # value from the top-level global public delegated prefix. Once the value is
+ # set, it cannot be changed.
+ #
+ # The field cannot be set for regional public delegated prefixes.
+ #
+ # The supported values are:
+ #
+ #
+ # - APPLICATION_AND_PROXY_LOAD_BALANCERS: The global public
+ # delegated prefix can only be used by Global External Application and
+ # Proxy Load Balancers to allocate addresses for forwarding rules. This is
+ # the default value.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 0
+ # addresses for forwarding rules.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 1
+ # addresses for forwarding rules.
"region": "A String", # Output only. [Output Only] URL of the region where the public delegated prefix resides.
# This field applies only to the region resource. You must specify this
# field as part of the HTTP request URL. It is not settable as a field in
@@ -1636,11 +1714,37 @@ Method Details
# delegatee project.
"mode": "A String", # The PublicDelegatedSubPrefix mode for IPv6 only.
"name": "A String", # The name of the sub public delegated prefix.
+ "purpose": "A String", # Output only. [Output Only] The purpose of the sub public delegated prefix. Inherited
+ # from parent prefix.
"region": "A String", # Output only. [Output Only] The region of the sub public delegated prefix if it is
# regional. If absent, the sub prefix is global.
"status": "A String", # Output only. [Output Only] The status of the sub public delegated prefix.
},
],
+ "purpose": "A String", # Immutable. The purpose of the public delegated prefix.
+ #
+ # This field can only be set for the top-level global public delegated
+ # prefix. It is an output-only field for the sub-delegates that inherit the
+ # value from the top-level global public delegated prefix. Once the value is
+ # set, it cannot be changed.
+ #
+ # The field cannot be set for regional public delegated prefixes.
+ #
+ # The supported values are:
+ #
+ #
+ # - APPLICATION_AND_PROXY_LOAD_BALANCERS: The global public
+ # delegated prefix can only be used by Global External Application and
+ # Proxy Load Balancers to allocate addresses for forwarding rules. This is
+ # the default value.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 0
+ # addresses for forwarding rules.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 1
+ # addresses for forwarding rules.
"region": "A String", # Output only. [Output Only] URL of the region where the public delegated prefix resides.
# This field applies only to the region resource. You must specify this
# field as part of the HTTP request URL. It is not settable as a field in
@@ -1782,11 +1886,37 @@ Method Details
# delegatee project.
"mode": "A String", # The PublicDelegatedSubPrefix mode for IPv6 only.
"name": "A String", # The name of the sub public delegated prefix.
+ "purpose": "A String", # Output only. [Output Only] The purpose of the sub public delegated prefix. Inherited
+ # from parent prefix.
"region": "A String", # Output only. [Output Only] The region of the sub public delegated prefix if it is
# regional. If absent, the sub prefix is global.
"status": "A String", # Output only. [Output Only] The status of the sub public delegated prefix.
},
],
+ "purpose": "A String", # Immutable. The purpose of the public delegated prefix.
+ #
+ # This field can only be set for the top-level global public delegated
+ # prefix. It is an output-only field for the sub-delegates that inherit the
+ # value from the top-level global public delegated prefix. Once the value is
+ # set, it cannot be changed.
+ #
+ # The field cannot be set for regional public delegated prefixes.
+ #
+ # The supported values are:
+ #
+ #
+ # - APPLICATION_AND_PROXY_LOAD_BALANCERS: The global public
+ # delegated prefix can only be used by Global External Application and
+ # Proxy Load Balancers to allocate addresses for forwarding rules. This is
+ # the default value.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 0
+ # addresses for forwarding rules.
+ # - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1: The
+ # global public delegated prefix can only be used by Global External
+ # Passthrough Network Load Balancers to allocate Availability Group 1
+ # addresses for forwarding rules.
"region": "A String", # Output only. [Output Only] URL of the region where the public delegated prefix resides.
# This field applies only to the region resource. You must specify this
# field as part of the HTTP request URL. It is not settable as a field in
diff --git a/docs/dyn/compute_v1.regionBackendServices.html b/docs/dyn/compute_v1.regionBackendServices.html
index 5d77acacfa..318b6fa77d 100644
--- a/docs/dyn/compute_v1.regionBackendServices.html
+++ b/docs/dyn/compute_v1.regionBackendServices.html
@@ -927,6 +927,19 @@ Method Details
],
"description": "A String", # An optional description of this resource. Provide this property when you
# create the resource.
+ "dynamicForwarding": { # Defines a dynamic forwarding configuration for the backend service. # Dynamic forwarding configuration. This field is used to configure the
+ # backend service with dynamic forwarding feature which together with Service
+ # Extension allows customized and complex routing logic.
+ "forwardProxy": { # Defines Dynamic Forwarding Proxy configuration. # Dynamic Forwarding Proxy configuration.
+ "enabled": True or False, # A boolean flag enabling dynamic forwarding proxy.
+ "proxyMode": "A String", # Determines the dynamic forwarding proxy mode.
+ },
+ "ipPortSelection": { # Defines a IP:PORT based dynamic forwarding configuration for the backend # IP:PORT based dynamic forwarding configuration.
+ # service. Some ranges are restricted: Restricted
+ # ranges.
+ "enabled": True or False, # A boolean flag enabling IP:PORT based dynamic forwarding.
+ },
+ },
"edgeSecurityPolicy": "A String", # [Output Only] The resource URL for the edge security policy associated with
# this backend service.
"enableCDN": True or False, # If true, enables Cloud CDN for the backend service of a
@@ -2707,6 +2720,19 @@ Method Details
],
"description": "A String", # An optional description of this resource. Provide this property when you
# create the resource.
+ "dynamicForwarding": { # Defines a dynamic forwarding configuration for the backend service. # Dynamic forwarding configuration. This field is used to configure the
+ # backend service with dynamic forwarding feature which together with Service
+ # Extension allows customized and complex routing logic.
+ "forwardProxy": { # Defines Dynamic Forwarding Proxy configuration. # Dynamic Forwarding Proxy configuration.
+ "enabled": True or False, # A boolean flag enabling dynamic forwarding proxy.
+ "proxyMode": "A String", # Determines the dynamic forwarding proxy mode.
+ },
+ "ipPortSelection": { # Defines a IP:PORT based dynamic forwarding configuration for the backend # IP:PORT based dynamic forwarding configuration.
+ # service. Some ranges are restricted: Restricted
+ # ranges.
+ "enabled": True or False, # A boolean flag enabling IP:PORT based dynamic forwarding.
+ },
+ },
"edgeSecurityPolicy": "A String", # [Output Only] The resource URL for the edge security policy associated with
# this backend service.
"enableCDN": True or False, # If true, enables Cloud CDN for the backend service of a
@@ -4441,6 +4467,19 @@ Method Details
],
"description": "A String", # An optional description of this resource. Provide this property when you
# create the resource.
+ "dynamicForwarding": { # Defines a dynamic forwarding configuration for the backend service. # Dynamic forwarding configuration. This field is used to configure the
+ # backend service with dynamic forwarding feature which together with Service
+ # Extension allows customized and complex routing logic.
+ "forwardProxy": { # Defines Dynamic Forwarding Proxy configuration. # Dynamic Forwarding Proxy configuration.
+ "enabled": True or False, # A boolean flag enabling dynamic forwarding proxy.
+ "proxyMode": "A String", # Determines the dynamic forwarding proxy mode.
+ },
+ "ipPortSelection": { # Defines a IP:PORT based dynamic forwarding configuration for the backend # IP:PORT based dynamic forwarding configuration.
+ # service. Some ranges are restricted: Restricted
+ # ranges.
+ "enabled": True or False, # A boolean flag enabling IP:PORT based dynamic forwarding.
+ },
+ },
"edgeSecurityPolicy": "A String", # [Output Only] The resource URL for the edge security policy associated with
# this backend service.
"enableCDN": True or False, # If true, enables Cloud CDN for the backend service of a
@@ -5917,6 +5956,19 @@ Method Details
],
"description": "A String", # An optional description of this resource. Provide this property when you
# create the resource.
+ "dynamicForwarding": { # Defines a dynamic forwarding configuration for the backend service. # Dynamic forwarding configuration. This field is used to configure the
+ # backend service with dynamic forwarding feature which together with Service
+ # Extension allows customized and complex routing logic.
+ "forwardProxy": { # Defines Dynamic Forwarding Proxy configuration. # Dynamic Forwarding Proxy configuration.
+ "enabled": True or False, # A boolean flag enabling dynamic forwarding proxy.
+ "proxyMode": "A String", # Determines the dynamic forwarding proxy mode.
+ },
+ "ipPortSelection": { # Defines a IP:PORT based dynamic forwarding configuration for the backend # IP:PORT based dynamic forwarding configuration.
+ # service. Some ranges are restricted: Restricted
+ # ranges.
+ "enabled": True or False, # A boolean flag enabling IP:PORT based dynamic forwarding.
+ },
+ },
"edgeSecurityPolicy": "A String", # [Output Only] The resource URL for the edge security policy associated with
# this backend service.
"enableCDN": True or False, # If true, enables Cloud CDN for the backend service of a
@@ -7338,6 +7390,19 @@ Method Details
],
"description": "A String", # An optional description of this resource. Provide this property when you
# create the resource.
+ "dynamicForwarding": { # Defines a dynamic forwarding configuration for the backend service. # Dynamic forwarding configuration. This field is used to configure the
+ # backend service with dynamic forwarding feature which together with Service
+ # Extension allows customized and complex routing logic.
+ "forwardProxy": { # Defines Dynamic Forwarding Proxy configuration. # Dynamic Forwarding Proxy configuration.
+ "enabled": True or False, # A boolean flag enabling dynamic forwarding proxy.
+ "proxyMode": "A String", # Determines the dynamic forwarding proxy mode.
+ },
+ "ipPortSelection": { # Defines a IP:PORT based dynamic forwarding configuration for the backend # IP:PORT based dynamic forwarding configuration.
+ # service. Some ranges are restricted: Restricted
+ # ranges.
+ "enabled": True or False, # A boolean flag enabling IP:PORT based dynamic forwarding.
+ },
+ },
"edgeSecurityPolicy": "A String", # [Output Only] The resource URL for the edge security policy associated with
# this backend service.
"enableCDN": True or False, # If true, enables Cloud CDN for the backend service of a
@@ -10213,6 +10278,19 @@ Method Details
],
"description": "A String", # An optional description of this resource. Provide this property when you
# create the resource.
+ "dynamicForwarding": { # Defines a dynamic forwarding configuration for the backend service. # Dynamic forwarding configuration. This field is used to configure the
+ # backend service with dynamic forwarding feature which together with Service
+ # Extension allows customized and complex routing logic.
+ "forwardProxy": { # Defines Dynamic Forwarding Proxy configuration. # Dynamic Forwarding Proxy configuration.
+ "enabled": True or False, # A boolean flag enabling dynamic forwarding proxy.
+ "proxyMode": "A String", # Determines the dynamic forwarding proxy mode.
+ },
+ "ipPortSelection": { # Defines a IP:PORT based dynamic forwarding configuration for the backend # IP:PORT based dynamic forwarding configuration.
+ # service. Some ranges are restricted: Restricted
+ # ranges.
+ "enabled": True or False, # A boolean flag enabling IP:PORT based dynamic forwarding.
+ },
+ },
"edgeSecurityPolicy": "A String", # [Output Only] The resource URL for the edge security policy associated with
# this backend service.
"enableCDN": True or False, # If true, enables Cloud CDN for the backend service of a
diff --git a/docs/dyn/compute_v1.regionDisks.html b/docs/dyn/compute_v1.regionDisks.html
index 3c2b929c93..9061758669 100644
--- a/docs/dyn/compute_v1.regionDisks.html
+++ b/docs/dyn/compute_v1.regionDisks.html
@@ -1000,7 +1000,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -2187,6 +2188,79 @@ Method Details
# disk from an instant snapshot that was later deleted and recreated under
# the same name, the source instant snapshot ID would identify the exact
# version of the instant snapshot that was used.
+ "sourceMachineImage": "A String", # The machine image to create the disk from. You can provide this as a
+ # partial or full URL to the resource. For example, the following are valid
+ # values:
+ #
+ #
+ # - https://www.googleapis.com/compute/v1/projects/project/global/machineImages/machineImage
+ # - projects/project/global/machineImages/machineImage
+ # - global/machineImages/machineImage
+ "sourceMachineImageDiskDeviceName": "A String", # The device name of a disk within a given machine image. The
+ # source_machine_image must be specified.
+ "sourceMachineImageEncryptionKey": { # Thecustomer-supplied
+ # encryption key of the source machine image. Required if the source
+ # machine image is protected by a customer-supplied encryption key.
+ "kmsKeyName": "A String", # The name of the encryption key that is stored in Google Cloud KMS.
+ # For example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ #
+ # The fully-qualifed key name may be returned for resource GET requests. For
+ # example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ # /cryptoKeyVersions/1
+ "kmsKeyServiceAccount": "A String", # The service account being used for the encryption request for the given KMS
+ # key. If absent, the Compute Engine default service account is used.
+ # For example:
+ #
+ # "kmsKeyServiceAccount": "name@project_id.iam.gserviceaccount.com/
+ "rawKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies a 256-bit customer-supplied
+ # encryption key, encoded in RFC
+ # 4648 base64 to either encrypt or decrypt this resource. You can
+ # provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rawKey":
+ # "SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0="
+ "rsaEncryptedKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit
+ # customer-supplied encryption key to either encrypt or decrypt this
+ # resource. You can provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rsaEncryptedKey":
+ # "ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH
+ # z0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD
+ # D6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe=="
+ #
+ # The key must meet the following requirements before you can provide it to
+ # Compute Engine:
+ #
+ # 1. The key is wrapped using a RSA public key certificate provided by
+ # Google.
+ # 2. After being wrapped, the key must be encoded in RFC 4648 base64
+ # encoding.
+ #
+ # Gets the RSA public key certificate provided by Google at:
+ #
+ #
+ # https://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem
+ "sha256": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # [Output only] TheRFC
+ # 4648 base64 encoded SHA-256 hash of the customer-supplied
+ # encryption key that protects this resource.
+ },
+ "sourceMachineImageId": "A String", # Output only. [Output Only] The unique ID of the machine image used to create this disk.
+ # This value identifies the exact machine image that was used to create this
+ # persistent disk. For example, if you created the persistent disk from a
+ # machine image that was later deleted and recreated under the same name, the
+ # source machine image ID would identify the exact version of the machine
+ # image that was used.
"sourceSnapshot": "A String", # The source snapshot used to create this disk. You can provide this as a
# partial or full URL to the resource. For example, the following are valid
# values:
@@ -3086,6 +3160,79 @@ Method Details
# disk from an instant snapshot that was later deleted and recreated under
# the same name, the source instant snapshot ID would identify the exact
# version of the instant snapshot that was used.
+ "sourceMachineImage": "A String", # The machine image to create the disk from. You can provide this as a
+ # partial or full URL to the resource. For example, the following are valid
+ # values:
+ #
+ #
+ # - https://www.googleapis.com/compute/v1/projects/project/global/machineImages/machineImage
+ # - projects/project/global/machineImages/machineImage
+ # - global/machineImages/machineImage
+ "sourceMachineImageDiskDeviceName": "A String", # The device name of a disk within a given machine image. The
+ # source_machine_image must be specified.
+ "sourceMachineImageEncryptionKey": { # Thecustomer-supplied
+ # encryption key of the source machine image. Required if the source
+ # machine image is protected by a customer-supplied encryption key.
+ "kmsKeyName": "A String", # The name of the encryption key that is stored in Google Cloud KMS.
+ # For example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ #
+ # The fully-qualifed key name may be returned for resource GET requests. For
+ # example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ # /cryptoKeyVersions/1
+ "kmsKeyServiceAccount": "A String", # The service account being used for the encryption request for the given KMS
+ # key. If absent, the Compute Engine default service account is used.
+ # For example:
+ #
+ # "kmsKeyServiceAccount": "name@project_id.iam.gserviceaccount.com/
+ "rawKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies a 256-bit customer-supplied
+ # encryption key, encoded in RFC
+ # 4648 base64 to either encrypt or decrypt this resource. You can
+ # provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rawKey":
+ # "SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0="
+ "rsaEncryptedKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit
+ # customer-supplied encryption key to either encrypt or decrypt this
+ # resource. You can provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rsaEncryptedKey":
+ # "ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH
+ # z0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD
+ # D6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe=="
+ #
+ # The key must meet the following requirements before you can provide it to
+ # Compute Engine:
+ #
+ # 1. The key is wrapped using a RSA public key certificate provided by
+ # Google.
+ # 2. After being wrapped, the key must be encoded in RFC 4648 base64
+ # encoding.
+ #
+ # Gets the RSA public key certificate provided by Google at:
+ #
+ #
+ # https://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem
+ "sha256": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # [Output only] TheRFC
+ # 4648 base64 encoded SHA-256 hash of the customer-supplied
+ # encryption key that protects this resource.
+ },
+ "sourceMachineImageId": "A String", # Output only. [Output Only] The unique ID of the machine image used to create this disk.
+ # This value identifies the exact machine image that was used to create this
+ # persistent disk. For example, if you created the persistent disk from a
+ # machine image that was later deleted and recreated under the same name, the
+ # source machine image ID would identify the exact version of the machine
+ # image that was used.
"sourceSnapshot": "A String", # The source snapshot used to create this disk. You can provide this as a
# partial or full URL to the resource. For example, the following are valid
# values:
@@ -3997,6 +4144,79 @@ Method Details
# disk from an instant snapshot that was later deleted and recreated under
# the same name, the source instant snapshot ID would identify the exact
# version of the instant snapshot that was used.
+ "sourceMachineImage": "A String", # The machine image to create the disk from. You can provide this as a
+ # partial or full URL to the resource. For example, the following are valid
+ # values:
+ #
+ #
+ # - https://www.googleapis.com/compute/v1/projects/project/global/machineImages/machineImage
+ # - projects/project/global/machineImages/machineImage
+ # - global/machineImages/machineImage
+ "sourceMachineImageDiskDeviceName": "A String", # The device name of a disk within a given machine image. The
+ # source_machine_image must be specified.
+ "sourceMachineImageEncryptionKey": { # Thecustomer-supplied
+ # encryption key of the source machine image. Required if the source
+ # machine image is protected by a customer-supplied encryption key.
+ "kmsKeyName": "A String", # The name of the encryption key that is stored in Google Cloud KMS.
+ # For example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ #
+ # The fully-qualifed key name may be returned for resource GET requests. For
+ # example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ # /cryptoKeyVersions/1
+ "kmsKeyServiceAccount": "A String", # The service account being used for the encryption request for the given KMS
+ # key. If absent, the Compute Engine default service account is used.
+ # For example:
+ #
+ # "kmsKeyServiceAccount": "name@project_id.iam.gserviceaccount.com/
+ "rawKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies a 256-bit customer-supplied
+ # encryption key, encoded in RFC
+ # 4648 base64 to either encrypt or decrypt this resource. You can
+ # provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rawKey":
+ # "SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0="
+ "rsaEncryptedKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit
+ # customer-supplied encryption key to either encrypt or decrypt this
+ # resource. You can provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rsaEncryptedKey":
+ # "ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH
+ # z0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD
+ # D6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe=="
+ #
+ # The key must meet the following requirements before you can provide it to
+ # Compute Engine:
+ #
+ # 1. The key is wrapped using a RSA public key certificate provided by
+ # Google.
+ # 2. After being wrapped, the key must be encoded in RFC 4648 base64
+ # encoding.
+ #
+ # Gets the RSA public key certificate provided by Google at:
+ #
+ #
+ # https://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem
+ "sha256": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # [Output only] TheRFC
+ # 4648 base64 encoded SHA-256 hash of the customer-supplied
+ # encryption key that protects this resource.
+ },
+ "sourceMachineImageId": "A String", # Output only. [Output Only] The unique ID of the machine image used to create this disk.
+ # This value identifies the exact machine image that was used to create this
+ # persistent disk. For example, if you created the persistent disk from a
+ # machine image that was later deleted and recreated under the same name, the
+ # source machine image ID would identify the exact version of the machine
+ # image that was used.
"sourceSnapshot": "A String", # The source snapshot used to create this disk. You can provide this as a
# partial or full URL to the resource. For example, the following are valid
# values:
@@ -7392,6 +7612,79 @@ Method Details
# disk from an instant snapshot that was later deleted and recreated under
# the same name, the source instant snapshot ID would identify the exact
# version of the instant snapshot that was used.
+ "sourceMachineImage": "A String", # The machine image to create the disk from. You can provide this as a
+ # partial or full URL to the resource. For example, the following are valid
+ # values:
+ #
+ #
+ # - https://www.googleapis.com/compute/v1/projects/project/global/machineImages/machineImage
+ # - projects/project/global/machineImages/machineImage
+ # - global/machineImages/machineImage
+ "sourceMachineImageDiskDeviceName": "A String", # The device name of a disk within a given machine image. The
+ # source_machine_image must be specified.
+ "sourceMachineImageEncryptionKey": { # Thecustomer-supplied
+ # encryption key of the source machine image. Required if the source
+ # machine image is protected by a customer-supplied encryption key.
+ "kmsKeyName": "A String", # The name of the encryption key that is stored in Google Cloud KMS.
+ # For example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ #
+ # The fully-qualifed key name may be returned for resource GET requests. For
+ # example:
+ #
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/
+ # key_region/cryptoKeys/key
+ # /cryptoKeyVersions/1
+ "kmsKeyServiceAccount": "A String", # The service account being used for the encryption request for the given KMS
+ # key. If absent, the Compute Engine default service account is used.
+ # For example:
+ #
+ # "kmsKeyServiceAccount": "name@project_id.iam.gserviceaccount.com/
+ "rawKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies a 256-bit customer-supplied
+ # encryption key, encoded in RFC
+ # 4648 base64 to either encrypt or decrypt this resource. You can
+ # provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rawKey":
+ # "SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0="
+ "rsaEncryptedKey": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit
+ # customer-supplied encryption key to either encrypt or decrypt this
+ # resource. You can provide either the rawKey or thersaEncryptedKey.
+ # For example:
+ #
+ # "rsaEncryptedKey":
+ # "ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH
+ # z0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD
+ # D6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe=="
+ #
+ # The key must meet the following requirements before you can provide it to
+ # Compute Engine:
+ #
+ # 1. The key is wrapped using a RSA public key certificate provided by
+ # Google.
+ # 2. After being wrapped, the key must be encoded in RFC 4648 base64
+ # encoding.
+ #
+ # Gets the RSA public key certificate provided by Google at:
+ #
+ #
+ # https://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem
+ "sha256": "A String", # [DEPRECATED] CSEK is no longer supported. Use CMEK instead.
+ # [Output only] TheRFC
+ # 4648 base64 encoded SHA-256 hash of the customer-supplied
+ # encryption key that protects this resource.
+ },
+ "sourceMachineImageId": "A String", # Output only. [Output Only] The unique ID of the machine image used to create this disk.
+ # This value identifies the exact machine image that was used to create this
+ # persistent disk. For example, if you created the persistent disk from a
+ # machine image that was later deleted and recreated under the same name, the
+ # source machine image ID would identify the exact version of the machine
+ # image that was used.
"sourceSnapshot": "A String", # The source snapshot used to create this disk. You can provide this as a
# partial or full URL to the resource. For example, the following are valid
# values:
diff --git a/docs/dyn/compute_v1.regionInstanceTemplates.html b/docs/dyn/compute_v1.regionInstanceTemplates.html
index 948f9f5f19..5b41272231 100644
--- a/docs/dyn/compute_v1.regionInstanceTemplates.html
+++ b/docs/dyn/compute_v1.regionInstanceTemplates.html
@@ -484,7 +484,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -1027,6 +1033,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -1107,6 +1128,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -1349,6 +1385,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -1398,6 +1437,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
},
"region": "A String", # Output only. [Output Only] URL of the region where the instance template resides. Only
@@ -1524,7 +1564,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -2067,6 +2113,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -2147,6 +2208,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -2389,6 +2465,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -2438,6 +2517,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
},
"region": "A String", # Output only. [Output Only] URL of the region where the instance template resides. Only
@@ -2944,7 +3024,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -3487,6 +3573,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -3567,6 +3668,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -3809,6 +3925,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -3858,6 +3977,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
},
"region": "A String", # Output only. [Output Only] URL of the region where the instance template resides. Only
diff --git a/docs/dyn/compute_v1.regionInstances.html b/docs/dyn/compute_v1.regionInstances.html
index acafd33945..5988c41219 100644
--- a/docs/dyn/compute_v1.regionInstances.html
+++ b/docs/dyn/compute_v1.regionInstances.html
@@ -624,7 +624,13 @@ Method Details
"confidentialInstanceConfig": { # A set of Confidential Instance options. # Specifies the Confidential Instance options.
# Note that for MachineImage, this is not supported yet.
"confidentialInstanceType": "A String", # Defines the type of technology used by the confidential instance.
+ "confidentialParavisorConfig": { # A set of Confidential Paravisor (SVSM) options. # Defines a set of Confidential Paravisor (SVSM) options.
+ "confidentialTpmType": "A String", # Defines the type of TPM to use for the confidential instance.
+ "sevSnpIrqMode": "A String", # Defines the IRQ mode to use for the confidential instance.
+ },
"enableConfidentialCompute": True or False, # Defines whether the instance should have confidential compute enabled.
+ # When enabled, the technology used defaults to
+ # AMD SEV unless confidentialInstanceType is specified.
},
"description": "A String", # An optional text description for the instances that are created from these
# properties.
@@ -1167,6 +1173,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -1247,6 +1268,21 @@ Method Details
# assign an external IPv6 address from the instance's subnetwork.
"externalIpv6PrefixLength": 42, # Applies to ipv6AccessConfigs only. The prefix length of the
# external IPv6 range.
+ "ipCollection": "A String", # Reference to the source of external IPv4 addresses,
+ # like a PublicDelegatedPrefix (PDP) for BYOIP.
+ # The PDP must support enhanced IPv4 allocations.
+ #
+ # Use one of the following formats to specify a PDP when allocating an
+ # external IPv4 address using BYOIP.
+ #
+ # -
+ # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # -
+ # Partial URL, as in
+ #
+ #
+ # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
+ # - regions/region/publicDelegatedPrefixes/pdp-name
"kind": "compute#accessConfig", # Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.
"name": "A String", # The name of this access configuration. In accessConfigs
# (IPv4), the default and recommended name is External NAT, but
@@ -1489,6 +1525,9 @@ Method Details
# to 315,576,000,000 inclusive. Note: these bounds are computed from:
# 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
},
+ "protectionTier": "A String", # Protection tier for the workload which specifies the workload
+ # expectations in the event of infrastructure failures at data center
+ # (e.g. power and/or cooling failures).
"provisioningModel": "A String", # Specifies the provisioning model of the instance.
"skipGuestOsShutdown": True or False, # Defines whether GCE ACPI G2 Soft
# Off signal should be skipped during shutdown operation of VM.
@@ -1538,6 +1577,7 @@ Method Details
"workloadIdentityConfig": {
"identity": "A String",
"identityCertificateEnabled": True or False,
+ "identityType": "A String",
},
},
"locationPolicy": { # Configuration for location policy among multiple possible locations # Policy for choosing target zone. For more information, seeCreate VMs in
diff --git a/docs/dyn/compute_v1.regionNetworkFirewallPolicies.html b/docs/dyn/compute_v1.regionNetworkFirewallPolicies.html
index ce90de4392..1d9d366901 100644
--- a/docs/dyn/compute_v1.regionNetworkFirewallPolicies.html
+++ b/docs/dyn/compute_v1.regionNetworkFirewallPolicies.html
@@ -1828,6 +1828,16 @@ Method Details
],
"parent": "A String", # Output only. [Output Only] The parent of the firewall policy.
# This field is not applicable to network firewall policies.
+ "policySource": "A String", # Indicates the source of this Firewall Policy. This field is optional on
+ # creation and defaults to USER_DEFINED.
+ #
+ # The USER_DEFINED value indicates a regular firewall policy.
+ #
+ # The SYSTEM value indicates a system-level policy managed by an
+ # internal service like GKE. This SYSTEM value is reserved for
+ # internal services and cannot be set by users during policy creation.
+ # Policies with a SYSTEM source cannot be modified or deleted by
+ # users.
"policyType": "A String", # The type of the firewall policy. This field can be one of
# VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY.
#
@@ -3473,6 +3483,16 @@ Method Details
],
"parent": "A String", # Output only. [Output Only] The parent of the firewall policy.
# This field is not applicable to network firewall policies.
+ "policySource": "A String", # Indicates the source of this Firewall Policy. This field is optional on
+ # creation and defaults to USER_DEFINED.
+ #
+ # The USER_DEFINED value indicates a regular firewall policy.
+ #
+ # The SYSTEM value indicates a system-level policy managed by an
+ # internal service like GKE. This SYSTEM value is reserved for
+ # internal services and cannot be set by users during policy creation.
+ # Policies with a SYSTEM source cannot be modified or deleted by
+ # users.
"policyType": "A String", # The type of the firewall policy. This field can be one of
# VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY.
#
@@ -4317,6 +4337,16 @@ Method Details
],
"parent": "A String", # Output only. [Output Only] The parent of the firewall policy.
# This field is not applicable to network firewall policies.
+ "policySource": "A String", # Indicates the source of this Firewall Policy. This field is optional on
+ # creation and defaults to USER_DEFINED.
+ #
+ # The USER_DEFINED value indicates a regular firewall policy.
+ #
+ # The SYSTEM value indicates a system-level policy managed by an
+ # internal service like GKE. This SYSTEM value is reserved for
+ # internal services and cannot be set by users during policy creation.
+ # Policies with a SYSTEM source cannot be modified or deleted by
+ # users.
"policyType": "A String", # The type of the firewall policy. This field can be one of
# VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY.
#
@@ -4828,6 +4858,16 @@ Method Details
],
"parent": "A String", # Output only. [Output Only] The parent of the firewall policy.
# This field is not applicable to network firewall policies.
+ "policySource": "A String", # Indicates the source of this Firewall Policy. This field is optional on
+ # creation and defaults to USER_DEFINED.
+ #
+ # The USER_DEFINED value indicates a regular firewall policy.
+ #
+ # The SYSTEM value indicates a system-level policy managed by an
+ # internal service like GKE. This SYSTEM value is reserved for
+ # internal services and cannot be set by users during policy creation.
+ # Policies with a SYSTEM source cannot be modified or deleted by
+ # users.
"policyType": "A String", # The type of the firewall policy. This field can be one of
# VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY.
#
diff --git a/docs/dyn/compute_v1.regionSnapshots.html b/docs/dyn/compute_v1.regionSnapshots.html
index 5002fcf954..1a6507953e 100644
--- a/docs/dyn/compute_v1.regionSnapshots.html
+++ b/docs/dyn/compute_v1.regionSnapshots.html
@@ -620,7 +620,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -1336,7 +1337,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
@@ -2063,7 +2065,8 @@ Method Details
# belongs to. The usage of snapshot group feature is restricted.
"snapshotGroupName": "A String", # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage
# of snapshot group feature is restricted.
- "snapshotType": "A String", # Indicates the type of the snapshot.
+ "snapshotType": "A String", # Indicates the type of the snapshot. Valid values are ARCHIVE
+ # or STANDARD. The default is STANDARD.
"sourceDisk": "A String", # The source disk used to create this snapshot.
"sourceDiskEncryptionKey": { # The customer-supplied
# encryption key of the source disk. Required if the source disk is
diff --git a/docs/dyn/compute_v1.regionSslPolicies.html b/docs/dyn/compute_v1.regionSslPolicies.html
index 0bcfd7c26b..641148ab26 100644
--- a/docs/dyn/compute_v1.regionSslPolicies.html
+++ b/docs/dyn/compute_v1.regionSslPolicies.html
@@ -83,6 +83,9 @@ Instance Methods
get(project, region, sslPolicy, x__xgafv=None)
Lists all of the ordered rules present in a single specified policy.
+
+ getIamPolicy(project, region, resource, optionsRequestedPolicyVersion=None, x__xgafv=None)
+Gets the access control policy for a resource. May be empty if no such
insert(project, region, body=None, requestId=None, x__xgafv=None)
Creates a new policy in the specified project and region using the data
@@ -98,6 +101,12 @@ Instance Methods
patch(project, region, sslPolicy, body=None, requestId=None, x__xgafv=None)
Patches the specified SSL policy with the data included in the request.
+
+ setIamPolicy(project, region, resource, body=None, x__xgafv=None)
+Sets the access control policy on the specified resource.
+
+ testIamPermissions(project, region, resource, body=None, x__xgafv=None)
+Returns permissions that a caller has on the specified resource.
Method Details
close()
@@ -512,6 +521,375 @@ Method Details
}
+
+ getIamPolicy(project, region, resource, optionsRequestedPolicyVersion=None, x__xgafv=None)
+ Gets the access control policy for a resource. May be empty if no such
+policy or resource exists.
+
+Args:
+ project: string, Project ID for this request. (required)
+ region: string, The name of the region for this request. (required)
+ resource: string, Name or id of the resource for this request. (required)
+ optionsRequestedPolicyVersion: integer, Requested IAM Policy version.
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # An Identity and Access Management (IAM) policy, which specifies access
+ # controls for Google Cloud resources.
+ #
+ #
+ # A `Policy` is a collection of `bindings`. A `binding` binds one or more
+ # `members`, or principals, to a single `role`. Principals can be user
+ # accounts, service accounts, Google groups, and domains (such as G Suite). A
+ # `role` is a named list of permissions; each `role` can be an IAM predefined
+ # role or a user-created custom role.
+ #
+ # For some types of Google Cloud resources, a `binding` can also specify a
+ # `condition`, which is a logical expression that allows access to a resource
+ # only if the expression evaluates to `true`. A condition can add constraints
+ # based on attributes of the request, the resource, or both. To learn which
+ # resources support conditions in their IAM policies, see the
+ # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+ #
+ # **JSON example:**
+ #
+ # ```
+ # {
+ # "bindings": [
+ # {
+ # "role": "roles/resourcemanager.organizationAdmin",
+ # "members": [
+ # "user:mike@example.com",
+ # "group:admins@example.com",
+ # "domain:google.com",
+ # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
+ # ]
+ # },
+ # {
+ # "role": "roles/resourcemanager.organizationViewer",
+ # "members": [
+ # "user:eve@example.com"
+ # ],
+ # "condition": {
+ # "title": "expirable access",
+ # "description": "Does not grant access after Sep 2020",
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')",
+ # }
+ # }
+ # ],
+ # "etag": "BwWWja0YfJA=",
+ # "version": 3
+ # }
+ # ```
+ #
+ # **YAML example:**
+ #
+ # ```
+ # bindings:
+ # - members:
+ # - user:mike@example.com
+ # - group:admins@example.com
+ # - domain:google.com
+ # - serviceAccount:my-project-id@appspot.gserviceaccount.com
+ # role: roles/resourcemanager.organizationAdmin
+ # - members:
+ # - user:eve@example.com
+ # role: roles/resourcemanager.organizationViewer
+ # condition:
+ # title: expirable access
+ # description: Does not grant access after Sep 2020
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
+ # etag: BwWWja0YfJA=
+ # version: 3
+ # ```
+ #
+ # For a description of IAM and its features, see the
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
+ "auditConfigs": [ # Specifies cloud audit logging configuration for this policy.
+ { # Specifies the audit configuration for a service.
+ # The configuration determines which permission types are logged, and what
+ # identities, if any, are exempted from logging.
+ # An AuditConfig must have one or more AuditLogConfigs.
+ #
+ # If there are AuditConfigs for both `allServices` and a specific service,
+ # the union of the two AuditConfigs is used for that service: the log_types
+ # specified in each AuditConfig are enabled, and the exempted_members in each
+ # AuditLogConfig are exempted.
+ #
+ # Example Policy with multiple AuditConfigs:
+ #
+ # {
+ # "audit_configs": [
+ # {
+ # "service": "allServices",
+ # "audit_log_configs": [
+ # {
+ # "log_type": "DATA_READ",
+ # "exempted_members": [
+ # "user:jose@example.com"
+ # ]
+ # },
+ # {
+ # "log_type": "DATA_WRITE"
+ # },
+ # {
+ # "log_type": "ADMIN_READ"
+ # }
+ # ]
+ # },
+ # {
+ # "service": "sampleservice.googleapis.com",
+ # "audit_log_configs": [
+ # {
+ # "log_type": "DATA_READ"
+ # },
+ # {
+ # "log_type": "DATA_WRITE",
+ # "exempted_members": [
+ # "user:aliya@example.com"
+ # ]
+ # }
+ # ]
+ # }
+ # ]
+ # }
+ #
+ # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
+ # logging. It also exempts `jose@example.com` from DATA_READ logging, and
+ # `aliya@example.com` from DATA_WRITE logging.
+ "auditLogConfigs": [ # The configuration for logging of each type of permission.
+ { # Provides the configuration for logging a type of permissions.
+ # Example:
+ #
+ # {
+ # "audit_log_configs": [
+ # {
+ # "log_type": "DATA_READ",
+ # "exempted_members": [
+ # "user:jose@example.com"
+ # ]
+ # },
+ # {
+ # "log_type": "DATA_WRITE"
+ # }
+ # ]
+ # }
+ #
+ # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
+ # jose@example.com from DATA_READ logging.
+ "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of
+ # permission.
+ # Follows the same format of Binding.members.
+ "A String",
+ ],
+ "logType": "A String", # The log type that this config enables.
+ },
+ ],
+ "service": "A String", # Specifies a service that will be enabled for audit logging.
+ # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
+ # `allServices` is a special value that covers all services.
+ },
+ ],
+ "bindings": [ # Associates a list of `members`, or principals, with a `role`. Optionally,
+ # may specify a `condition` that determines how and when the `bindings` are
+ # applied. Each of the `bindings` must contain at least one principal.
+ #
+ # The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250
+ # of these principals can be Google groups. Each occurrence of a principal
+ # counts towards these limits. For example, if the `bindings` grant 50
+ # different roles to `user:alice@example.com`, and not to any other
+ # principal, then you can add another 1,450 principals to the `bindings` in
+ # the `Policy`.
+ { # Associates `members`, or principals, with a `role`.
+ "condition": { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
+ #
+ # If the condition evaluates to `true`, then this binding applies to the
+ # current request.
+ #
+ # If the condition evaluates to `false`, then this binding does not apply to
+ # the current request. However, a different role binding might grant the same
+ # role to one or more of the principals in this binding.
+ #
+ # To learn which resources support conditions in their IAM policies, see the
+ # [IAM
+ # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+ # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
+ # are documented at https://github.com/google/cel-spec.
+ #
+ # Example (Comparison):
+ #
+ # title: "Summary size limit"
+ # description: "Determines if a summary is less than 100 chars"
+ # expression: "document.summary.size() < 100"
+ #
+ # Example (Equality):
+ #
+ # title: "Requestor is owner"
+ # description: "Determines if requestor is the document owner"
+ # expression: "document.owner == request.auth.claims.email"
+ #
+ # Example (Logic):
+ #
+ # title: "Public documents"
+ # description: "Determine whether the document should be publicly visible"
+ # expression: "document.type != 'private' && document.type != 'internal'"
+ #
+ # Example (Data Manipulation):
+ #
+ # title: "Notification string"
+ # description: "Create a notification string with a timestamp."
+ # expression: "'New message received at ' + string(document.create_time)"
+ #
+ # The exact variables and functions that may be referenced within an expression
+ # are determined by the service that evaluates it. See the service
+ # documentation for additional information.
+ "description": "A String", # Optional. Description of the expression. This is a longer text which
+ # describes the expression, e.g. when hovered over it in a UI.
+ "expression": "A String", # Textual representation of an expression in Common Expression Language
+ # syntax.
+ "location": "A String", # Optional. String indicating the location of the expression for error
+ # reporting, e.g. a file name and a position in the file.
+ "title": "A String", # Optional. Title for the expression, i.e. a short string describing
+ # its purpose. This can be used e.g. in UIs which allow to enter the
+ # expression.
+ },
+ "members": [ # Specifies the principals requesting access for a Google Cloud resource.
+ # `members` can have the following values:
+ #
+ # * `allUsers`: A special identifier that represents anyone who is
+ # on the internet; with or without a Google account.
+ #
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
+ # who is authenticated with a Google account or a service account.
+ # Does not include identities that come from external identity providers
+ # (IdPs) through identity federation.
+ #
+ # * `user:{emailid}`: An email address that represents a specific Google
+ # account. For example, `alice@example.com` .
+ #
+ #
+ # * `serviceAccount:{emailid}`: An email address that represents a Google
+ # service account. For example,
+ # `my-other-app@appspot.gserviceaccount.com`.
+ #
+ # * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An
+ # identifier for a
+ # [Kubernetes service
+ # account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts).
+ # For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`.
+ #
+ # * `group:{emailid}`: An email address that represents a Google group.
+ # For example, `admins@example.com`.
+ #
+ #
+ # * `domain:{domain}`: The G Suite domain (primary) that represents all the
+ # users of that domain. For example, `google.com` or `example.com`.
+ #
+ #
+ #
+ #
+ # * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`:
+ # A single identity in a workforce identity pool.
+ #
+ # * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`:
+ # All workforce identities in a group.
+ #
+ # * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`:
+ # All workforce identities with a specific attribute value.
+ #
+ # * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*`:
+ # All identities in a workforce identity pool.
+ #
+ # * `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`:
+ # A single identity in a workload identity pool.
+ #
+ # * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`:
+ # A workload identity pool group.
+ #
+ # * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`:
+ # All identities in a workload identity pool with a certain attribute.
+ #
+ # * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*`:
+ # All identities in a workload identity pool.
+ #
+ # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
+ # identifier) representing a user that has been recently deleted. For
+ # example, `alice@example.com?uid=123456789012345678901`. If the user is
+ # recovered, this value reverts to `user:{emailid}` and the recovered user
+ # retains the role in the binding.
+ #
+ # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
+ # unique identifier) representing a service account that has been recently
+ # deleted. For example,
+ # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
+ # If the service account is undeleted, this value reverts to
+ # `serviceAccount:{emailid}` and the undeleted service account retains the
+ # role in the binding.
+ #
+ # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
+ # identifier) representing a Google group that has been recently
+ # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
+ # the group is recovered, this value reverts to `group:{emailid}` and the
+ # recovered group retains the role in the binding.
+ #
+ # * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`:
+ # Deleted single identity in a workforce identity pool. For example,
+ # `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.
+ "A String",
+ ],
+ "role": "A String", # Role that is assigned to the list of `members`, or principals.
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
+ #
+ # For an overview of the IAM roles and permissions, see the
+ # [IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For
+ # a list of the available pre-defined roles, see
+ # [here](https://cloud.google.com/iam/docs/understanding-roles).
+ },
+ ],
+ "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
+ # prevent simultaneous updates of a policy from overwriting each other.
+ # It is strongly suggested that systems make use of the `etag` in the
+ # read-modify-write cycle to perform policy updates in order to avoid race
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
+ # systems are expected to put that etag in the request to `setIamPolicy` to
+ # ensure that their change will be applied to the same version of the policy.
+ #
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
+ # the conditions in the version `3` policy are lost.
+ "version": 42, # Specifies the format of the policy.
+ #
+ # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
+ # are rejected.
+ #
+ # Any operation that affects conditional role bindings must specify version
+ # `3`. This requirement applies to the following operations:
+ #
+ # * Getting a policy that includes a conditional role binding
+ # * Adding a conditional role binding to a policy
+ # * Changing a conditional role binding in a policy
+ # * Removing any role binding, with or without a condition, from a policy
+ # that includes conditions
+ #
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
+ # the conditions in the version `3` policy are lost.
+ #
+ # If a policy does not include any conditions, operations on that policy may
+ # specify any valid version or leave the field unset.
+ #
+ # To learn which resources support conditions in their IAM policies, see the
+ # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+}
+
+
insert(project, region, body=None, requestId=None, x__xgafv=None)
Creates a new policy in the specified project and region using the data
@@ -1621,4 +1999,913 @@ Method Details
}
+
+ setIamPolicy(project, region, resource, body=None, x__xgafv=None)
+ Sets the access control policy on the specified resource.
+Replaces any existing policy.
+
+Args:
+ project: string, Project ID for this request. (required)
+ region: string, The name of the region for this request. (required)
+ resource: string, Name or id of the resource for this request. (required)
+ body: object, The request body.
+ The object takes the form of:
+
+{
+ "bindings": [ # Flatten Policy to create a backwacd compatible wire-format.
+ # Deprecated. Use 'policy' to specify bindings.
+ { # Associates `members`, or principals, with a `role`.
+ "condition": { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
+ #
+ # If the condition evaluates to `true`, then this binding applies to the
+ # current request.
+ #
+ # If the condition evaluates to `false`, then this binding does not apply to
+ # the current request. However, a different role binding might grant the same
+ # role to one or more of the principals in this binding.
+ #
+ # To learn which resources support conditions in their IAM policies, see the
+ # [IAM
+ # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+ # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
+ # are documented at https://github.com/google/cel-spec.
+ #
+ # Example (Comparison):
+ #
+ # title: "Summary size limit"
+ # description: "Determines if a summary is less than 100 chars"
+ # expression: "document.summary.size() < 100"
+ #
+ # Example (Equality):
+ #
+ # title: "Requestor is owner"
+ # description: "Determines if requestor is the document owner"
+ # expression: "document.owner == request.auth.claims.email"
+ #
+ # Example (Logic):
+ #
+ # title: "Public documents"
+ # description: "Determine whether the document should be publicly visible"
+ # expression: "document.type != 'private' && document.type != 'internal'"
+ #
+ # Example (Data Manipulation):
+ #
+ # title: "Notification string"
+ # description: "Create a notification string with a timestamp."
+ # expression: "'New message received at ' + string(document.create_time)"
+ #
+ # The exact variables and functions that may be referenced within an expression
+ # are determined by the service that evaluates it. See the service
+ # documentation for additional information.
+ "description": "A String", # Optional. Description of the expression. This is a longer text which
+ # describes the expression, e.g. when hovered over it in a UI.
+ "expression": "A String", # Textual representation of an expression in Common Expression Language
+ # syntax.
+ "location": "A String", # Optional. String indicating the location of the expression for error
+ # reporting, e.g. a file name and a position in the file.
+ "title": "A String", # Optional. Title for the expression, i.e. a short string describing
+ # its purpose. This can be used e.g. in UIs which allow to enter the
+ # expression.
+ },
+ "members": [ # Specifies the principals requesting access for a Google Cloud resource.
+ # `members` can have the following values:
+ #
+ # * `allUsers`: A special identifier that represents anyone who is
+ # on the internet; with or without a Google account.
+ #
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
+ # who is authenticated with a Google account or a service account.
+ # Does not include identities that come from external identity providers
+ # (IdPs) through identity federation.
+ #
+ # * `user:{emailid}`: An email address that represents a specific Google
+ # account. For example, `alice@example.com` .
+ #
+ #
+ # * `serviceAccount:{emailid}`: An email address that represents a Google
+ # service account. For example,
+ # `my-other-app@appspot.gserviceaccount.com`.
+ #
+ # * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An
+ # identifier for a
+ # [Kubernetes service
+ # account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts).
+ # For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`.
+ #
+ # * `group:{emailid}`: An email address that represents a Google group.
+ # For example, `admins@example.com`.
+ #
+ #
+ # * `domain:{domain}`: The G Suite domain (primary) that represents all the
+ # users of that domain. For example, `google.com` or `example.com`.
+ #
+ #
+ #
+ #
+ # * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`:
+ # A single identity in a workforce identity pool.
+ #
+ # * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`:
+ # All workforce identities in a group.
+ #
+ # * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`:
+ # All workforce identities with a specific attribute value.
+ #
+ # * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*`:
+ # All identities in a workforce identity pool.
+ #
+ # * `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`:
+ # A single identity in a workload identity pool.
+ #
+ # * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`:
+ # A workload identity pool group.
+ #
+ # * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`:
+ # All identities in a workload identity pool with a certain attribute.
+ #
+ # * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*`:
+ # All identities in a workload identity pool.
+ #
+ # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
+ # identifier) representing a user that has been recently deleted. For
+ # example, `alice@example.com?uid=123456789012345678901`. If the user is
+ # recovered, this value reverts to `user:{emailid}` and the recovered user
+ # retains the role in the binding.
+ #
+ # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
+ # unique identifier) representing a service account that has been recently
+ # deleted. For example,
+ # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
+ # If the service account is undeleted, this value reverts to
+ # `serviceAccount:{emailid}` and the undeleted service account retains the
+ # role in the binding.
+ #
+ # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
+ # identifier) representing a Google group that has been recently
+ # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
+ # the group is recovered, this value reverts to `group:{emailid}` and the
+ # recovered group retains the role in the binding.
+ #
+ # * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`:
+ # Deleted single identity in a workforce identity pool. For example,
+ # `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.
+ "A String",
+ ],
+ "role": "A String", # Role that is assigned to the list of `members`, or principals.
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
+ #
+ # For an overview of the IAM roles and permissions, see the
+ # [IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For
+ # a list of the available pre-defined roles, see
+ # [here](https://cloud.google.com/iam/docs/understanding-roles).
+ },
+ ],
+ "etag": "A String", # Flatten Policy to create a backward compatible wire-format.
+ # Deprecated. Use 'policy' to specify the etag.
+ "policy": { # An Identity and Access Management (IAM) policy, which specifies access # REQUIRED: The complete policy to be applied to the 'resource'. The size of
+ # the policy is limited to a few 10s of KB. An empty policy is in general a
+ # valid policy but certain services (like Projects) might reject them.
+ # controls for Google Cloud resources.
+ #
+ #
+ # A `Policy` is a collection of `bindings`. A `binding` binds one or more
+ # `members`, or principals, to a single `role`. Principals can be user
+ # accounts, service accounts, Google groups, and domains (such as G Suite). A
+ # `role` is a named list of permissions; each `role` can be an IAM predefined
+ # role or a user-created custom role.
+ #
+ # For some types of Google Cloud resources, a `binding` can also specify a
+ # `condition`, which is a logical expression that allows access to a resource
+ # only if the expression evaluates to `true`. A condition can add constraints
+ # based on attributes of the request, the resource, or both. To learn which
+ # resources support conditions in their IAM policies, see the
+ # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+ #
+ # **JSON example:**
+ #
+ # ```
+ # {
+ # "bindings": [
+ # {
+ # "role": "roles/resourcemanager.organizationAdmin",
+ # "members": [
+ # "user:mike@example.com",
+ # "group:admins@example.com",
+ # "domain:google.com",
+ # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
+ # ]
+ # },
+ # {
+ # "role": "roles/resourcemanager.organizationViewer",
+ # "members": [
+ # "user:eve@example.com"
+ # ],
+ # "condition": {
+ # "title": "expirable access",
+ # "description": "Does not grant access after Sep 2020",
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')",
+ # }
+ # }
+ # ],
+ # "etag": "BwWWja0YfJA=",
+ # "version": 3
+ # }
+ # ```
+ #
+ # **YAML example:**
+ #
+ # ```
+ # bindings:
+ # - members:
+ # - user:mike@example.com
+ # - group:admins@example.com
+ # - domain:google.com
+ # - serviceAccount:my-project-id@appspot.gserviceaccount.com
+ # role: roles/resourcemanager.organizationAdmin
+ # - members:
+ # - user:eve@example.com
+ # role: roles/resourcemanager.organizationViewer
+ # condition:
+ # title: expirable access
+ # description: Does not grant access after Sep 2020
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
+ # etag: BwWWja0YfJA=
+ # version: 3
+ # ```
+ #
+ # For a description of IAM and its features, see the
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
+ "auditConfigs": [ # Specifies cloud audit logging configuration for this policy.
+ { # Specifies the audit configuration for a service.
+ # The configuration determines which permission types are logged, and what
+ # identities, if any, are exempted from logging.
+ # An AuditConfig must have one or more AuditLogConfigs.
+ #
+ # If there are AuditConfigs for both `allServices` and a specific service,
+ # the union of the two AuditConfigs is used for that service: the log_types
+ # specified in each AuditConfig are enabled, and the exempted_members in each
+ # AuditLogConfig are exempted.
+ #
+ # Example Policy with multiple AuditConfigs:
+ #
+ # {
+ # "audit_configs": [
+ # {
+ # "service": "allServices",
+ # "audit_log_configs": [
+ # {
+ # "log_type": "DATA_READ",
+ # "exempted_members": [
+ # "user:jose@example.com"
+ # ]
+ # },
+ # {
+ # "log_type": "DATA_WRITE"
+ # },
+ # {
+ # "log_type": "ADMIN_READ"
+ # }
+ # ]
+ # },
+ # {
+ # "service": "sampleservice.googleapis.com",
+ # "audit_log_configs": [
+ # {
+ # "log_type": "DATA_READ"
+ # },
+ # {
+ # "log_type": "DATA_WRITE",
+ # "exempted_members": [
+ # "user:aliya@example.com"
+ # ]
+ # }
+ # ]
+ # }
+ # ]
+ # }
+ #
+ # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
+ # logging. It also exempts `jose@example.com` from DATA_READ logging, and
+ # `aliya@example.com` from DATA_WRITE logging.
+ "auditLogConfigs": [ # The configuration for logging of each type of permission.
+ { # Provides the configuration for logging a type of permissions.
+ # Example:
+ #
+ # {
+ # "audit_log_configs": [
+ # {
+ # "log_type": "DATA_READ",
+ # "exempted_members": [
+ # "user:jose@example.com"
+ # ]
+ # },
+ # {
+ # "log_type": "DATA_WRITE"
+ # }
+ # ]
+ # }
+ #
+ # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
+ # jose@example.com from DATA_READ logging.
+ "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of
+ # permission.
+ # Follows the same format of Binding.members.
+ "A String",
+ ],
+ "logType": "A String", # The log type that this config enables.
+ },
+ ],
+ "service": "A String", # Specifies a service that will be enabled for audit logging.
+ # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
+ # `allServices` is a special value that covers all services.
+ },
+ ],
+ "bindings": [ # Associates a list of `members`, or principals, with a `role`. Optionally,
+ # may specify a `condition` that determines how and when the `bindings` are
+ # applied. Each of the `bindings` must contain at least one principal.
+ #
+ # The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250
+ # of these principals can be Google groups. Each occurrence of a principal
+ # counts towards these limits. For example, if the `bindings` grant 50
+ # different roles to `user:alice@example.com`, and not to any other
+ # principal, then you can add another 1,450 principals to the `bindings` in
+ # the `Policy`.
+ { # Associates `members`, or principals, with a `role`.
+ "condition": { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
+ #
+ # If the condition evaluates to `true`, then this binding applies to the
+ # current request.
+ #
+ # If the condition evaluates to `false`, then this binding does not apply to
+ # the current request. However, a different role binding might grant the same
+ # role to one or more of the principals in this binding.
+ #
+ # To learn which resources support conditions in their IAM policies, see the
+ # [IAM
+ # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+ # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
+ # are documented at https://github.com/google/cel-spec.
+ #
+ # Example (Comparison):
+ #
+ # title: "Summary size limit"
+ # description: "Determines if a summary is less than 100 chars"
+ # expression: "document.summary.size() < 100"
+ #
+ # Example (Equality):
+ #
+ # title: "Requestor is owner"
+ # description: "Determines if requestor is the document owner"
+ # expression: "document.owner == request.auth.claims.email"
+ #
+ # Example (Logic):
+ #
+ # title: "Public documents"
+ # description: "Determine whether the document should be publicly visible"
+ # expression: "document.type != 'private' && document.type != 'internal'"
+ #
+ # Example (Data Manipulation):
+ #
+ # title: "Notification string"
+ # description: "Create a notification string with a timestamp."
+ # expression: "'New message received at ' + string(document.create_time)"
+ #
+ # The exact variables and functions that may be referenced within an expression
+ # are determined by the service that evaluates it. See the service
+ # documentation for additional information.
+ "description": "A String", # Optional. Description of the expression. This is a longer text which
+ # describes the expression, e.g. when hovered over it in a UI.
+ "expression": "A String", # Textual representation of an expression in Common Expression Language
+ # syntax.
+ "location": "A String", # Optional. String indicating the location of the expression for error
+ # reporting, e.g. a file name and a position in the file.
+ "title": "A String", # Optional. Title for the expression, i.e. a short string describing
+ # its purpose. This can be used e.g. in UIs which allow to enter the
+ # expression.
+ },
+ "members": [ # Specifies the principals requesting access for a Google Cloud resource.
+ # `members` can have the following values:
+ #
+ # * `allUsers`: A special identifier that represents anyone who is
+ # on the internet; with or without a Google account.
+ #
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
+ # who is authenticated with a Google account or a service account.
+ # Does not include identities that come from external identity providers
+ # (IdPs) through identity federation.
+ #
+ # * `user:{emailid}`: An email address that represents a specific Google
+ # account. For example, `alice@example.com` .
+ #
+ #
+ # * `serviceAccount:{emailid}`: An email address that represents a Google
+ # service account. For example,
+ # `my-other-app@appspot.gserviceaccount.com`.
+ #
+ # * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An
+ # identifier for a
+ # [Kubernetes service
+ # account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts).
+ # For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`.
+ #
+ # * `group:{emailid}`: An email address that represents a Google group.
+ # For example, `admins@example.com`.
+ #
+ #
+ # * `domain:{domain}`: The G Suite domain (primary) that represents all the
+ # users of that domain. For example, `google.com` or `example.com`.
+ #
+ #
+ #
+ #
+ # * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`:
+ # A single identity in a workforce identity pool.
+ #
+ # * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`:
+ # All workforce identities in a group.
+ #
+ # * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`:
+ # All workforce identities with a specific attribute value.
+ #
+ # * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*`:
+ # All identities in a workforce identity pool.
+ #
+ # * `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`:
+ # A single identity in a workload identity pool.
+ #
+ # * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`:
+ # A workload identity pool group.
+ #
+ # * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`:
+ # All identities in a workload identity pool with a certain attribute.
+ #
+ # * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*`:
+ # All identities in a workload identity pool.
+ #
+ # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
+ # identifier) representing a user that has been recently deleted. For
+ # example, `alice@example.com?uid=123456789012345678901`. If the user is
+ # recovered, this value reverts to `user:{emailid}` and the recovered user
+ # retains the role in the binding.
+ #
+ # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
+ # unique identifier) representing a service account that has been recently
+ # deleted. For example,
+ # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
+ # If the service account is undeleted, this value reverts to
+ # `serviceAccount:{emailid}` and the undeleted service account retains the
+ # role in the binding.
+ #
+ # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
+ # identifier) representing a Google group that has been recently
+ # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
+ # the group is recovered, this value reverts to `group:{emailid}` and the
+ # recovered group retains the role in the binding.
+ #
+ # * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`:
+ # Deleted single identity in a workforce identity pool. For example,
+ # `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.
+ "A String",
+ ],
+ "role": "A String", # Role that is assigned to the list of `members`, or principals.
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
+ #
+ # For an overview of the IAM roles and permissions, see the
+ # [IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For
+ # a list of the available pre-defined roles, see
+ # [here](https://cloud.google.com/iam/docs/understanding-roles).
+ },
+ ],
+ "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
+ # prevent simultaneous updates of a policy from overwriting each other.
+ # It is strongly suggested that systems make use of the `etag` in the
+ # read-modify-write cycle to perform policy updates in order to avoid race
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
+ # systems are expected to put that etag in the request to `setIamPolicy` to
+ # ensure that their change will be applied to the same version of the policy.
+ #
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
+ # the conditions in the version `3` policy are lost.
+ "version": 42, # Specifies the format of the policy.
+ #
+ # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
+ # are rejected.
+ #
+ # Any operation that affects conditional role bindings must specify version
+ # `3`. This requirement applies to the following operations:
+ #
+ # * Getting a policy that includes a conditional role binding
+ # * Adding a conditional role binding to a policy
+ # * Changing a conditional role binding in a policy
+ # * Removing any role binding, with or without a condition, from a policy
+ # that includes conditions
+ #
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
+ # the conditions in the version `3` policy are lost.
+ #
+ # If a policy does not include any conditions, operations on that policy may
+ # specify any valid version or leave the field unset.
+ #
+ # To learn which resources support conditions in their IAM policies, see the
+ # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+ },
+}
+
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # An Identity and Access Management (IAM) policy, which specifies access
+ # controls for Google Cloud resources.
+ #
+ #
+ # A `Policy` is a collection of `bindings`. A `binding` binds one or more
+ # `members`, or principals, to a single `role`. Principals can be user
+ # accounts, service accounts, Google groups, and domains (such as G Suite). A
+ # `role` is a named list of permissions; each `role` can be an IAM predefined
+ # role or a user-created custom role.
+ #
+ # For some types of Google Cloud resources, a `binding` can also specify a
+ # `condition`, which is a logical expression that allows access to a resource
+ # only if the expression evaluates to `true`. A condition can add constraints
+ # based on attributes of the request, the resource, or both. To learn which
+ # resources support conditions in their IAM policies, see the
+ # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+ #
+ # **JSON example:**
+ #
+ # ```
+ # {
+ # "bindings": [
+ # {
+ # "role": "roles/resourcemanager.organizationAdmin",
+ # "members": [
+ # "user:mike@example.com",
+ # "group:admins@example.com",
+ # "domain:google.com",
+ # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
+ # ]
+ # },
+ # {
+ # "role": "roles/resourcemanager.organizationViewer",
+ # "members": [
+ # "user:eve@example.com"
+ # ],
+ # "condition": {
+ # "title": "expirable access",
+ # "description": "Does not grant access after Sep 2020",
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')",
+ # }
+ # }
+ # ],
+ # "etag": "BwWWja0YfJA=",
+ # "version": 3
+ # }
+ # ```
+ #
+ # **YAML example:**
+ #
+ # ```
+ # bindings:
+ # - members:
+ # - user:mike@example.com
+ # - group:admins@example.com
+ # - domain:google.com
+ # - serviceAccount:my-project-id@appspot.gserviceaccount.com
+ # role: roles/resourcemanager.organizationAdmin
+ # - members:
+ # - user:eve@example.com
+ # role: roles/resourcemanager.organizationViewer
+ # condition:
+ # title: expirable access
+ # description: Does not grant access after Sep 2020
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
+ # etag: BwWWja0YfJA=
+ # version: 3
+ # ```
+ #
+ # For a description of IAM and its features, see the
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
+ "auditConfigs": [ # Specifies cloud audit logging configuration for this policy.
+ { # Specifies the audit configuration for a service.
+ # The configuration determines which permission types are logged, and what
+ # identities, if any, are exempted from logging.
+ # An AuditConfig must have one or more AuditLogConfigs.
+ #
+ # If there are AuditConfigs for both `allServices` and a specific service,
+ # the union of the two AuditConfigs is used for that service: the log_types
+ # specified in each AuditConfig are enabled, and the exempted_members in each
+ # AuditLogConfig are exempted.
+ #
+ # Example Policy with multiple AuditConfigs:
+ #
+ # {
+ # "audit_configs": [
+ # {
+ # "service": "allServices",
+ # "audit_log_configs": [
+ # {
+ # "log_type": "DATA_READ",
+ # "exempted_members": [
+ # "user:jose@example.com"
+ # ]
+ # },
+ # {
+ # "log_type": "DATA_WRITE"
+ # },
+ # {
+ # "log_type": "ADMIN_READ"
+ # }
+ # ]
+ # },
+ # {
+ # "service": "sampleservice.googleapis.com",
+ # "audit_log_configs": [
+ # {
+ # "log_type": "DATA_READ"
+ # },
+ # {
+ # "log_type": "DATA_WRITE",
+ # "exempted_members": [
+ # "user:aliya@example.com"
+ # ]
+ # }
+ # ]
+ # }
+ # ]
+ # }
+ #
+ # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
+ # logging. It also exempts `jose@example.com` from DATA_READ logging, and
+ # `aliya@example.com` from DATA_WRITE logging.
+ "auditLogConfigs": [ # The configuration for logging of each type of permission.
+ { # Provides the configuration for logging a type of permissions.
+ # Example:
+ #
+ # {
+ # "audit_log_configs": [
+ # {
+ # "log_type": "DATA_READ",
+ # "exempted_members": [
+ # "user:jose@example.com"
+ # ]
+ # },
+ # {
+ # "log_type": "DATA_WRITE"
+ # }
+ # ]
+ # }
+ #
+ # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
+ # jose@example.com from DATA_READ logging.
+ "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of
+ # permission.
+ # Follows the same format of Binding.members.
+ "A String",
+ ],
+ "logType": "A String", # The log type that this config enables.
+ },
+ ],
+ "service": "A String", # Specifies a service that will be enabled for audit logging.
+ # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
+ # `allServices` is a special value that covers all services.
+ },
+ ],
+ "bindings": [ # Associates a list of `members`, or principals, with a `role`. Optionally,
+ # may specify a `condition` that determines how and when the `bindings` are
+ # applied. Each of the `bindings` must contain at least one principal.
+ #
+ # The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250
+ # of these principals can be Google groups. Each occurrence of a principal
+ # counts towards these limits. For example, if the `bindings` grant 50
+ # different roles to `user:alice@example.com`, and not to any other
+ # principal, then you can add another 1,450 principals to the `bindings` in
+ # the `Policy`.
+ { # Associates `members`, or principals, with a `role`.
+ "condition": { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
+ #
+ # If the condition evaluates to `true`, then this binding applies to the
+ # current request.
+ #
+ # If the condition evaluates to `false`, then this binding does not apply to
+ # the current request. However, a different role binding might grant the same
+ # role to one or more of the principals in this binding.
+ #
+ # To learn which resources support conditions in their IAM policies, see the
+ # [IAM
+ # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+ # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
+ # are documented at https://github.com/google/cel-spec.
+ #
+ # Example (Comparison):
+ #
+ # title: "Summary size limit"
+ # description: "Determines if a summary is less than 100 chars"
+ # expression: "document.summary.size() < 100"
+ #
+ # Example (Equality):
+ #
+ # title: "Requestor is owner"
+ # description: "Determines if requestor is the document owner"
+ # expression: "document.owner == request.auth.claims.email"
+ #
+ # Example (Logic):
+ #
+ # title: "Public documents"
+ # description: "Determine whether the document should be publicly visible"
+ # expression: "document.type != 'private' && document.type != 'internal'"
+ #
+ # Example (Data Manipulation):
+ #
+ # title: "Notification string"
+ # description: "Create a notification string with a timestamp."
+ # expression: "'New message received at ' + string(document.create_time)"
+ #
+ # The exact variables and functions that may be referenced within an expression
+ # are determined by the service that evaluates it. See the service
+ # documentation for additional information.
+ "description": "A String", # Optional. Description of the expression. This is a longer text which
+ # describes the expression, e.g. when hovered over it in a UI.
+ "expression": "A String", # Textual representation of an expression in Common Expression Language
+ # syntax.
+ "location": "A String", # Optional. String indicating the location of the expression for error
+ # reporting, e.g. a file name and a position in the file.
+ "title": "A String", # Optional. Title for the expression, i.e. a short string describing
+ # its purpose. This can be used e.g. in UIs which allow to enter the
+ # expression.
+ },
+ "members": [ # Specifies the principals requesting access for a Google Cloud resource.
+ # `members` can have the following values:
+ #
+ # * `allUsers`: A special identifier that represents anyone who is
+ # on the internet; with or without a Google account.
+ #
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
+ # who is authenticated with a Google account or a service account.
+ # Does not include identities that come from external identity providers
+ # (IdPs) through identity federation.
+ #
+ # * `user:{emailid}`: An email address that represents a specific Google
+ # account. For example, `alice@example.com` .
+ #
+ #
+ # * `serviceAccount:{emailid}`: An email address that represents a Google
+ # service account. For example,
+ # `my-other-app@appspot.gserviceaccount.com`.
+ #
+ # * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An
+ # identifier for a
+ # [Kubernetes service
+ # account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts).
+ # For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`.
+ #
+ # * `group:{emailid}`: An email address that represents a Google group.
+ # For example, `admins@example.com`.
+ #
+ #
+ # * `domain:{domain}`: The G Suite domain (primary) that represents all the
+ # users of that domain. For example, `google.com` or `example.com`.
+ #
+ #
+ #
+ #
+ # * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`:
+ # A single identity in a workforce identity pool.
+ #
+ # * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`:
+ # All workforce identities in a group.
+ #
+ # * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`:
+ # All workforce identities with a specific attribute value.
+ #
+ # * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*`:
+ # All identities in a workforce identity pool.
+ #
+ # * `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`:
+ # A single identity in a workload identity pool.
+ #
+ # * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`:
+ # A workload identity pool group.
+ #
+ # * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`:
+ # All identities in a workload identity pool with a certain attribute.
+ #
+ # * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*`:
+ # All identities in a workload identity pool.
+ #
+ # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
+ # identifier) representing a user that has been recently deleted. For
+ # example, `alice@example.com?uid=123456789012345678901`. If the user is
+ # recovered, this value reverts to `user:{emailid}` and the recovered user
+ # retains the role in the binding.
+ #
+ # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
+ # unique identifier) representing a service account that has been recently
+ # deleted. For example,
+ # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
+ # If the service account is undeleted, this value reverts to
+ # `serviceAccount:{emailid}` and the undeleted service account retains the
+ # role in the binding.
+ #
+ # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
+ # identifier) representing a Google group that has been recently
+ # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
+ # the group is recovered, this value reverts to `group:{emailid}` and the
+ # recovered group retains the role in the binding.
+ #
+ # * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`:
+ # Deleted single identity in a workforce identity pool. For example,
+ # `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.
+ "A String",
+ ],
+ "role": "A String", # Role that is assigned to the list of `members`, or principals.
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
+ #
+ # For an overview of the IAM roles and permissions, see the
+ # [IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For
+ # a list of the available pre-defined roles, see
+ # [here](https://cloud.google.com/iam/docs/understanding-roles).
+ },
+ ],
+ "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
+ # prevent simultaneous updates of a policy from overwriting each other.
+ # It is strongly suggested that systems make use of the `etag` in the
+ # read-modify-write cycle to perform policy updates in order to avoid race
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
+ # systems are expected to put that etag in the request to `setIamPolicy` to
+ # ensure that their change will be applied to the same version of the policy.
+ #
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
+ # the conditions in the version `3` policy are lost.
+ "version": 42, # Specifies the format of the policy.
+ #
+ # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
+ # are rejected.
+ #
+ # Any operation that affects conditional role bindings must specify version
+ # `3`. This requirement applies to the following operations:
+ #
+ # * Getting a policy that includes a conditional role binding
+ # * Adding a conditional role binding to a policy
+ # * Changing a conditional role binding in a policy
+ # * Removing any role binding, with or without a condition, from a policy
+ # that includes conditions
+ #
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
+ # the conditions in the version `3` policy are lost.
+ #
+ # If a policy does not include any conditions, operations on that policy may
+ # specify any valid version or leave the field unset.
+ #
+ # To learn which resources support conditions in their IAM policies, see the
+ # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+}
+
+
+
+ testIamPermissions(project, region, resource, body=None, x__xgafv=None)
+ Returns permissions that a caller has on the specified resource.
+
+Args:
+ project: string, Project ID for this request. (required)
+ region: string, The name of the region for this request. (required)
+ resource: string, Name or id of the resource for this request. (required)
+ body: object, The request body.
+ The object takes the form of:
+
+{
+ "permissions": [ # The set of permissions to check for the 'resource'. Permissions with
+ # wildcards (such as '*' or 'storage.*') are not allowed.
+ "A String",
+ ],
+}
+
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ {
+ "permissions": [ # A subset of `TestPermissionsRequest.permissions` that the caller is
+ # allowed.
+ "A String",
+ ],
+}
+
+