diff --git a/accesscontextmanager/v1/accesscontextmanager-api.json b/accesscontextmanager/v1/accesscontextmanager-api.json index 773eb6f385e..2b956fcdd94 100644 --- a/accesscontextmanager/v1/accesscontextmanager-api.json +++ b/accesscontextmanager/v1/accesscontextmanager-api.json @@ -1083,7 +1083,7 @@ } } }, - "revision": "20220826", + "revision": "20221107", "rootUrl": "https://accesscontextmanager.googleapis.com/", "schemas": { "AccessContextManagerOperationMetadata": { @@ -1944,7 +1944,7 @@ "PERIMETER_TYPE_BRIDGE" ], "enumDescriptions": [ - "Regular Perimeter.", + "Regular Perimeter. When no value is specified, the perimeter uses this type.", "Perimeter Bridge." ], "type": "string" diff --git a/accesscontextmanager/v1/accesscontextmanager-gen.go b/accesscontextmanager/v1/accesscontextmanager-gen.go index cd006a23a77..702dcf73148 100644 --- a/accesscontextmanager/v1/accesscontextmanager-gen.go +++ b/accesscontextmanager/v1/accesscontextmanager-gen.go @@ -1984,7 +1984,8 @@ type ServicePerimeter struct { // must be empty. // // Possible values: - // "PERIMETER_TYPE_REGULAR" - Regular Perimeter. + // "PERIMETER_TYPE_REGULAR" - Regular Perimeter. When no value is + // specified, the perimeter uses this type. // "PERIMETER_TYPE_BRIDGE" - Perimeter Bridge. PerimeterType string `json:"perimeterType,omitempty"` diff --git a/accesscontextmanager/v1beta/accesscontextmanager-api.json b/accesscontextmanager/v1beta/accesscontextmanager-api.json index 0129faa87ee..990b68e55a1 100644 --- a/accesscontextmanager/v1beta/accesscontextmanager-api.json +++ b/accesscontextmanager/v1beta/accesscontextmanager-api.json @@ -609,7 +609,7 @@ } } }, - "revision": "20210814", + "revision": "20221107", "rootUrl": "https://accesscontextmanager.googleapis.com/", "schemas": { "AccessContextManagerOperationMetadata": { @@ -976,7 +976,7 @@ "PERIMETER_TYPE_BRIDGE" ], "enumDescriptions": [ - "Regular Perimeter.", + "Regular Perimeter. When no value is specified, the perimeter uses this type.", "Perimeter Bridge." ], "type": "string" diff --git a/accesscontextmanager/v1beta/accesscontextmanager-gen.go b/accesscontextmanager/v1beta/accesscontextmanager-gen.go index d15f4287127..534b21977ca 100644 --- a/accesscontextmanager/v1beta/accesscontextmanager-gen.go +++ b/accesscontextmanager/v1beta/accesscontextmanager-gen.go @@ -819,7 +819,8 @@ type ServicePerimeter struct { // lists must be empty. // // Possible values: - // "PERIMETER_TYPE_REGULAR" - Regular Perimeter. + // "PERIMETER_TYPE_REGULAR" - Regular Perimeter. When no value is + // specified, the perimeter uses this type. // "PERIMETER_TYPE_BRIDGE" - Perimeter Bridge. PerimeterType string `json:"perimeterType,omitempty"` diff --git a/admin/datatransfer/v1/admin-api.json b/admin/datatransfer/v1/admin-api.json index 7ba8979b12c..0921bcaa391 100644 --- a/admin/datatransfer/v1/admin-api.json +++ b/admin/datatransfer/v1/admin-api.json @@ -202,7 +202,7 @@ ] }, "insert": { - "description": "Inserts a data transfer request.", + "description": "Inserts a data transfer request. See the [Transfer parameters](/admin-sdk/data-transfer/v1/parameters) reference for specific application requirements.", "flatPath": "admin/datatransfer/v1/transfers", "httpMethod": "POST", "id": "datatransfer.transfers.insert", @@ -272,11 +272,11 @@ } } }, - "revision": "20210720", + "revision": "20221109", "rootUrl": "https://admin.googleapis.com/", "schemas": { "Application": { - "description": "Applications resources represent applications installed on the domain that support transferring ownership of user data.", + "description": "Application resources represent applications installed on the domain that support transferring ownership of user data.", "id": "Application", "properties": { "etag": { @@ -284,7 +284,7 @@ "type": "string" }, "id": { - "description": "The application's ID.", + "description": "The application's ID. Retrievable by using the [`applications.list()`](/admin-sdk/data-transfer/reference/rest/v1/applications/list) method.", "format": "int64", "type": "string" }, @@ -298,7 +298,7 @@ "type": "string" }, "transferParams": { - "description": "The list of all possible transfer parameters for this application. These parameters can be used to select the data of the user in this application to be transferred.", + "description": "The list of all possible transfer parameters for this application. These parameters select which categories of the user's data to transfer.", "items": { "$ref": "ApplicationTransferParam" }, @@ -317,14 +317,14 @@ "type": "string" }, "applicationTransferParams": { - "description": "The transfer parameters for the application. These parameters are used to select the data which will get transferred in context of this application.", + "description": "The transfer parameters for the application. These parameters are used to select the data which will get transferred in context of this application. For more information about the specific values available for each application, see the [Transfer parameters](/admin-sdk/data-transfer/v1/parameters) reference.", "items": { "$ref": "ApplicationTransferParam" }, "type": "array" }, "applicationTransferStatus": { - "description": "Current status of transfer for this application. (Read-only)", + "description": "Read-only. Current status of transfer for this application.", "type": "string" } }, @@ -335,11 +335,11 @@ "id": "ApplicationTransferParam", "properties": { "key": { - "description": "The type of the transfer parameter. eg: 'PRIVACY_LEVEL'", + "description": "The type of the transfer parameter, such as `PRIVACY_LEVEL`.", "type": "string" }, "value": { - "description": "The value of the corresponding transfer parameter. eg: 'PRIVATE' or 'SHARED'", + "description": "The value of the transfer parameter, such as `PRIVATE` or `SHARED`.", "items": { "type": "string" }, @@ -353,7 +353,7 @@ "id": "ApplicationsListResponse", "properties": { "applications": { - "description": "List of applications that support data transfer and are also installed for the customer.", + "description": "The list of applications that support data transfer and are also installed for the customer.", "items": { "$ref": "Application" }, @@ -369,7 +369,7 @@ "type": "string" }, "nextPageToken": { - "description": "Continuation token which will be used to specify next page in list API.", + "description": "Token to specify the next page in the list.", "type": "string" } }, @@ -380,7 +380,7 @@ "id": "DataTransfer", "properties": { "applicationDataTransfers": { - "description": "List of per application data transfer resources. It contains data transfer details of the applications associated with this transfer resource. Note that this list is also used to specify the applications for which data transfer has to be done at the time of the transfer resource creation.", + "description": "The list of per-application data transfer resources. It contains details of the applications associated with this transfer resource, and also specifies the applications for which data transfer has to be done at the time of the transfer resource creation.", "items": { "$ref": "ApplicationDataTransfer" }, @@ -391,7 +391,7 @@ "type": "string" }, "id": { - "description": "The transfer's ID (Read-only).", + "description": "Read-only. The transfer's ID.", "type": "string" }, "kind": { @@ -408,11 +408,11 @@ "type": "string" }, "overallTransferStatusCode": { - "description": "Overall transfer status (Read-only).", + "description": "Read-only. Overall transfer status.", "type": "string" }, "requestTime": { - "description": "The time at which the data transfer was requested (Read-only).", + "description": "Read-only. The time at which the data transfer was requested.", "format": "date-time", "type": "string" } @@ -440,7 +440,7 @@ "type": "string" }, "nextPageToken": { - "description": "Continuation token which will be used to specify next page in list API.", + "description": "Token to specify the next page in the list.", "type": "string" } }, diff --git a/admin/datatransfer/v1/admin-gen.go b/admin/datatransfer/v1/admin-gen.go index bb25bcce7d5..20066756116 100644 --- a/admin/datatransfer/v1/admin-gen.go +++ b/admin/datatransfer/v1/admin-gen.go @@ -165,13 +165,16 @@ type TransfersService struct { s *Service } -// Application: Applications resources represent applications installed +// Application: Application resources represent applications installed // on the domain that support transferring ownership of user data. type Application struct { // Etag: Etag of the resource. Etag string `json:"etag,omitempty"` - // Id: The application's ID. + // Id: The application's ID. Retrievable by using the + // `applications.list()` + // (/admin-sdk/data-transfer/reference/rest/v1/applications/list) + // method. Id int64 `json:"id,omitempty,string"` // Kind: Identifies the resource as a DataTransfer Application Resource. @@ -181,8 +184,8 @@ type Application struct { Name string `json:"name,omitempty"` // TransferParams: The list of all possible transfer parameters for this - // application. These parameters can be used to select the data of the - // user in this application to be transferred. + // application. These parameters select which categories of the user's + // data to transfer. TransferParams []*ApplicationTransferParam `json:"transferParams,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -220,11 +223,14 @@ type ApplicationDataTransfer struct { // ApplicationTransferParams: The transfer parameters for the // application. These parameters are used to select the data which will - // get transferred in context of this application. + // get transferred in context of this application. For more information + // about the specific values available for each application, see the + // Transfer parameters (/admin-sdk/data-transfer/v1/parameters) + // reference. ApplicationTransferParams []*ApplicationTransferParam `json:"applicationTransferParams,omitempty"` - // ApplicationTransferStatus: Current status of transfer for this - // application. (Read-only) + // ApplicationTransferStatus: Read-only. Current status of transfer for + // this application. ApplicationTransferStatus string `json:"applicationTransferStatus,omitempty"` // ForceSendFields is a list of field names (e.g. "ApplicationId") to @@ -253,11 +259,11 @@ func (s *ApplicationDataTransfer) MarshalJSON() ([]byte, error) { // ApplicationTransferParam: Template for application transfer // parameters. type ApplicationTransferParam struct { - // Key: The type of the transfer parameter. eg: 'PRIVACY_LEVEL' + // Key: The type of the transfer parameter, such as `PRIVACY_LEVEL`. Key string `json:"key,omitempty"` - // Value: The value of the corresponding transfer parameter. eg: - // 'PRIVATE' or 'SHARED' + // Value: The value of the transfer parameter, such as `PRIVATE` or + // `SHARED`. Value []string `json:"value,omitempty"` // ForceSendFields is a list of field names (e.g. "Key") to @@ -285,8 +291,8 @@ func (s *ApplicationTransferParam) MarshalJSON() ([]byte, error) { // ApplicationsListResponse: Template for a collection of Applications. type ApplicationsListResponse struct { - // Applications: List of applications that support data transfer and are - // also installed for the customer. + // Applications: The list of applications that support data transfer and + // are also installed for the customer. Applications []*Application `json:"applications,omitempty"` // Etag: ETag of the resource. @@ -295,8 +301,7 @@ type ApplicationsListResponse struct { // Kind: Identifies the resource as a collection of Applications. Kind string `json:"kind,omitempty"` - // NextPageToken: Continuation token which will be used to specify next - // page in list API. + // NextPageToken: Token to specify the next page in the list. NextPageToken string `json:"nextPageToken,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -329,17 +334,17 @@ func (s *ApplicationsListResponse) MarshalJSON() ([]byte, error) { // DataTransfer: A Transfer resource represents the transfer of the // ownership of user data between users. type DataTransfer struct { - // ApplicationDataTransfers: List of per application data transfer - // resources. It contains data transfer details of the applications - // associated with this transfer resource. Note that this list is also - // used to specify the applications for which data transfer has to be - // done at the time of the transfer resource creation. + // ApplicationDataTransfers: The list of per-application data transfer + // resources. It contains details of the applications associated with + // this transfer resource, and also specifies the applications for which + // data transfer has to be done at the time of the transfer resource + // creation. ApplicationDataTransfers []*ApplicationDataTransfer `json:"applicationDataTransfers,omitempty"` // Etag: ETag of the resource. Etag string `json:"etag,omitempty"` - // Id: The transfer's ID (Read-only). + // Id: Read-only. The transfer's ID. Id string `json:"id,omitempty"` // Kind: Identifies the resource as a DataTransfer request. @@ -351,11 +356,11 @@ type DataTransfer struct { // OldOwnerUserId: ID of the user whose data is being transferred. OldOwnerUserId string `json:"oldOwnerUserId,omitempty"` - // OverallTransferStatusCode: Overall transfer status (Read-only). + // OverallTransferStatusCode: Read-only. Overall transfer status. OverallTransferStatusCode string `json:"overallTransferStatusCode,omitempty"` - // RequestTime: The time at which the data transfer was requested - // (Read-only). + // RequestTime: Read-only. The time at which the data transfer was + // requested. RequestTime string `json:"requestTime,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -400,8 +405,7 @@ type DataTransfersListResponse struct { // requests. Kind string `json:"kind,omitempty"` - // NextPageToken: Continuation token which will be used to specify next - // page in list API. + // NextPageToken: Token to specify the next page in the list. NextPageToken string `json:"nextPageToken,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -928,7 +932,9 @@ type TransfersInsertCall struct { header_ http.Header } -// Insert: Inserts a data transfer request. +// Insert: Inserts a data transfer request. See the Transfer parameters +// (/admin-sdk/data-transfer/v1/parameters) reference for specific +// application requirements. func (r *TransfersService) Insert(datatransfer *DataTransfer) *TransfersInsertCall { c := &TransfersInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.datatransfer = datatransfer @@ -1023,7 +1029,7 @@ func (c *TransfersInsertCall) Do(opts ...googleapi.CallOption) (*DataTransfer, e } return ret, nil // { - // "description": "Inserts a data transfer request.", + // "description": "Inserts a data transfer request. See the [Transfer parameters](/admin-sdk/data-transfer/v1/parameters) reference for specific application requirements.", // "flatPath": "admin/datatransfer/v1/transfers", // "httpMethod": "POST", // "id": "datatransfer.transfers.insert", diff --git a/admin/directory/v1/admin-api.json b/admin/directory/v1/admin-api.json index 5862702f900..65a3a4de920 100644 --- a/admin/directory/v1/admin-api.json +++ b/admin/directory/v1/admin-api.json @@ -4630,7 +4630,7 @@ } } }, - "revision": "20221020", + "revision": "20221109", "rootUrl": "https://admin.googleapis.com/", "schemas": { "Alias": { @@ -7434,7 +7434,7 @@ "id": "User", "properties": { "addresses": { - "description": "The list of the user's addresses. The maximum allowed data size for this field is 10Kb.", + "description": "The list of the user's addresses. The maximum allowed data size for this field is 10KB.", "type": "any" }, "agreedToTerms": { @@ -7482,7 +7482,7 @@ "type": "string" }, "emails": { - "description": "The list of the user's email addresses. The maximum allowed data size for this field is 10Kb.", + "description": "The list of the user's email addresses. The maximum allowed data size for this field is 10KB.", "type": "any" }, "etag": { @@ -7491,11 +7491,11 @@ "type": "string" }, "externalIds": { - "description": "The list of external IDs for the user, such as an employee or network ID. The maximum allowed data size for this field is 2Kb.", + "description": "The list of external IDs for the user, such as an employee or network ID. The maximum allowed data size for this field is 2KB.", "type": "any" }, "gender": { - "description": "The user's gender. The maximum allowed data size for this field is 1Kb.", + "description": "The user's gender. The maximum allowed data size for this field is 1KB.", "type": "any" }, "hashFunction": { @@ -7507,7 +7507,7 @@ "type": "string" }, "ims": { - "description": "The list of the user's Instant Messenger (IM) accounts. A user account can have multiple ims properties. But, only one of these ims properties can be the primary IM contact. The maximum allowed data size for this field is 2Kb.", + "description": "The list of the user's Instant Messenger (IM) accounts. A user account can have multiple ims properties. But, only one of these ims properties can be the primary IM contact. The maximum allowed data size for this field is 2KB.", "type": "any" }, "includeInGlobalAddressList": { @@ -7544,7 +7544,7 @@ "type": "boolean" }, "keywords": { - "description": "The list of the user's keywords. The maximum allowed data size for this field is 1Kb.", + "description": "The list of the user's keywords. The maximum allowed data size for this field is 1KB.", "type": "any" }, "kind": { @@ -7554,7 +7554,7 @@ "type": "string" }, "languages": { - "description": "The user's languages. The maximum allowed data size for this field is 1Kb.", + "description": "The user's languages. The maximum allowed data size for this field is 1KB.", "type": "any" }, "lastLoginTime": { @@ -7564,7 +7564,7 @@ "type": "string" }, "locations": { - "description": "The user's locations. The maximum allowed data size for this field is 10Kb.", + "description": "The user's locations. The maximum allowed data size for this field is 10KB.", "type": "any" }, "name": { @@ -7574,7 +7574,7 @@ "directory.users.insert" ] }, - "description": "Holds the given and family names of the user, and the read-only `fullName` value. The maximum number of characters in the `givenName` and in the `familyName` values is 60. In addition, name values support unicode/UTF-8 characters, and can contain spaces, letters (a-z), numbers (0-9), dashes (-), forward slashes (/), and periods (.). For more information about character usage rules, see the [administration help center](https://support.google.com/a/answer/9193374). Maximum allowed data size for this field is 1Kb." + "description": "Holds the given and family names of the user, and the read-only `fullName` value. The maximum number of characters in the `givenName` and in the `familyName` values is 60. In addition, name values support unicode/UTF-8 characters, and can contain spaces, letters (a-z), numbers (0-9), dashes (-), forward slashes (/), and periods (.). For more information about character usage rules, see the [administration help center](https://support.google.com/a/answer/9193374). Maximum allowed data size for this field is 1KB." }, "nonEditableAliases": { "description": "Output only. The list of the user's non-editable alias email addresses. These are typically outside the account's primary domain or sub-domain.", @@ -7593,7 +7593,7 @@ "type": "string" }, "organizations": { - "description": "The list of organizations the user belongs to. The maximum allowed data size for this field is 10Kb.", + "description": "The list of organizations the user belongs to. The maximum allowed data size for this field is 10KB.", "type": "any" }, "password": { @@ -7606,7 +7606,7 @@ "type": "string" }, "phones": { - "description": "The list of the user's phone numbers. The maximum allowed data size for this field is 1Kb.", + "description": "The list of the user's phone numbers. The maximum allowed data size for this field is 1KB.", "type": "any" }, "posixAccounts": { @@ -7631,7 +7631,7 @@ "type": "string" }, "relations": { - "description": "The list of the user's relationships to other users. The maximum allowed data size for this field is 2Kb.", + "description": "The list of the user's relationships to other users. The maximum allowed data size for this field is 2KB.", "type": "any" }, "sshPublicKeys": { @@ -7658,7 +7658,7 @@ "type": "string" }, "websites": { - "description": "The user's websites. The maximum allowed data size for this field is 2Kb.", + "description": "The user's websites. The maximum allowed data size for this field is 2KB.", "type": "any" } }, @@ -7955,6 +7955,10 @@ "UserName": { "id": "UserName", "properties": { + "displayName": { + "description": "The user's display name. Limit: 256 characters.", + "type": "string" + }, "familyName": { "annotations": { "required": [ diff --git a/admin/directory/v1/admin-gen.go b/admin/directory/v1/admin-gen.go index a8a69b7427a..9d8cfa8d05b 100644 --- a/admin/directory/v1/admin-gen.go +++ b/admin/directory/v1/admin-gen.go @@ -5017,7 +5017,7 @@ func (s *Tokens) MarshalJSON() ([]byte, error) { // (/admin-sdk/directory/v1/guides/manage-user-aliases.html). type User struct { // Addresses: The list of the user's addresses. The maximum allowed data - // size for this field is 10Kb. + // size for this field is 10KB. Addresses interface{} `json:"addresses,omitempty"` // AgreedToTerms: Output only. This property is `true` if the user has @@ -5057,7 +5057,7 @@ type User struct { DeletionTime string `json:"deletionTime,omitempty"` // Emails: The list of the user's email addresses. The maximum allowed - // data size for this field is 10Kb. + // data size for this field is 10KB. Emails interface{} `json:"emails,omitempty"` // Etag: Output only. ETag of the resource. @@ -5065,11 +5065,11 @@ type User struct { // ExternalIds: The list of external IDs for the user, such as an // employee or network ID. The maximum allowed data size for this field - // is 2Kb. + // is 2KB. ExternalIds interface{} `json:"externalIds,omitempty"` // Gender: The user's gender. The maximum allowed data size for this - // field is 1Kb. + // field is 1KB. Gender interface{} `json:"gender,omitempty"` // HashFunction: Stores the hash format of the `password` property. The @@ -5089,7 +5089,7 @@ type User struct { // Ims: The list of the user's Instant Messenger (IM) accounts. A user // account can have multiple ims properties. But, only one of these ims // properties can be the primary IM contact. The maximum allowed data - // size for this field is 2Kb. + // size for this field is 2KB. Ims interface{} `json:"ims,omitempty"` // IncludeInGlobalAddressList: Indicates if the user's profile is @@ -5137,7 +5137,7 @@ type User struct { IsMailboxSetup bool `json:"isMailboxSetup,omitempty"` // Keywords: The list of the user's keywords. The maximum allowed data - // size for this field is 1Kb. + // size for this field is 1KB. Keywords interface{} `json:"keywords,omitempty"` // Kind: Output only. The type of the API resource. For Users resources, @@ -5145,14 +5145,14 @@ type User struct { Kind string `json:"kind,omitempty"` // Languages: The user's languages. The maximum allowed data size for - // this field is 1Kb. + // this field is 1KB. Languages interface{} `json:"languages,omitempty"` // LastLoginTime: User's last login time. (Read-only) LastLoginTime string `json:"lastLoginTime,omitempty"` // Locations: The user's locations. The maximum allowed data size for - // this field is 10Kb. + // this field is 10KB. Locations interface{} `json:"locations,omitempty"` // Name: Holds the given and family names of the user, and the read-only @@ -5163,7 +5163,7 @@ type User struct { // (.). For more information about character usage rules, see the // administration help center // (https://support.google.com/a/answer/9193374). Maximum allowed data - // size for this field is 1Kb. + // size for this field is 1KB. Name *UserName `json:"name,omitempty"` // NonEditableAliases: Output only. The list of the user's non-editable @@ -5180,14 +5180,14 @@ type User struct { OrgUnitPath string `json:"orgUnitPath,omitempty"` // Organizations: The list of organizations the user belongs to. The - // maximum allowed data size for this field is 10Kb. + // maximum allowed data size for this field is 10KB. Organizations interface{} `json:"organizations,omitempty"` // Password: User's password Password string `json:"password,omitempty"` // Phones: The list of the user's phone numbers. The maximum allowed - // data size for this field is 1Kb. + // data size for this field is 1KB. Phones interface{} `json:"phones,omitempty"` // PosixAccounts: The list of POSIX @@ -5209,7 +5209,7 @@ type User struct { RecoveryPhone string `json:"recoveryPhone,omitempty"` // Relations: The list of the user's relationships to other users. The - // maximum allowed data size for this field is 2Kb. + // maximum allowed data size for this field is 2KB. Relations interface{} `json:"relations,omitempty"` // SshPublicKeys: A list of SSH public keys. @@ -5231,7 +5231,7 @@ type User struct { ThumbnailPhotoUrl string `json:"thumbnailPhotoUrl,omitempty"` // Websites: The user's websites. The maximum allowed data size for this - // field is 2Kb. + // field is 2KB. Websites interface{} `json:"websites,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -5735,6 +5735,9 @@ func (s *UserMakeAdmin) MarshalJSON() ([]byte, error) { } type UserName struct { + // DisplayName: The user's display name. Limit: 256 characters. + DisplayName string `json:"displayName,omitempty"` + // FamilyName: The user's last name. Required when creating a user // account. FamilyName string `json:"familyName,omitempty"` @@ -5747,7 +5750,7 @@ type UserName struct { // account. GivenName string `json:"givenName,omitempty"` - // ForceSendFields is a list of field names (e.g. "FamilyName") to + // ForceSendFields is a list of field names (e.g. "DisplayName") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -5755,10 +5758,10 @@ type UserName struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "FamilyName") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "DisplayName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` diff --git a/admin/reports/v1/admin-api.json b/admin/reports/v1/admin-api.json index a1edde55e97..b980fbd2a10 100644 --- a/admin/reports/v1/admin-api.json +++ b/admin/reports/v1/admin-api.json @@ -431,7 +431,7 @@ "type": "string" }, "date": { - "description": "Represents the date the usage occurred. The timestamp is in the ISO 8601 format, yyyy-mm-dd. We recommend you use your account's time zone for this.", + "description": "Represents the date the usage occurred, based on PST time zone. The timestamp is in the [ISO 8601 format](https://en.wikipedia.org/wiki/ISO_8601), `yyyy-mm-dd`.", "location": "path", "pattern": "(\\d){4}-(\\d){2}-(\\d){2}", "required": true, @@ -560,7 +560,7 @@ "type": "string" }, "date": { - "description": "Represents the date the usage occurred. The timestamp is in the ISO 8601 format, yyyy-mm-dd. We recommend you use your account's time zone for this.", + "description": "Represents the date the usage occurred, based on GMT-7:00 (Pacific Standard Time). The timestamp is in the [ISO 8601 format](https://en.wikipedia.org/wiki/ISO_8601), `yyyy-mm-dd`.", "location": "path", "pattern": "(\\d){4}-(\\d){2}-(\\d){2}", "required": true, @@ -623,7 +623,7 @@ } } }, - "revision": "20221018", + "revision": "20221109", "rootUrl": "https://admin.googleapis.com/", "schemas": { "Activities": { diff --git a/admin/reports/v1/admin-gen.go b/admin/reports/v1/admin-gen.go index 7896e6a856f..2702dec8721 100644 --- a/admin/reports/v1/admin-gen.go +++ b/admin/reports/v1/admin-gen.go @@ -1874,9 +1874,9 @@ type CustomerUsageReportsGetCall struct { // customer report's parameters, see the Customers Usage parameters // reference guides. // -// - date: Represents the date the usage occurred. The timestamp is in -// the ISO 8601 format, yyyy-mm-dd. We recommend you use your -// account's time zone for this. +// - date: Represents the date the usage occurred, based on PST time +// zone. The timestamp is in the ISO 8601 format +// (https://en.wikipedia.org/wiki/ISO_8601), `yyyy-mm-dd`. func (r *CustomerUsageReportsService) Get(date string) *CustomerUsageReportsGetCall { c := &CustomerUsageReportsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.date = date @@ -2035,7 +2035,7 @@ func (c *CustomerUsageReportsGetCall) Do(opts ...googleapi.CallOption) (*UsageRe // "type": "string" // }, // "date": { - // "description": "Represents the date the usage occurred. The timestamp is in the ISO 8601 format, yyyy-mm-dd. We recommend you use your account's time zone for this.", + // "description": "Represents the date the usage occurred, based on PST time zone. The timestamp is in the [ISO 8601 format](https://en.wikipedia.org/wiki/ISO_8601), `yyyy-mm-dd`.", // "location": "path", // "pattern": "(\\d){4}-(\\d){2}-(\\d){2}", // "required": true, @@ -2411,9 +2411,9 @@ type UserUsageReportGetCall struct { // see the User Usage Report guide. For more information about the user // report's parameters, see the Users Usage parameters reference guides. // -// - date: Represents the date the usage occurred. The timestamp is in -// the ISO 8601 format, yyyy-mm-dd. We recommend you use your -// account's time zone for this. +// - date: Represents the date the usage occurred, based on GMT-7:00 +// (Pacific Standard Time). The timestamp is in the ISO 8601 format +// (https://en.wikipedia.org/wiki/ISO_8601), `yyyy-mm-dd`. // - userKey: Represents the profile ID or the user email for which the // data should be filtered. Can be `all` for all information, or // `userKey` for a user's unique Google Workspace profile ID or their @@ -2633,7 +2633,7 @@ func (c *UserUsageReportGetCall) Do(opts ...googleapi.CallOption) (*UsageReports // "type": "string" // }, // "date": { - // "description": "Represents the date the usage occurred. The timestamp is in the ISO 8601 format, yyyy-mm-dd. We recommend you use your account's time zone for this.", + // "description": "Represents the date the usage occurred, based on GMT-7:00 (Pacific Standard Time). The timestamp is in the [ISO 8601 format](https://en.wikipedia.org/wiki/ISO_8601), `yyyy-mm-dd`.", // "location": "path", // "pattern": "(\\d){4}-(\\d){2}-(\\d){2}", // "required": true, diff --git a/certificatemanager/v1/certificatemanager-api.json b/certificatemanager/v1/certificatemanager-api.json index 7afbf4af8de..7b056edd472 100644 --- a/certificatemanager/v1/certificatemanager-api.json +++ b/certificatemanager/v1/certificatemanager-api.json @@ -1108,7 +1108,7 @@ } } }, - "revision": "20220927", + "revision": "20221108", "rootUrl": "https://certificatemanager.googleapis.com/", "schemas": { "AuthorizationAttemptInfo": { @@ -1339,7 +1339,7 @@ "type": "string" }, "gclbTargets": { - "description": "Output only. A list of GCLB targets which use this Certificate Map. A Target Proxy is only present on this list if it's attached to a Forwarding Rule.", + "description": "Output only. A list of GCLB targets that use this Certificate Map. A Target Proxy is only present on this list if it's attached to a Forwarding Rule.", "items": { "$ref": "GclbTarget" }, @@ -1458,7 +1458,7 @@ "readOnly": true }, "domain": { - "description": "Required. Immutable. A domain which is being authorized. A DnsAuthorization resource covers a single domain and its wildcard, e.g. authorization for `example.com` can be used to issue certificates for `example.com` and `*.example.com`.", + "description": "Required. Immutable. A domain that is being authorized. A DnsAuthorization resource covers a single domain and its wildcard, e.g. authorization for `example.com` can be used to issue certificates for `example.com` and `*.example.com`.", "type": "string" }, "labels": { @@ -1510,7 +1510,7 @@ "type": "object" }, "GclbTarget": { - "description": "Describes a Target Proxy which uses this Certificate Map.", + "description": "Describes a Target Proxy that uses this Certificate Map.", "id": "GclbTarget", "properties": { "ipConfigs": { diff --git a/certificatemanager/v1/certificatemanager-gen.go b/certificatemanager/v1/certificatemanager-gen.go index 0d1d0827093..5c5f8ae79aa 100644 --- a/certificatemanager/v1/certificatemanager-gen.go +++ b/certificatemanager/v1/certificatemanager-gen.go @@ -520,7 +520,7 @@ type CertificateMap struct { // certificate map. Description string `json:"description,omitempty"` - // GclbTargets: Output only. A list of GCLB targets which use this + // GclbTargets: Output only. A list of GCLB targets that use this // Certificate Map. A Target Proxy is only present on this list if it's // attached to a Forwarding Rule. GclbTargets []*GclbTarget `json:"gclbTargets,omitempty"` @@ -657,7 +657,7 @@ type DnsAuthorization struct { // added to DNS configuration. DnsResourceRecord *DnsResourceRecord `json:"dnsResourceRecord,omitempty"` - // Domain: Required. Immutable. A domain which is being authorized. A + // Domain: Required. Immutable. A domain that is being authorized. A // DnsAuthorization resource covers a single domain and its wildcard, // e.g. authorization for `example.com` can be used to issue // certificates for `example.com` and `*.example.com`. @@ -751,7 +751,7 @@ type Empty struct { googleapi.ServerResponse `json:"-"` } -// GclbTarget: Describes a Target Proxy which uses this Certificate Map. +// GclbTarget: Describes a Target Proxy that uses this Certificate Map. type GclbTarget struct { // IpConfigs: Output only. IP configurations for this Target Proxy where // the Certificate Map is serving. diff --git a/chat/v1/chat-api.json b/chat/v1/chat-api.json index 4ec48d339f0..c4ce0961d6e 100644 --- a/chat/v1/chat-api.json +++ b/chat/v1/chat-api.json @@ -498,7 +498,7 @@ "spaces": { "methods": { "get": { - "description": "Returns a space. Requires [service account authentication](https://developers.google.com/chat/api/guides/auth/service-accounts).", + "description": "Returns a space. Requires [authentication](https://developers.google.com/chat/api/guides/auth). Fully supports [service account authentication](https://developers.google.com/chat/api/guides/auth/service-accounts). Supports [user authentication](https://developers.google.com/chat/api/guides/auth/users) as part of the [Google Workspace Developer Preview Program](https://developers.google.com/workspace/preview), which grants early access to certain features. [User authentication](https://developers.google.com/chat/api/guides/auth/users) requires the `chat.spaces` or `chat.spaces.readonly` authorization scope.", "flatPath": "v1/spaces/{spacesId}", "httpMethod": "GET", "id": "chat.spaces.get", @@ -520,7 +520,7 @@ } }, "list": { - "description": "Lists spaces the caller is a member of. Requires [service account authentication](https://developers.google.com/chat/api/guides/auth/service-accounts). ", + "description": "Lists spaces the caller is a member of. Requires [authentication](https://developers.google.com/chat/api/guides/auth). Fully supports [service account authentication](https://developers.google.com/chat/api/guides/auth/service-accounts). Supports [user authentication](https://developers.google.com/chat/api/guides/auth/users) as part of the [Google Workspace Developer Preview Program](https://developers.google.com/workspace/preview), which grants early access to certain features. [User authentication](https://developers.google.com/chat/api/guides/auth/users) requires the `chat.spaces` or `chat.spaces.readonly` authorization scope. Lists spaces visible to the caller or authenticated user. Group chats and DMs aren't listed until the first message is sent.", "flatPath": "v1/spaces", "httpMethod": "GET", "id": "chat.spaces.list", @@ -849,7 +849,7 @@ } } }, - "revision": "20221029", + "revision": "20221112", "rootUrl": "https://chat.googleapis.com/", "schemas": { "ActionParameter": { @@ -1467,7 +1467,7 @@ "id": "GoogleAppsCardV1Action", "properties": { "function": { - "description": "Apps Script function to invoke when the containing element is clicked/activated.", + "description": "A custom function to invoke when the containing element is clicked or othrwise activated. For example usage, see [Create interactive cards](https://developers.google.com/chat/how-tos/cards-onclick).", "type": "string" }, "interaction": { @@ -1502,14 +1502,14 @@ "type": "array" }, "persistValues": { - "description": "Indicates whether form values persist after the action. The default value is `false`. If `true`, form values remain after the action is triggered. When using [LoadIndicator.NONE](https://developers.google.com/workspace/add-ons/reference/rpc/google.apps.card.v1#loadindicator) for actions, `persist_values` = `true`is recommended, as it ensures that any changes made by the user after form or on change actions are sent to the server are not overwritten by the response. If `false`, the form values are cleared when the action is triggered. When `persist_values` is set to `false`, it is strongly recommended that the card use [LoadIndicator.SPINNER](https://developers.google.com/workspace/add-ons/reference/rpc/google.apps.card.v1#loadindicator) for all actions, as this locks the UI to ensure no changes are made by the user while the action is being processed. Not supported by Google Chat apps.", + "description": "Indicates whether form values persist after the action. The default value is `false`. If `true`, form values remain after the action is triggered. When using [LoadIndicator.NONE](https://developers.google.com/workspace/add-ons/reference/rpc/google.apps.card.v1#loadindicator) for actions, `persist_values` = `true`is recommended, as it ensures that any changes made by the user after form or on change actions are sent to the server are not overwritten by the response. If `false`, the form values are cleared when the action is triggered. When `persist_values` is set to `false`, it is strongly recommended that the card use [LoadIndicator.SPINNER](https://developers.google.com/workspace/add-ons/reference/rpc/google.apps.card.v1#loadindicator) for all actions, as this locks the UI to ensure no changes are made by the user while the action is being processed. Not supported by Chat apps.", "type": "boolean" } }, "type": "object" }, "GoogleAppsCardV1ActionParameter": { - "description": "List of string parameters to supply when the action method is invoked. For example, consider three snooze buttons: snooze now, snooze 1 day, snooze next week. You might use action method = snooze(), passing the snooze type and snooze time in the list of string parameters.", + "description": "List of string parameters to supply when the action method is invoked. For example, consider three snooze buttons: snooze now, snooze 1 day, snooze next week. You might use action method = snooze(), passing the snooze type and snooze time in the list of string parameters. To learn more, see [CommonEventObject](https://developers.google.com/chat/api/reference/rest/v1/Event#commoneventobject).", "id": "GoogleAppsCardV1ActionParameter", "properties": { "key": { @@ -1524,7 +1524,7 @@ "type": "object" }, "GoogleAppsCardV1BorderStyle": { - "description": "Represents the complete border style applied to widgets.", + "description": "Represents the complete border style applied to items in a widget.", "id": "GoogleAppsCardV1BorderStyle", "properties": { "cornerRadius": { @@ -1545,7 +1545,7 @@ ], "enumDescriptions": [ "No value specified.", - "No border.", + "Default value. No border.", "Outline." ], "type": "string" @@ -1554,31 +1554,31 @@ "type": "object" }, "GoogleAppsCardV1Button": { - "description": "A button. Can be a text button or an image button.", + "description": "A text, icon, or text + icon button that users can click. To make an image a clickable button, specify an Image (not an ImageComponent) and set an `onClick` action.", "id": "GoogleAppsCardV1Button", "properties": { "altText": { - "description": "The alternative text used for accessibility. Has no effect when an icon is set; use `icon.alt_text` instead.", + "description": "The alternative text used for accessibility. Set descriptive text that lets users know what the button does. For example, if a button opens a hyperlink, you might write: \"Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/chat\". Has no effect when an icon is set; use `icon.alt_text` instead.", "type": "string" }, "color": { "$ref": "Color", - "description": "If set, the button is filled with a solid background." + "description": "If set, the button is filled with a solid background color and the font color changes to maintain contrast with the background color. For example, setting a blue background will likely result in white text. If unset, the image background is white and the font color is blue. For red, green and blue, the value of each field is a `float` number that can be expressed in either of two ways: as a number between 0 and 255 divided by 255 (153/255) or as a value between 0 and 1 (0.6). 0 represents the absence of a color and 1 or 255/255 represent the full presence of that color on the RGB scale. Optionally set alpha, which sets a level of transparency using this equation: ``` pixel color = alpha * (this color) + (1.0 - alpha) * (background color) ``` For alpha, a value of 1 corresponds with a solid color, and a value of 0 corresponds with a completely transparent color. For example, the following color represents a half transparent red: ``` \"color\": { \"red\": 1, \"green\": 0, \"blue\": 0, \"alpha\": 0.5 } ```" }, "disabled": { - "description": "If `true`, the button is displayed in a disabled state and doesn't respond to user actions.", + "description": "If `true`, the button is displayed in an inactive state and doesn't respond to user actions.", "type": "boolean" }, "icon": { "$ref": "GoogleAppsCardV1Icon", - "description": "The icon image." + "description": "The icon image. If both `icon` and `text` are set, then the icon appears in place of the text. Support for both an icon and text is coming soon." }, "onClick": { "$ref": "GoogleAppsCardV1OnClick", - "description": "The action to perform when the button is clicked." + "description": "The action to perform when the button is clicked, such as opening a hyperlink or running a custom function." }, "text": { - "description": "The text of the button.", + "description": "The text displayed inside the button.", "type": "string" } }, @@ -1599,18 +1599,18 @@ "type": "object" }, "GoogleAppsCardV1Card": { - "description": "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. In Google Chat, cards appear in several places: - As stand-alone messages. - Accompanying a text message, just beneath the text message. - As a [dialog](https://developers.google.com/chat/how-tos/dialogs). The following example JSON creates a \"contact card\" that features: - A header with the contact's name, job title, avatar picture. - A section with the contact information, including formatted text. - Buttons that users can click to share the contact or see more or less info. ![Example contact card](/chat/images/card_api_reference.png) ``` { \"cardsV2\": [ { \"cardId\": \"unique-card-id\", \"card\": { \"header\": { \"title\": \"Sasha\", \"subtitle\": \"Software Engineer\", \"imageUrl\": \"https://developers.google.com/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\", } ], } } }, ], } }, ], }, ], }, } ], } ```", + "description": "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. In Google Chat, cards appear in several places: - As stand-alone messages. - Accompanying a text message, just beneath the text message. - As a [dialog](https://developers.google.com/chat/how-tos/dialogs). The following example JSON creates a \"contact card\" that features: - A header with the contact's name, job title, avatar picture. - A section with the contact information, including formatted text. - Buttons that users can click to share the contact or see more or less info. ![Example contact card](https://developers.google.com/chat/images/card_api_reference.png) ``` { \"cardsV2\": [ { \"cardId\": \"unique-card-id\", \"card\": { \"header\": { \"title\": \"Sasha\", \"subtitle\": \"Software Engineer\", \"imageUrl\": \"https://developers.google.com/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\", } ], } } }, ], } }, ], }, ], }, } ], } ```", "id": "GoogleAppsCardV1Card", "properties": { "cardActions": { - "description": "The card's actions. Actions are added to the card's generated toolbar menu. Not supported by Google Chat apps. 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\" } } } ] ```", + "description": "The card's actions. Actions are added to the card's toolbar menu. Because Chat app cards have no toolbar, `cardActions[]` is not supported by Chat apps. 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\" } } } ] ```", "items": { "$ref": "GoogleAppsCardV1CardAction" }, "type": "array" }, "displayStyle": { - "description": "The `peekCardHeader` display style for. Not supported by Google Chat apps.", + "description": "In Google Workspace add-ons, sets the display properties of the `peekCardHeader`. Not supported by Chat apps.", "enum": [ "DISPLAY_STYLE_UNSPECIFIED", "PEEK", @@ -1625,22 +1625,22 @@ }, "fixedFooter": { "$ref": "GoogleAppsCardV1CardFixedFooter", - "description": "The fixed footer shown at the bottom of this card." + "description": "The fixed footer shown at the bottom of this card. Setting `fixedFooter` without specifying a `primaryButton` or a `secondaryButton` causes an error. Chat apps support `fixedFooter` in [dialogs](https://developers.google.com/chat/how-tos/dialogs), but not in [card messages](https://developers.google.com/chat/api/guides/message-formats/cards)." }, "header": { "$ref": "GoogleAppsCardV1CardHeader", - "description": "The header of the card. A header usually contains a title and an image." + "description": "The header of the card. A header usually contains a leading image and a title. Headers always appear at the top of a card." }, "name": { - "description": "Name of the card. Used as a card identifier in card navigation.", + "description": "Name of the card. Used as a card identifier in card navigation. Because Chat apps don't support card navigation, they ignore this field.", "type": "string" }, "peekCardHeader": { "$ref": "GoogleAppsCardV1CardHeader", - "description": "When displaying contextual content, the peek card header acts as a placeholder so that the user can navigate forward between the homepage cards and the contextual cards. Not supported by Google Chat apps." + "description": "When displaying contextual content, the peek card header acts as a placeholder so that the user can navigate forward between the homepage cards and the contextual cards. Not supported by Chat apps." }, "sections": { - "description": "Sections are separated by a line divider.", + "description": "Contains a collection of widgets. Each section has its own, optional header. Sections are visually separated by a line divider.", "items": { "$ref": "GoogleAppsCardV1Section" }, @@ -1650,7 +1650,7 @@ "type": "object" }, "GoogleAppsCardV1CardAction": { - "description": "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. Not supported by Google Chat apps.", + "description": "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. Not supported by Chat apps.", "id": "GoogleAppsCardV1CardAction", "properties": { "actionLabel": { @@ -1665,7 +1665,7 @@ "type": "object" }, "GoogleAppsCardV1CardFixedFooter": { - "description": "A persistent (sticky) footer that is added to the bottom of the card.", + "description": "A persistent (sticky) footer that that appears at the bottom of the card. Setting `fixedFooter` without specifying a `primaryButton` or a `secondaryButton` causes an error. Chat apps support `fixedFooter` in [dialogs](https://developers.google.com/chat/how-tos/dialogs), but not in [card messages](https://developers.google.com/chat/api/guides/message-formats/cards).", "id": "GoogleAppsCardV1CardFixedFooter", "properties": { "primaryButton": { @@ -1688,23 +1688,23 @@ "type": "string" }, "imageType": { - "description": "The image's type.", + "description": "The shape used to crop the image.", "enum": [ "SQUARE", "CIRCLE" ], "enumDescriptions": [ - "Applies no cropping to the image.", - "Applies a circular mask to the image." + "Default value. Applies a square mask to the image. For example, a 4x3 image becomes 3x3.", + "Applies a circular mask to the image. For example, a 4x3 image becomes a circle with a diameter of 3." ], "type": "string" }, "imageUrl": { - "description": "The URL of the image in the card header.", + "description": "The HTTPS URL of the image in the card header.", "type": "string" }, "subtitle": { - "description": "The subtitle of the card header.", + "description": "The subtitle of the card header. If specified, appears on its own line below the `title`.", "type": "string" }, "title": { @@ -1715,20 +1715,20 @@ "type": "object" }, "GoogleAppsCardV1DateTimePicker": { - "description": "The widget that lets users to specify a date and time. Not supported by Google Chat apps.", + "description": "Lets users specify a date, a time, or both a date and a time. Accepts text input from users, but features an interactive date and time selector that helps users enter correctly-formatted dates and times. If users enter a date or time incorrectly, the widget shows an error that prompts users to enter the correct format. Not supported by Chat apps. Support by Chat apps coming soon.", "id": "GoogleAppsCardV1DateTimePicker", "properties": { "label": { - "description": "The label for the field that displays to the user.", + "description": "The text that prompts users to enter a date, time, or datetime. Specify text that helps the user enter the information your app needs. For example, if users are setting an appointment, then a label like \"Appointment date\" or \"Appointment date and time\" might work well.", "type": "string" }, "name": { - "description": "The name of the text input that's used in `formInput`, and uniquely identifies this input.", + "description": "The name by which the datetime picker is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs).", "type": "string" }, "onChangeAction": { "$ref": "GoogleAppsCardV1Action", - "description": "Triggered when the user clicks Save or Clear from the date/time picker dialog. This is only triggered if the value changed as a result of the Save/Clear operation." + "description": "Triggered when the user clicks **Save** or **Clear** from the datetime picker interface." }, "timezoneOffsetDate": { "description": "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 not set, it uses the user's time zone setting on the client side.", @@ -1736,7 +1736,7 @@ "type": "integer" }, "type": { - "description": "The type of the date/time picker.", + "description": "What kind of date and time input the datetime picker supports.", "enum": [ "DATE_AND_TIME", "DATE_ONLY", @@ -1750,7 +1750,7 @@ "type": "string" }, "valueMsEpoch": { - "description": "The value to display as the default value before user input or previous user input. It is represented in milliseconds (Epoch time). For `DATE_AND_TIME` type, the full epoch value is used. For `DATE_ONLY` type, only date of the epoch time is used. For `TIME_ONLY` type, only time of the epoch time is used. For example, you can set epoch time to `3 * 60 * 60 * 1000` to represent 3am.", + "description": "The value displayed as the default value before user input or previous user input, represented in milliseconds ([Epoch time](https://en.wikipedia.org/wiki/Unix_time)). For `DATE_AND_TIME` type, the full epoch value is used. For `DATE_ONLY` type, only date of the epoch time is used. For `TIME_ONLY` type, only time of the epoch time is used. For example, to represent 3:00 AM, set epoch time to `3 * 60 * 60 * 1000`.", "format": "int64", "type": "string" } @@ -1762,7 +1762,7 @@ "id": "GoogleAppsCardV1DecoratedText", "properties": { "bottomLabel": { - "description": "The formatted text label that shows below the main text.", + "description": "The text that appears below `text`. Always truncates. Supports simple formatting. See Text formatting for formatting details.", "type": "string" }, "button": { @@ -1771,15 +1771,15 @@ }, "endIcon": { "$ref": "GoogleAppsCardV1Icon", - "description": "An icon displayed after the text." + "description": "An icon displayed after the text. Supports [standard](https://developers.google.com/chat/api/guides/message-formats/cards#builtinicons) and [custom](https://developers.google.com/chat/api/guides/message-formats/cards#customicons) icons." }, "icon": { "$ref": "GoogleAppsCardV1Icon", - "description": "Deprecated in favor of start_icon." + "description": "Deprecated in favor of `startIcon`." }, "onClick": { "$ref": "GoogleAppsCardV1OnClick", - "description": "Only the top and bottom label and content region are clickable." + "description": "When users click on `topLabel` or `bottomLabel`, this action triggers." }, "startIcon": { "$ref": "GoogleAppsCardV1Icon", @@ -1787,31 +1787,31 @@ }, "switchControl": { "$ref": "GoogleAppsCardV1SwitchControl", - "description": "A switch widget can be clicked to change its state or trigger an action." + "description": "A switch widget can be clicked to change its state and trigger an action. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon." }, "text": { - "description": "Required. The main widget formatted text. See Text formatting for details.", + "description": "Required. The primary text. Supports simple formatting. See Text formatting for formatting details.", "type": "string" }, "topLabel": { - "description": "The formatted text label that shows above the main text.", + "description": "The text that appears above `text`. Always truncates. Supports simple formatting. See Text formatting for formatting details.", "type": "string" }, "wrapText": { - "description": "The wrap text setting. If `true`, the text is wrapped and displayed in multiline. Otherwise, the text is truncated.", + "description": "The wrap text setting. If `true`, the text wraps and displays on multiple lines. Otherwise, the text is truncated. Only applies to `text`, not `topLabel` and `bottomLabel`.", "type": "boolean" } }, "type": "object" }, "GoogleAppsCardV1Divider": { - "description": "A divider that appears in between widgets.", + "description": "Displays a divider between widgets, a horizontal line. For example, the following JSON creates a divider: ``` \"divider\": { } ```", "id": "GoogleAppsCardV1Divider", "properties": {}, "type": "object" }, "GoogleAppsCardV1Grid": { - "description": "Represents a Grid widget that displays items in a configurable grid layout.", + "description": "Displays a grid with a collection of items. A grid supports any number of columns and items. The number of rows is determined by items divided by columns. A grid with 10 items and 2 columns has 5 rows. A grid with 11 items and 2 columns has 6 rows. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon. For example, the following JSON creates a 2 column grid with a single item: ``` \"grid\": { \"title\": \"A fine collection of items\", \"numColumns\": 2, \"borderStyle\": { \"type\": \"STROKE\", \"cornerRadius\": 4.0 }, \"items\": [ \"image\": { \"imageUri\": \"https://www.example.com/image.png\", \"cropStyle\": { \"type\": \"SQUARE\" }, \"borderStyle\": { \"type\": \"STROKE\" } }, \"title\": \"An item\", \"textAlignment\": \"CENTER\" ], \"onClick\": { \"openLink\": { \"url\":\"https://www.example.com\" } } } ```", "id": "GoogleAppsCardV1Grid", "properties": { "borderStyle": { @@ -1871,22 +1871,6 @@ "description": "The grid item's subtitle.", "type": "string" }, - "textAlignment": { - "description": "The horizontal alignment of the grid item's text.", - "enum": [ - "HORIZONTAL_ALIGNMENT_UNSPECIFIED", - "START", - "CENTER", - "END" - ], - "enumDescriptions": [ - "Unspecified alignment.", - "Alignment to the start position.", - "Alignment to the center position.", - "Alignment to the end position." - ], - "type": "string" - }, "title": { "description": "The grid item's title.", "type": "string" @@ -1895,14 +1879,15 @@ "type": "object" }, "GoogleAppsCardV1Icon": { + "description": "An icon displayed in a widget on a card. Supports [standard](https://developers.google.com/chat/api/guides/message-formats/cards) and [custom](https://developers.google.com/chat/api/guides/message-formats/cards#customicons) icons.", "id": "GoogleAppsCardV1Icon", "properties": { "altText": { - "description": "The description of the icon, used for accessibility. The default value is provided if you don't specify one.", + "description": "Optional. A description of the icon used for accessibility. If unspecified, a default value is provided. As a best practice, you should set a helpful description. For example, if an icon displays a user's account portrait, you could describe it as \"A user's account portrait.\" If the icon displays in a Button, this alt text takes precedence and overwrites the button's alt text, so you should write alt text for the button: Set descriptive text that lets users know what the button does. For example, if a button opens a hyperlink, you might write: \"Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/chat\".", "type": "string" }, "iconUrl": { - "description": "The icon specified by a URL.", + "description": "Display a custom icon hosted at an HTTPS URL. For example: ``` \"iconUrl\": \"https://developers.google.com/chat/images/quickstart-app-avatar.png\" ``` Supported file types include `.png` and `.jpg`.", "type": "string" }, "imageType": { @@ -1912,13 +1897,13 @@ "CIRCLE" ], "enumDescriptions": [ - "Applies no cropping to the image.", - "Applies a circular mask to the image." + "Default value. Applies a square mask to the image. For example, a 4x3 image becomes 3x3.", + "Applies a circular mask to the image. For example, a 4x3 image becomes a circle with a diameter of 3." ], "type": "string" }, "knownIcon": { - "description": "The icon specified by the string name of a list of known icons.", + "description": "Display one of the standard icons provided by Google Workspace. For example, to display an airplane icon, specify `AIRPLANE`. For a bus, specify `BUS`. For a full list of supported icons, see [standard icons](https://developers.google.com/chat/api/guides/message-formats/cards).", "type": "string" } }, @@ -1933,12 +1918,12 @@ "type": "string" }, "imageUrl": { - "description": "An image URL.", + "description": "The `https` URL that hosts the image. For example: ``` https://developers.google.com/chat/images/quickstart-app-avatar.png ```", "type": "string" }, "onClick": { "$ref": "GoogleAppsCardV1OnClick", - "description": "The action triggered by an `onClick` event." + "description": "When a user clicks on the image, the click triggers this action." } }, "type": "object" @@ -1967,11 +1952,11 @@ "type": "object" }, "GoogleAppsCardV1ImageCropStyle": { - "description": "Represents the crop style applied to an image.", + "description": "Represents the crop style applied to an image. For example, here's how to apply a 16 by 9 aspect ratio: ``` cropStyle { \"type\": \"RECTANGLE_CUSTOM\", \"aspectRatio\": 16/9 } ```", "id": "GoogleAppsCardV1ImageCropStyle", "properties": { "aspectRatio": { - "description": "The aspect ratio to use if the crop type is `RECTANGLE_CUSTOM`.", + "description": "The aspect ratio to use if the crop type is `RECTANGLE_CUSTOM`. For example, here's how to apply a 16 by 9 aspect ratio: ``` cropStyle { \"type\": \"RECTANGLE_CUSTOM\", \"aspectRatio\": 16/9 } ```", "format": "double", "type": "number" }, @@ -1985,10 +1970,10 @@ "RECTANGLE_4_3" ], "enumDescriptions": [ - "No value specified.", - "Applies a square crop.", + "No value specified. Do not use.", + "Default value. Applies a square crop.", "Applies a circular crop.", - "Applies a rectangular crop with a custom aspect ratio.", + "Applies a rectangular crop with a custom aspect ratio. Set the custom aspect ratio with `aspectRatio`.", "Applies a rectangular crop with a 4:3 aspect ratio." ], "type": "string" @@ -1997,7 +1982,7 @@ "type": "object" }, "GoogleAppsCardV1OnClick": { - "description": "Represents the response to an `onClick` event.", + "description": "Represents how to respond when users click an interactive element on a card, such as a button.", "id": "GoogleAppsCardV1OnClick", "properties": { "action": { @@ -2006,7 +1991,7 @@ }, "card": { "$ref": "GoogleAppsCardV1Card", - "description": "A new card is pushed to the card stack after clicking if specified." + "description": "A new card is pushed to the card stack after clicking if specified. Supported by Google Workspace Add-ons, but not Chat apps." }, "openDynamicLinkAction": { "$ref": "GoogleAppsCardV1Action", @@ -2055,24 +2040,24 @@ "type": "object" }, "GoogleAppsCardV1Section": { - "description": "A section contains a collection of widgets that are rendered vertically in the order that they are specified. Across all platforms, cards have a narrow fixed width, so there is currently no need for layout properties, for example, float.", + "description": "A section contains a collection of widgets that are rendered vertically in the order that they are specified.", "id": "GoogleAppsCardV1Section", "properties": { "collapsible": { - "description": "Indicates whether this section is collapsible. If a section is collapsible, the description must be given.", + "description": "Indicates whether this section is collapsible. Collapsible sections hide some or all widgets, but users can expand the section to reveal the hidden widgets by clicking **Show more**. Users can hide the widgets again by clicking **Show less**. To determine which widgets are hidden, specify `uncollapsibleWidgetsCount`.", "type": "boolean" }, "header": { - "description": "The header of the section. Formatted text is supported.", + "description": "Text that appears at the top of a section. Supports [simple HTML formatted text](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting).", "type": "string" }, "uncollapsibleWidgetsCount": { - "description": "The number of uncollapsible widgets. 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 as default. The `uncollapsibleWidgetsCount` is taken into account only when `collapsible` is `true`.", + "description": "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`.", "format": "int32", "type": "integer" }, "widgets": { - "description": "A section must contain at least 1 widget.", + "description": "All the widgets in the section. Must contain at least 1 widget.", "items": { "$ref": "GoogleAppsCardV1Widget" }, @@ -2082,30 +2067,30 @@ "type": "object" }, "GoogleAppsCardV1SelectionInput": { - "description": "A widget that creates a UI item with options for users to select. For example, a dropdown menu.", + "description": "A widget that creates a UI item with options for users to select. For example, a dropdown menu or check list. Chat apps receive and can process the value of entered text during form input events. For details about working with form inputs, see [Receive form data](https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs). When you need to collect data from users that matches options you set, use a selection input. To collect abstract data from users, use the text input widget instead. Only supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) coming soon.", "id": "GoogleAppsCardV1SelectionInput", "properties": { "items": { - "description": "An array of the selected items.", + "description": "An array of the selected items. For example, all the selected check boxes.", "items": { "$ref": "GoogleAppsCardV1SelectionItem" }, "type": "array" }, "label": { - "description": "The label displayed ahead of the switch control.", + "description": "The text that appears above the selection input field in the user interface. Specify text that helps the user enter the information your app needs. For example, if users are selecting the urgency of a work ticket from a drop-down menu, the label might be \"Urgency\" or \"Select urgency\".", "type": "string" }, "name": { - "description": "The name of the text input which is used in `formInput`.", + "description": "The name by which the selection input is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs).", "type": "string" }, "onChangeAction": { "$ref": "GoogleAppsCardV1Action", - "description": "If specified, the form is submitted when the selection changes. If not specified, you must specify a separate button." + "description": "If specified, the form is submitted when the selection changes. If not specified, you must specify a separate button that submits the form. For details about working with form inputs, see [Receive form data](https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs)." }, "type": { - "description": "The type of the selection.", + "description": "The way that an option appears to users. Different options support different types of interactions. For example, users can enable multiple check boxes, but can only select one value from a dropdown menu. Each selection input supports one type of selection. Mixing check boxes and switches, for example, is not supported.", "enum": [ "CHECK_BOX", "RADIO_BUTTON", @@ -2113,10 +2098,10 @@ "DROPDOWN" ], "enumDescriptions": [ - "A checkbox.", - "A radio button.", - "A switch.", - "A dropdown menu." + "A set of checkboxes. Users can select multiple check boxes per selection input. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon.", + "A set of radio buttons. Users can select one radio button per selection input. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon.", + "A set of switches. Users can turn on multiple switches at once per selection input. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon.", + "A dropdown menu. Users can select one dropdown menu item per selection input. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon." ], "type": "string" } @@ -2124,41 +2109,41 @@ "type": "object" }, "GoogleAppsCardV1SelectionItem": { - "description": "A selectable item in the switch control.", + "description": "A selectable item in a selection input, such as a check box or a switch.", "id": "GoogleAppsCardV1SelectionItem", "properties": { "selected": { - "description": "If more than one item is selected for `RADIO_BUTTON` and `DROPDOWN`, the first selected item is treated as selected and the ones after are ignored.", + "description": "When `true`, more than one item is selected. If more than one item is selected for radio buttons and dropdown menus, the first selected item is received and the ones after are ignored.", "type": "boolean" }, "text": { - "description": "The text to be displayed.", + "description": "The text displayed to users.", "type": "string" }, "value": { - "description": "The value associated with this item. The client should use this as a form input value.", + "description": "The value associated with this item. The client should use this as a form input value. For details about working with form inputs, see [Receive form data](https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs).", "type": "string" } }, "type": "object" }, "GoogleAppsCardV1SuggestionItem": { - "description": "A suggestion item.", + "description": "One suggested value that users can enter in a text input field.", "id": "GoogleAppsCardV1SuggestionItem", "properties": { "text": { - "description": "The suggested autocomplete result.", + "description": "The value of a suggested input to a text input field. This is equivalent to what users would enter themselves.", "type": "string" } }, "type": "object" }, "GoogleAppsCardV1Suggestions": { - "description": "A container wrapping elements necessary for showing suggestion items used in text input autocomplete.", + "description": "Suggested values that users can enter. These values appear when users click inside the text input field. As users type, the suggested values dynamically filter to match what the users have typed. For example, a text input field for programming language might suggest Java, JavaScript, Python, and C++. When users start typing \"Jav\", the list of suggestions filters to show just Java and JavaScript. Suggested values help guide users to enter values that your app can make sense of. When referring to JavaScript, some users might enter \"javascript\" and others \"java script\". Suggesting \"JavaScript\" can standardize how users interact with your app. When specified, `TextInput.type` is always `SINGLE_LINE`, even if it is set to `MULTIPLE_LINE`.", "id": "GoogleAppsCardV1Suggestions", "properties": { "items": { - "description": "A list of suggestions used for autocomplete recommendations.", + "description": "A list of suggestions used for autocomplete recommendations in text input fields.", "items": { "$ref": "GoogleAppsCardV1SuggestionItem" }, @@ -2168,11 +2153,11 @@ "type": "object" }, "GoogleAppsCardV1SwitchControl": { - "description": "Either a toggle-style switch or a checkbox.", + "description": "Either a toggle-style switch or a checkbox inside a `decoratedText` widget. Only supported on the `decoratedText` widget. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon.", "id": "GoogleAppsCardV1SwitchControl", "properties": { "controlType": { - "description": "The control type, either switch or checkbox.", + "description": "How the switch appears in the user interface.", "enum": [ "SWITCH", "CHECKBOX", @@ -2186,66 +2171,66 @@ "type": "string" }, "name": { - "description": "The name of the switch widget that's used in `formInput`.", + "description": "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/chat/how-tos/dialogs#receive_form_data_from_dialogs).", "type": "string" }, "onChangeAction": { "$ref": "GoogleAppsCardV1Action", - "description": "The action when the switch state is changed." + "description": "The action to perform when the switch state is changed, such as what function to run." }, "selected": { - "description": "If the switch is selected.", + "description": "When `true`, the switch is selected.", "type": "boolean" }, "value": { - "description": "The value is what is passed back in the callback.", + "description": "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/chat/how-tos/dialogs#receive_form_data_from_dialogs).", "type": "string" } }, "type": "object" }, "GoogleAppsCardV1TextInput": { - "description": "A text input is a UI item where users can input text. A text input can also have an onChange action and suggestions.", + "description": "A field in which users can enter text. Supports suggestions and on-change actions. Chat apps receive and can process the value of entered text during form input events. For details about working with form inputs, see [Receive form data](https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs). When you need to collect abstract data from users, use a text input. To collect defined data from users, use the selection input widget instead. Only supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) coming soon.", "id": "GoogleAppsCardV1TextInput", "properties": { "autoCompleteAction": { "$ref": "GoogleAppsCardV1Action", - "description": "The refresh function that returns suggestions based on the user's input text. If the callback is not specified, autocomplete is done in client side based on the initial suggestion items." + "description": "Optional. Specify what action to take when the text input field provides suggestions to users who interact with it. If unspecified, the suggestions are set by `initialSuggestions` and are processed by the client. If specified, the app takes the action specified here, such as running a custom function. Supported by Google Workspace Add-ons, but not Chat apps. Support by Chat apps coming soon." }, "hintText": { - "description": "The hint text.", + "description": "Text that appears inside the text input field meant to assist users by prompting them to enter a certain value. This text is not visible after users begin typing. Required if `label` is unspecified. Otherwise, optional.", "type": "string" }, "initialSuggestions": { "$ref": "GoogleAppsCardV1Suggestions", - "description": "The initial suggestions made before any user input." + "description": "Suggested values that users can enter. These values appear when users click inside the text input field. As users type, the suggested values dynamically filter to match what the users have typed. For example, a text input field for programming language might suggest Java, JavaScript, Python, and C++. When users start typing \"Jav\", the list of suggestions filters to show just Java and JavaScript. Suggested values help guide users to enter values that your app can make sense of. When referring to JavaScript, some users might enter \"javascript\" and others \"java script\". Suggesting \"JavaScript\" can standardize how users interact with your app. When specified, `TextInput.type` is always `SINGLE_LINE`, even if it is set to `MULTIPLE_LINE`." }, "label": { - "description": "At least one of label and hintText must be specified.", + "description": "The text that appears above the text input field in the user interface. Specify text that helps the user enter the information your app needs. For example, if you are asking someone's name, but specifically need their surname, write \"surname\" instead of \"name\". Required if `hintText` is unspecified. Otherwise, optional.", "type": "string" }, "name": { - "description": "The name of the text input which is used in `formInput`.", + "description": "The name by which the text input is identified in a form input event. For details about working with form inputs, see [Receive form data](https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs).", "type": "string" }, "onChangeAction": { "$ref": "GoogleAppsCardV1Action", - "description": "The onChange action, for example, invoke a function." + "description": "What to do when a change occurs in the text input field. Examples of changes include a user adding to the field, or deleting text. Examples of actions to take include running a custom function or opening a [dialog](https://developers.google.com/chat/how-tos/dialogs) in Google Chat." }, "type": { - "description": "The style of the text, for example, a single line or multiple lines.", + "description": "How a text input field appears in the user interface. For example, whether the field is single or multi-line.", "enum": [ "SINGLE_LINE", "MULTIPLE_LINE" ], "enumDescriptions": [ - "The text is put into a single line.", - "The text is put into multiple lines." + "The text input field has a fixed height of one line.", + "The text input field has a fixed height of multiple lines." ], "type": "string" }, "value": { - "description": "The default value when there is no input from the user.", + "description": "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/chat/how-tos/dialogs#receive_form_data_from_dialogs).", "type": "string" } }, @@ -2263,60 +2248,44 @@ "type": "object" }, "GoogleAppsCardV1Widget": { - "description": "A widget is a UI element that presents texts, images, etc.", + "description": "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.", "id": "GoogleAppsCardV1Widget", "properties": { "buttonList": { "$ref": "GoogleAppsCardV1ButtonList", - "description": "A list of buttons. For example, the following JSON creates two buttons. The first is a filled text button and the second is an image button that opens a link: ``` \"buttonList\": { \"buttons\": [ \"button\": { \"text\": \"Edit\", \"Color\": { \"Red\": 255 \"Green\": 255 \"Blue\": 255 } \"disabled\": true }, \"button\": { \"icon\": { \"knownIcon\": \"INVITE\" \"altText\": \"check calendar\" }, \"onClick\": { \"openLink\": { \"url\": \"https://example.com/calendar\" } } }, ] } ```" + "description": "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\": [ \"button\": { \"text\": \"Edit\", \"color\": { \"red\": 0, \"green\": 0, \"blue\": 1, \"alpha\": 1 } \"disabled\": true }, \"button\": { \"icon\": { \"knownIcon\": \"INVITE\" \"altText\": \"check calendar\" }, \"onClick\": { \"openLink\": { \"url\": \"https://example.com/calendar\" } } }, ] } ```" }, "dateTimePicker": { "$ref": "GoogleAppsCardV1DateTimePicker", - "description": "Displays a selection/input widget for date/time. For example, the following JSON creates a date/time picker for an appointment time: ``` \"date_time_picker\": { \"name\": \"appointment_time\", \"label\": \"Book your appointment at:\", \"type\": \"DateTimePickerType.DATE_AND_TIME\", \"valueMsEpoch\": \"796435200000\" } ```" + "description": "Displays a selection/input widget for date, time, or date and time. Not supported by Chat apps. Support by Chat apps is coming soon. For example, the following JSON creates a datetime picker to schedule an appointment: ``` \"date_time_picker\": { \"name\": \"appointment_time\", \"label\": \"Book your appointment at:\", \"type\": \"DateTimePickerType.DATE_AND_TIME\", \"valueMsEpoch\": \"796435200000\" } ```" }, "decoratedText": { "$ref": "GoogleAppsCardV1DecoratedText", - "description": "Displays a decorated text item in this widget. For example, the following JSON creates a decorated text widget showing email address: ``` \"decoratedText\": { \"icon\": { \"knownIcon\": \"EMAIL\" }, \"topLabel\": \"Email Address\", \"content\": \"sasha@example.com\", \"bottomLabel\": \"This is a new Email address!\", \"switchWidget\": { \"name\": \"has_send_welcome_email_to_sasha\", \"selected\": false, \"controlType\": \"ControlType.CHECKBOX\" } } ```" + "description": "Displays a decorated text item. For example, the following JSON creates a decorated text widget showing email address: ``` \"decoratedText\": { \"icon\": { \"knownIcon\": \"EMAIL\" }, \"topLabel\": \"Email Address\", \"text\": \"sasha@example.com\", \"bottomLabel\": \"This is a new Email address!\", \"switchWidget\": { \"name\": \"has_send_welcome_email_to_sasha\", \"selected\": false, \"controlType\": \"ControlType.CHECKBOX\" } } ```" }, "divider": { "$ref": "GoogleAppsCardV1Divider", - "description": "Displays a divider. For example, the following JSON creates a divider: ``` \"divider\": { } ```" + "description": "Displays a horizontal line divider between widgets. For example, the following JSON creates a divider: ``` \"divider\": { } ```" }, "grid": { "$ref": "GoogleAppsCardV1Grid", - "description": "Displays a grid with a collection of items. For example, the following JSON creates a 2 column grid with a single item: ``` \"grid\": { \"title\": \"A fine collection of items\", \"numColumns\": 2, \"borderStyle\": { \"type\": \"STROKE\", \"cornerRadius\": 4.0 }, \"items\": [ \"image\": { \"imageUri\": \"https://www.example.com/image.png\", \"cropStyle\": { \"type\": \"SQUARE\" }, \"borderStyle\": { \"type\": \"STROKE\" } }, \"title\": \"An item\", \"textAlignment\": \"CENTER\" ], \"onClick\": { \"openLink\": { \"url\":\"https://www.example.com\" } } } ```" - }, - "horizontalAlignment": { - "description": "The horizontal alignment of this widget.", - "enum": [ - "HORIZONTAL_ALIGNMENT_UNSPECIFIED", - "START", - "CENTER", - "END" - ], - "enumDescriptions": [ - "Unspecified alignment.", - "Alignment to the start position.", - "Alignment to the center position.", - "Alignment to the end position." - ], - "type": "string" + "description": "Displays a grid with a collection of items. A grid supports any number of columns and items. The number of rows is determined by the upper bounds of the number items divided by the number of columns. A grid with 10 items and 2 columns has 5 rows. A grid with 11 items and 2 columns has 6 rows. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon. For example, the following JSON creates a 2 column grid with a single item: ``` \"grid\": { \"title\": \"A fine collection of items\", \"numColumns\": 2, \"borderStyle\": { \"type\": \"STROKE\", \"cornerRadius\": 4.0 }, \"items\": [ \"image\": { \"imageUri\": \"https://www.example.com/image.png\", \"cropStyle\": { \"type\": \"SQUARE\" }, \"borderStyle\": { \"type\": \"STROKE\" } }, \"title\": \"An item\", \"textAlignment\": \"CENTER\" ], \"onClick\": { \"openLink\": { \"url\":\"https://www.example.com\" } } } ```" }, "image": { "$ref": "GoogleAppsCardV1Image", - "description": "Displays an image in this widget. For example, the following JSON creates an image with alternative text: ``` \"image\": { \"imageUrl\": \"https://example.com/sasha.png\" \"altText\": \"Avatar for Sasha\" } ```" + "description": "Displays an image. For example, the following JSON creates an image with alternative text: ``` \"image\": { \"imageUrl\": \"https://developers.google.com/chat/images/quickstart-app-avatar.png\" \"altText\": \"Chat app avatar\" } ```" }, "selectionInput": { "$ref": "GoogleAppsCardV1SelectionInput", - "description": "Displays a switch control in this widget. For example, the following JSON creates a dropdown selection for size: ``` \"switchControl\": { \"name\": \"size\", \"label\": \"Size\" \"type\": \"SelectionType.DROPDOWN\", \"items\": [ { \"text\": \"S\", \"value\": \"small\", \"selected\": false }, { \"text\": \"M\", \"value\": \"medium\", \"selected\": true }, { \"text\": \"L\", \"value\": \"large\", \"selected\": false }, { \"text\": \"XL\", \"value\": \"extra_large\", \"selected\": false } ] } ```" + "description": "Displays a selection control that lets users select items. Selection controls can be check boxes, radio buttons, switches, or dropdown menus. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon. For example, the following JSON creates a dropdown menu that lets users choose a size: ``` \"selectionInput\": { \"name\": \"size\", \"label\": \"Size\" \"type\": \"SelectionType.DROPDOWN\", \"items\": [ { \"text\": \"S\", \"value\": \"small\", \"selected\": false }, { \"text\": \"M\", \"value\": \"medium\", \"selected\": true }, { \"text\": \"L\", \"value\": \"large\", \"selected\": false }, { \"text\": \"XL\", \"value\": \"extra_large\", \"selected\": false } ] } ```" }, "textInput": { "$ref": "GoogleAppsCardV1TextInput", - "description": "Displays a text input in this widget. For example, the following JSON creates a text input for mail address: ``` \"textInput\": { \"name\": \"mailing_address\", \"label\": \"Mailing Address\" } ``` As another example, the following JSON creates a text input for programming language with static suggestions: ``` \"textInput\": { \"name\": \"preferred_programing_language\", \"label\": \"Preferred Language\", \"initialSuggestions\": { \"items\": [ { \"text\": \"C++\" }, { \"text\": \"Java\" }, { \"text\": \"JavaScript\" }, { \"text\": \"Python\" } ] } } ```" + "description": "Displays a text box that users can type into. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon. For example, the following JSON creates a text input for an email address: ``` \"textInput\": { \"name\": \"mailing_address\", \"label\": \"Mailing Address\" } ``` As another example, the following JSON creates a text input for a programming language with static suggestions: ``` \"textInput\": { \"name\": \"preferred_programing_language\", \"label\": \"Preferred Language\", \"initialSuggestions\": { \"items\": [ { \"text\": \"C++\" }, { \"text\": \"Java\" }, { \"text\": \"JavaScript\" }, { \"text\": \"Python\" } ] } } ```" }, "textParagraph": { "$ref": "GoogleAppsCardV1TextParagraph", - "description": "Displays a text paragraph in this widget. For example, the following JSON creates a bolded text: ``` \"textParagraph\": { \"text\": \" *bold text*\" } ```" + "description": "Displays a text paragraph. Supports [simple HTML formatted text](https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting). For example, the following JSON creates a bolded text: ``` \"textParagraph\": { \"text\": \" *bold text*\" } ```" } }, "type": "object" @@ -2576,6 +2545,7 @@ "type": "object" }, "ListSpacesResponse": { + "description": "The response corresponding to ListSpacesRequest.", "id": "ListSpacesResponse", "properties": { "nextPageToken": { diff --git a/chat/v1/chat-gen.go b/chat/v1/chat-gen.go index 65786b74c5d..044c502e7ba 100644 --- a/chat/v1/chat-gen.go +++ b/chat/v1/chat-gen.go @@ -1355,8 +1355,10 @@ func (s *FormAction) MarshalJSON() ([]byte, error) { // the form is submitted. For example, an Apps Script can be invoked to // handle the form. type GoogleAppsCardV1Action struct { - // Function: Apps Script function to invoke when the containing element - // is clicked/activated. + // Function: A custom function to invoke when the containing element is + // clicked or othrwise activated. For example usage, see Create + // interactive cards + // (https://developers.google.com/chat/how-tos/cards-onclick). Function string `json:"function,omitempty"` // Interaction: Optional. Required when opening a dialog @@ -1408,7 +1410,7 @@ type GoogleAppsCardV1Action struct { // (https://developers.google.com/workspace/add-ons/reference/rpc/google.apps.card.v1#loadindicator) // for all actions, as this locks the UI to ensure no changes are made // by the user while the action is being processed. Not supported by - // Google Chat apps. + // Chat apps. PersistValues bool `json:"persistValues,omitempty"` // ForceSendFields is a list of field names (e.g. "Function") to @@ -1438,7 +1440,8 @@ func (s *GoogleAppsCardV1Action) MarshalJSON() ([]byte, error) { // when the action method is invoked. For example, consider three snooze // buttons: snooze now, snooze 1 day, snooze next week. You might use // action method = snooze(), passing the snooze type and snooze time in -// the list of string parameters. +// the list of string parameters. To learn more, see CommonEventObject +// (https://developers.google.com/chat/api/reference/rest/v1/Event#commoneventobject). type GoogleAppsCardV1ActionParameter struct { // Key: The name of the parameter for the action script. Key string `json:"key,omitempty"` @@ -1470,7 +1473,7 @@ func (s *GoogleAppsCardV1ActionParameter) MarshalJSON() ([]byte, error) { } // GoogleAppsCardV1BorderStyle: Represents the complete border style -// applied to widgets. +// applied to items in a widget. type GoogleAppsCardV1BorderStyle struct { // CornerRadius: The corner radius for the border. CornerRadius int64 `json:"cornerRadius,omitempty"` @@ -1482,7 +1485,7 @@ type GoogleAppsCardV1BorderStyle struct { // // Possible values: // "BORDER_TYPE_UNSPECIFIED" - No value specified. - // "NO_BORDER" - No border. + // "NO_BORDER" - Default value. No border. // "STROKE" - Outline. Type string `json:"type,omitempty"` @@ -1509,27 +1512,50 @@ func (s *GoogleAppsCardV1BorderStyle) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleAppsCardV1Button: A button. Can be a text button or an image -// button. +// GoogleAppsCardV1Button: A text, icon, or text + icon button that +// users can click. To make an image a clickable button, specify an +// Image (not an ImageComponent) and set an `onClick` action. type GoogleAppsCardV1Button struct { - // AltText: The alternative text used for accessibility. Has no effect - // when an icon is set; use `icon.alt_text` instead. + // AltText: The alternative text used for accessibility. Set descriptive + // text that lets users know what the button does. For example, if a + // button opens a hyperlink, you might write: "Opens a new browser tab + // and navigates to the Google Chat developer documentation at + // https://developers.google.com/chat". Has no effect when an icon is + // set; use `icon.alt_text` instead. AltText string `json:"altText,omitempty"` - // Color: If set, the button is filled with a solid background. + // Color: If set, the button is filled with a solid background color and + // the font color changes to maintain contrast with the background + // color. For example, setting a blue background will likely result in + // white text. If unset, the image background is white and the font + // color is blue. For red, green and blue, the value of each field is a + // `float` number that can be expressed in either of two ways: as a + // number between 0 and 255 divided by 255 (153/255) or as a value + // between 0 and 1 (0.6). 0 represents the absence of a color and 1 or + // 255/255 represent the full presence of that color on the RGB scale. + // Optionally set alpha, which sets a level of transparency using this + // equation: ``` pixel color = alpha * (this color) + (1.0 - alpha) * + // (background color) ``` For alpha, a value of 1 corresponds with a + // solid color, and a value of 0 corresponds with a completely + // transparent color. For example, the following color represents a half + // transparent red: ``` "color": { "red": 1, "green": 0, "blue": 0, + // "alpha": 0.5 } ``` Color *Color `json:"color,omitempty"` - // Disabled: If `true`, the button is displayed in a disabled state and + // Disabled: If `true`, the button is displayed in an inactive state and // doesn't respond to user actions. Disabled bool `json:"disabled,omitempty"` - // Icon: The icon image. + // Icon: The icon image. If both `icon` and `text` are set, then the + // icon appears in place of the text. Support for both an icon and text + // is coming soon. Icon *GoogleAppsCardV1Icon `json:"icon,omitempty"` - // OnClick: The action to perform when the button is clicked. + // OnClick: The action to perform when the button is clicked, such as + // opening a hyperlink or running a custom function. OnClick *GoogleAppsCardV1OnClick `json:"onClick,omitempty"` - // Text: The text of the button. + // Text: The text displayed inside the button. Text string `json:"text,omitempty"` // ForceSendFields is a list of field names (e.g. "AltText") to @@ -1594,9 +1620,10 @@ func (s *GoogleAppsCardV1ButtonList) MarshalJSON() ([]byte, error) { // the contact's name, job title, avatar picture. - A section with the // contact information, including formatted text. - Buttons that users // can click to share the contact or see more or less info. !Example -// contact card (/chat/images/card_api_reference.png) ``` { "cardsV2": [ -// { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", -// "subtitle": "Software Engineer", "imageUrl": +// contact card +// (https://developers.google.com/chat/images/card_api_reference.png) +// ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": +// { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": // "https://developers.google.com/chat/images/quickstart-app-avatar.png", // // "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha", }, @@ -1614,18 +1641,19 @@ func (s *GoogleAppsCardV1ButtonList) MarshalJSON() ([]byte, error) { // } }, ], }, ], }, } ], } ``` type GoogleAppsCardV1Card struct { // CardActions: The card's actions. Actions are added to the card's - // generated toolbar menu. Not supported by Google Chat apps. 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" } } } ] ``` + // toolbar menu. Because Chat app cards have no toolbar, `cardActions[]` + // is not supported by Chat apps. 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 []*GoogleAppsCardV1CardAction `json:"cardActions,omitempty"` - // DisplayStyle: The `peekCardHeader` display style for. Not supported - // by Google Chat apps. + // DisplayStyle: In Google Workspace add-ons, sets the display + // properties of the `peekCardHeader`. Not supported by Chat apps. // // Possible values: // "DISPLAY_STYLE_UNSPECIFIED" - Do not use. @@ -1638,22 +1666,30 @@ type GoogleAppsCardV1Card struct { DisplayStyle string `json:"displayStyle,omitempty"` // FixedFooter: The fixed footer shown at the bottom of this card. + // Setting `fixedFooter` without specifying a `primaryButton` or a + // `secondaryButton` causes an error. Chat apps support `fixedFooter` in + // dialogs (https://developers.google.com/chat/how-tos/dialogs), but not + // in card messages + // (https://developers.google.com/chat/api/guides/message-formats/cards). FixedFooter *GoogleAppsCardV1CardFixedFooter `json:"fixedFooter,omitempty"` - // Header: The header of the card. A header usually contains a title and - // an image. + // Header: The header of the card. A header usually contains a leading + // image and a title. Headers always appear at the top of a card. Header *GoogleAppsCardV1CardHeader `json:"header,omitempty"` // Name: Name of the card. Used as a card identifier in card navigation. + // Because Chat apps don't support card navigation, they ignore this + // field. Name string `json:"name,omitempty"` // PeekCardHeader: When displaying contextual content, the peek card // header acts as a placeholder so that the user can navigate forward // between the homepage cards and the contextual cards. Not supported by - // Google Chat apps. + // Chat apps. PeekCardHeader *GoogleAppsCardV1CardHeader `json:"peekCardHeader,omitempty"` - // Sections: Sections are separated by a line divider. + // Sections: Contains a collection of widgets. Each section has its own, + // optional header. Sections are visually separated by a line divider. Sections []*GoogleAppsCardV1Section `json:"sections,omitempty"` // ForceSendFields is a list of field names (e.g. "CardActions") to @@ -1682,7 +1718,7 @@ func (s *GoogleAppsCardV1Card) MarshalJSON() ([]byte, error) { // GoogleAppsCardV1CardAction: 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. Not supported by Google Chat apps. +// browser. Not supported by Chat apps. type GoogleAppsCardV1CardAction struct { // ActionLabel: The label that displays as the action menu item. ActionLabel string `json:"actionLabel,omitempty"` @@ -1713,8 +1749,13 @@ func (s *GoogleAppsCardV1CardAction) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleAppsCardV1CardFixedFooter: A persistent (sticky) footer that is -// added to the bottom of the card. +// GoogleAppsCardV1CardFixedFooter: A persistent (sticky) footer that +// that appears at the bottom of the card. Setting `fixedFooter` without +// specifying a `primaryButton` or a `secondaryButton` causes an error. +// Chat apps support `fixedFooter` in dialogs +// (https://developers.google.com/chat/how-tos/dialogs), but not in card +// messages +// (https://developers.google.com/chat/api/guides/message-formats/cards). type GoogleAppsCardV1CardFixedFooter struct { // PrimaryButton: The primary button of the fixed footer. The button // must be a text button with text and color set. @@ -1754,17 +1795,20 @@ type GoogleAppsCardV1CardHeader struct { // accessibility. ImageAltText string `json:"imageAltText,omitempty"` - // ImageType: The image's type. + // ImageType: The shape used to crop the image. // // Possible values: - // "SQUARE" - Applies no cropping to the image. - // "CIRCLE" - Applies a circular mask to the image. + // "SQUARE" - Default value. Applies a square mask to the image. For + // example, a 4x3 image becomes 3x3. + // "CIRCLE" - Applies a circular mask to the image. For example, a 4x3 + // image becomes a circle with a diameter of 3. ImageType string `json:"imageType,omitempty"` - // ImageUrl: The URL of the image in the card header. + // ImageUrl: The HTTPS URL of the image in the card header. ImageUrl string `json:"imageUrl,omitempty"` - // Subtitle: The subtitle of the card header. + // Subtitle: The subtitle of the card header. If specified, appears on + // its own line below the `title`. Subtitle string `json:"subtitle,omitempty"` // Title: Required. The title of the card header. The header has a fixed @@ -1795,19 +1839,29 @@ func (s *GoogleAppsCardV1CardHeader) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleAppsCardV1DateTimePicker: The widget that lets users to specify -// a date and time. Not supported by Google Chat apps. +// GoogleAppsCardV1DateTimePicker: Lets users specify a date, a time, or +// both a date and a time. Accepts text input from users, but features +// an interactive date and time selector that helps users enter +// correctly-formatted dates and times. If users enter a date or time +// incorrectly, the widget shows an error that prompts users to enter +// the correct format. Not supported by Chat apps. Support by Chat apps +// coming soon. type GoogleAppsCardV1DateTimePicker struct { - // Label: The label for the field that displays to the user. + // Label: The text that prompts users to enter a date, time, or + // datetime. Specify text that helps the user enter the information your + // app needs. For example, if users are setting an appointment, then a + // label like "Appointment date" or "Appointment date and time" might + // work well. Label string `json:"label,omitempty"` - // Name: The name of the text input that's used in `formInput`, and - // uniquely identifies this input. + // Name: The name by which the datetime picker is identified in a form + // input event. For details about working with form inputs, see Receive + // form data + // (https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs). Name string `json:"name,omitempty"` - // OnChangeAction: Triggered when the user clicks Save or Clear from the - // date/time picker dialog. This is only triggered if the value changed - // as a result of the Save/Clear operation. + // OnChangeAction: Triggered when the user clicks **Save** or **Clear** + // from the datetime picker interface. OnChangeAction *GoogleAppsCardV1Action `json:"onChangeAction,omitempty"` // TimezoneOffsetDate: The number representing the time zone offset from @@ -1816,7 +1870,7 @@ type GoogleAppsCardV1DateTimePicker struct { // on the client side. TimezoneOffsetDate int64 `json:"timezoneOffsetDate,omitempty"` - // Type: The type of the date/time picker. + // Type: What kind of date and time input the datetime picker supports. // // Possible values: // "DATE_AND_TIME" - The user can select a date and time. @@ -1824,12 +1878,13 @@ type GoogleAppsCardV1DateTimePicker struct { // "TIME_ONLY" - The user can only select a time. Type string `json:"type,omitempty"` - // ValueMsEpoch: The value to display as the default value before user - // input or previous user input. It is represented in milliseconds - // (Epoch time). For `DATE_AND_TIME` type, the full epoch value is used. - // For `DATE_ONLY` type, only date of the epoch time is used. For - // `TIME_ONLY` type, only time of the epoch time is used. For example, - // you can set epoch time to `3 * 60 * 60 * 1000` to represent 3am. + // ValueMsEpoch: The value displayed as the default value before user + // input or previous user input, represented in milliseconds (Epoch time + // (https://en.wikipedia.org/wiki/Unix_time)). For `DATE_AND_TIME` type, + // the full epoch value is used. For `DATE_ONLY` type, only date of the + // epoch time is used. For `TIME_ONLY` type, only time of the epoch time + // is used. For example, to represent 3:00 AM, set epoch time to `3 * 60 + // * 60 * 1000`. ValueMsEpoch int64 `json:"valueMsEpoch,omitempty,string"` // ForceSendFields is a list of field names (e.g. "Label") to @@ -1859,38 +1914,51 @@ func (s *GoogleAppsCardV1DateTimePicker) MarshalJSON() ([]byte, error) { // optional decorations such as a label above or below the text, an icon // in front of the text, a selection widget or a button after the text. type GoogleAppsCardV1DecoratedText struct { - // BottomLabel: The formatted text label that shows below the main text. + // BottomLabel: The text that appears below `text`. Always truncates. + // Supports simple formatting. See Text formatting for formatting + // details. BottomLabel string `json:"bottomLabel,omitempty"` // Button: A button that can be clicked to trigger an action. Button *GoogleAppsCardV1Button `json:"button,omitempty"` - // EndIcon: An icon displayed after the text. + // EndIcon: An icon displayed after the text. Supports standard + // (https://developers.google.com/chat/api/guides/message-formats/cards#builtinicons) + // and custom + // (https://developers.google.com/chat/api/guides/message-formats/cards#customicons) + // icons. EndIcon *GoogleAppsCardV1Icon `json:"endIcon,omitempty"` - // Icon: Deprecated in favor of start_icon. + // Icon: Deprecated in favor of `startIcon`. Icon *GoogleAppsCardV1Icon `json:"icon,omitempty"` - // OnClick: Only the top and bottom label and content region are - // clickable. + // OnClick: When users click on `topLabel` or `bottomLabel`, this action + // triggers. OnClick *GoogleAppsCardV1OnClick `json:"onClick,omitempty"` // StartIcon: The icon displayed in front of the text. StartIcon *GoogleAppsCardV1Icon `json:"startIcon,omitempty"` - // SwitchControl: A switch widget can be clicked to change its state or - // trigger an action. + // SwitchControl: A switch widget can be clicked to change its state and + // trigger an action. Currently supported in dialogs + // (https://developers.google.com/chat/how-tos/dialogs). Support for + // card messages + // (https://developers.google.com/chat/api/guides/message-formats/cards) + // is coming soon. SwitchControl *GoogleAppsCardV1SwitchControl `json:"switchControl,omitempty"` - // Text: Required. The main widget formatted text. See Text formatting - // for details. + // Text: Required. The primary text. Supports simple formatting. See + // Text formatting for formatting details. Text string `json:"text,omitempty"` - // TopLabel: The formatted text label that shows above the main text. + // TopLabel: The text that appears above `text`. Always truncates. + // Supports simple formatting. See Text formatting for formatting + // details. TopLabel string `json:"topLabel,omitempty"` - // WrapText: The wrap text setting. If `true`, the text is wrapped and - // displayed in multiline. Otherwise, the text is truncated. + // WrapText: The wrap text setting. If `true`, the text wraps and + // displays on multiple lines. Otherwise, the text is truncated. Only + // applies to `text`, not `topLabel` and `bottomLabel`. WrapText bool `json:"wrapText,omitempty"` // ForceSendFields is a list of field names (e.g. "BottomLabel") to @@ -1916,12 +1984,28 @@ func (s *GoogleAppsCardV1DecoratedText) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleAppsCardV1Divider: A divider that appears in between widgets. +// GoogleAppsCardV1Divider: Displays a divider between widgets, a +// horizontal line. For example, the following JSON creates a divider: +// ``` "divider": { } ``` type GoogleAppsCardV1Divider struct { } -// GoogleAppsCardV1Grid: Represents a Grid widget that displays items in -// a configurable grid layout. +// GoogleAppsCardV1Grid: Displays a grid with a collection of items. A +// grid supports any number of columns and items. The number of rows is +// determined by items divided by columns. A grid with 10 items and 2 +// columns has 5 rows. A grid with 11 items and 2 columns has 6 rows. +// Currently supported in dialogs +// (https://developers.google.com/chat/how-tos/dialogs). Support for +// card messages +// (https://developers.google.com/chat/api/guides/message-formats/cards) +// is coming soon. For example, the following JSON creates a 2 column +// grid with a single item: ``` "grid": { "title": "A fine collection of +// items", "numColumns": 2, "borderStyle": { "type": "STROKE", +// "cornerRadius": 4.0 }, "items": [ "image": { "imageUri": +// "https://www.example.com/image.png", "cropStyle": { "type": "SQUARE" +// }, "borderStyle": { "type": "STROKE" } }, "title": "An item", +// "textAlignment": "CENTER" ], "onClick": { "openLink": { +// "url":"https://www.example.com" } } } ``` type GoogleAppsCardV1Grid struct { // BorderStyle: The border style to apply to each grid item. BorderStyle *GoogleAppsCardV1BorderStyle `json:"borderStyle,omitempty"` @@ -1989,15 +2073,6 @@ type GoogleAppsCardV1GridItem struct { // Subtitle: The grid item's subtitle. Subtitle string `json:"subtitle,omitempty"` - // TextAlignment: The horizontal alignment of the grid item's text. - // - // Possible values: - // "HORIZONTAL_ALIGNMENT_UNSPECIFIED" - Unspecified alignment. - // "START" - Alignment to the start position. - // "CENTER" - Alignment to the center position. - // "END" - Alignment to the end position. - TextAlignment string `json:"textAlignment,omitempty"` - // Title: The grid item's title. Title string `json:"title,omitempty"` @@ -2024,12 +2099,29 @@ func (s *GoogleAppsCardV1GridItem) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleAppsCardV1Icon: An icon displayed in a widget on a card. +// Supports standard +// (https://developers.google.com/chat/api/guides/message-formats/cards) +// and custom +// (https://developers.google.com/chat/api/guides/message-formats/cards#customicons) +// icons. type GoogleAppsCardV1Icon struct { - // AltText: The description of the icon, used for accessibility. The - // default value is provided if you don't specify one. + // AltText: Optional. A description of the icon used for accessibility. + // If unspecified, a default value is provided. As a best practice, you + // should set a helpful description. For example, if an icon displays a + // user's account portrait, you could describe it as "A user's account + // portrait." If the icon displays in a Button, this alt text takes + // precedence and overwrites the button's alt text, so you should write + // alt text for the button: Set descriptive text that lets users know + // what the button does. For example, if a button opens a hyperlink, you + // might write: "Opens a new browser tab and navigates to the Google + // Chat developer documentation at https://developers.google.com/chat". AltText string `json:"altText,omitempty"` - // IconUrl: The icon specified by a URL. + // IconUrl: Display a custom icon hosted at an HTTPS URL. For example: + // ``` "iconUrl": + // "https://developers.google.com/chat/images/quickstart-app-avatar.png" + // ``` Supported file types include `.png` and `.jpg`. IconUrl string `json:"iconUrl,omitempty"` // ImageType: The crop style applied to the image. In some cases, @@ -2037,12 +2129,17 @@ type GoogleAppsCardV1Icon struct { // standard icon. // // Possible values: - // "SQUARE" - Applies no cropping to the image. - // "CIRCLE" - Applies a circular mask to the image. + // "SQUARE" - Default value. Applies a square mask to the image. For + // example, a 4x3 image becomes 3x3. + // "CIRCLE" - Applies a circular mask to the image. For example, a 4x3 + // image becomes a circle with a diameter of 3. ImageType string `json:"imageType,omitempty"` - // KnownIcon: The icon specified by the string name of a list of known - // icons. + // KnownIcon: Display one of the standard icons provided by Google + // Workspace. For example, to display an airplane icon, specify + // `AIRPLANE`. For a bus, specify `BUS`. For a full list of supported + // icons, see standard icons + // (https://developers.google.com/chat/api/guides/message-formats/cards). KnownIcon string `json:"knownIcon,omitempty"` // ForceSendFields is a list of field names (e.g. "AltText") to @@ -2074,10 +2171,13 @@ type GoogleAppsCardV1Image struct { // AltText: The alternative text of this image, used for accessibility. AltText string `json:"altText,omitempty"` - // ImageUrl: An image URL. + // ImageUrl: The `https` URL that hosts the image. For example: ``` + // https://developers.google.com/chat/images/quickstart-app-avatar.png + // ``` ImageUrl string `json:"imageUrl,omitempty"` - // OnClick: The action triggered by an `onClick` event. + // OnClick: When a user clicks on the image, the click triggers this + // action. OnClick *GoogleAppsCardV1OnClick `json:"onClick,omitempty"` // ForceSendFields is a list of field names (e.g. "AltText") to @@ -2141,20 +2241,23 @@ func (s *GoogleAppsCardV1ImageComponent) MarshalJSON() ([]byte, error) { } // GoogleAppsCardV1ImageCropStyle: Represents the crop style applied to -// an image. +// an image. For example, here's how to apply a 16 by 9 aspect ratio: +// ``` cropStyle { "type": "RECTANGLE_CUSTOM", "aspectRatio": 16/9 } ``` type GoogleAppsCardV1ImageCropStyle struct { // AspectRatio: The aspect ratio to use if the crop type is - // `RECTANGLE_CUSTOM`. + // `RECTANGLE_CUSTOM`. For example, here's how to apply a 16 by 9 aspect + // ratio: ``` cropStyle { "type": "RECTANGLE_CUSTOM", "aspectRatio": + // 16/9 } ``` AspectRatio float64 `json:"aspectRatio,omitempty"` // Type: The crop type. // // Possible values: - // "IMAGE_CROP_TYPE_UNSPECIFIED" - No value specified. - // "SQUARE" - Applies a square crop. + // "IMAGE_CROP_TYPE_UNSPECIFIED" - No value specified. Do not use. + // "SQUARE" - Default value. Applies a square crop. // "CIRCLE" - Applies a circular crop. // "RECTANGLE_CUSTOM" - Applies a rectangular crop with a custom - // aspect ratio. + // aspect ratio. Set the custom aspect ratio with `aspectRatio`. // "RECTANGLE_4_3" - Applies a rectangular crop with a 4:3 aspect // ratio. Type string `json:"type,omitempty"` @@ -2196,14 +2299,14 @@ func (s *GoogleAppsCardV1ImageCropStyle) UnmarshalJSON(data []byte) error { return nil } -// GoogleAppsCardV1OnClick: Represents the response to an `onClick` -// event. +// GoogleAppsCardV1OnClick: Represents how to respond when users click +// an interactive element on a card, such as a button. type GoogleAppsCardV1OnClick struct { // Action: If specified, an action is triggered by this `onClick`. Action *GoogleAppsCardV1Action `json:"action,omitempty"` // Card: A new card is pushed to the card stack after clicking if - // specified. + // specified. Supported by Google Workspace Add-ons, but not Chat apps. Card *GoogleAppsCardV1Card `json:"card,omitempty"` // OpenDynamicLinkAction: An add-on triggers this action when the action @@ -2292,25 +2395,30 @@ func (s *GoogleAppsCardV1OpenLink) MarshalJSON() ([]byte, error) { // GoogleAppsCardV1Section: A section contains a collection of widgets // that are rendered vertically in the order that they are specified. -// Across all platforms, cards have a narrow fixed width, so there is -// currently no need for layout properties, for example, float. type GoogleAppsCardV1Section struct { - // Collapsible: Indicates whether this section is collapsible. If a - // section is collapsible, the description must be given. + // Collapsible: Indicates whether this section is collapsible. + // Collapsible sections hide some or all widgets, but users can expand + // the section to reveal the hidden widgets by clicking **Show more**. + // Users can hide the widgets again by clicking **Show less**. To + // determine which widgets are hidden, specify + // `uncollapsibleWidgetsCount`. Collapsible bool `json:"collapsible,omitempty"` - // Header: The header of the section. Formatted text is supported. + // Header: Text that appears at the top of a section. Supports simple + // HTML formatted text + // (https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting). Header string `json:"header,omitempty"` - // UncollapsibleWidgetsCount: The number of uncollapsible widgets. 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 as default. The - // `uncollapsibleWidgetsCount` is taken into account only when - // `collapsible` is `true`. + // UncollapsibleWidgetsCount: 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`. UncollapsibleWidgetsCount int64 `json:"uncollapsibleWidgetsCount,omitempty"` - // Widgets: A section must contain at least 1 widget. + // Widgets: All the widgets in the section. Must contain at least 1 + // widget. Widgets []*GoogleAppsCardV1Widget `json:"widgets,omitempty"` // ForceSendFields is a list of field names (e.g. "Collapsible") to @@ -2337,29 +2445,74 @@ func (s *GoogleAppsCardV1Section) MarshalJSON() ([]byte, error) { } // GoogleAppsCardV1SelectionInput: A widget that creates a UI item with -// options for users to select. For example, a dropdown menu. +// options for users to select. For example, a dropdown menu or check +// list. Chat apps receive and can process the value of entered text +// during form input events. For details about working with form inputs, +// see Receive form data +// (https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs). +// When you need to collect data from users that matches options you +// set, use a selection input. To collect abstract data from users, use +// the text input widget instead. Only supported in dialogs +// (https://developers.google.com/chat/how-tos/dialogs). Support for +// card messages +// (https://developers.google.com/chat/api/guides/message-formats/cards) +// coming soon. type GoogleAppsCardV1SelectionInput struct { - // Items: An array of the selected items. + // Items: An array of the selected items. For example, all the selected + // check boxes. Items []*GoogleAppsCardV1SelectionItem `json:"items,omitempty"` - // Label: The label displayed ahead of the switch control. + // Label: The text that appears above the selection input field in the + // user interface. Specify text that helps the user enter the + // information your app needs. For example, if users are selecting the + // urgency of a work ticket from a drop-down menu, the label might be + // "Urgency" or "Select urgency". Label string `json:"label,omitempty"` - // Name: The name of the text input which is used in `formInput`. + // Name: The name by which the selection input is identified in a form + // input event. For details about working with form inputs, see Receive + // form data + // (https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs). Name string `json:"name,omitempty"` // OnChangeAction: If specified, the form is submitted when the // selection changes. If not specified, you must specify a separate - // button. + // button that submits the form. For details about working with form + // inputs, see Receive form data + // (https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs). OnChangeAction *GoogleAppsCardV1Action `json:"onChangeAction,omitempty"` - // Type: The type of the selection. + // Type: The way that an option appears to users. Different options + // support different types of interactions. For example, users can + // enable multiple check boxes, but can only select one value from a + // dropdown menu. Each selection input supports one type of selection. + // Mixing check boxes and switches, for example, is not supported. // // Possible values: - // "CHECK_BOX" - A checkbox. - // "RADIO_BUTTON" - A radio button. - // "SWITCH" - A switch. - // "DROPDOWN" - A dropdown menu. + // "CHECK_BOX" - A set of checkboxes. Users can select multiple check + // boxes per selection input. Currently supported in + // [dialogs](https://developers.google.com/chat/how-tos/dialogs). + // Support for [card + // messages](https://developers.google.com/chat/api/guides/message-format + // s/cards) is coming soon. + // "RADIO_BUTTON" - A set of radio buttons. Users can select one radio + // button per selection input. Currently supported in + // [dialogs](https://developers.google.com/chat/how-tos/dialogs). + // Support for [card + // messages](https://developers.google.com/chat/api/guides/message-format + // s/cards) is coming soon. + // "SWITCH" - A set of switches. Users can turn on multiple switches + // at once per selection input. Currently supported in + // [dialogs](https://developers.google.com/chat/how-tos/dialogs). + // Support for [card + // messages](https://developers.google.com/chat/api/guides/message-format + // s/cards) is coming soon. + // "DROPDOWN" - A dropdown menu. Users can select one dropdown menu + // item per selection input. Currently supported in + // [dialogs](https://developers.google.com/chat/how-tos/dialogs). + // Support for [card + // messages](https://developers.google.com/chat/api/guides/message-format + // s/cards) is coming soon. Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "Items") to @@ -2385,19 +2538,21 @@ func (s *GoogleAppsCardV1SelectionInput) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleAppsCardV1SelectionItem: A selectable item in the switch -// control. +// GoogleAppsCardV1SelectionItem: A selectable item in a selection +// input, such as a check box or a switch. type GoogleAppsCardV1SelectionItem struct { - // Selected: If more than one item is selected for `RADIO_BUTTON` and - // `DROPDOWN`, the first selected item is treated as selected and the - // ones after are ignored. + // Selected: When `true`, more than one item is selected. If more than + // one item is selected for radio buttons and dropdown menus, the first + // selected item is received and the ones after are ignored. Selected bool `json:"selected,omitempty"` - // Text: The text to be displayed. + // Text: The text displayed to users. Text string `json:"text,omitempty"` // Value: The value associated with this item. The client should use - // this as a form input value. + // this as a form input value. For details about working with form + // inputs, see Receive form data + // (https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs). Value string `json:"value,omitempty"` // ForceSendFields is a list of field names (e.g. "Selected") to @@ -2423,9 +2578,11 @@ func (s *GoogleAppsCardV1SelectionItem) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleAppsCardV1SuggestionItem: A suggestion item. +// GoogleAppsCardV1SuggestionItem: One suggested value that users can +// enter in a text input field. type GoogleAppsCardV1SuggestionItem struct { - // Text: The suggested autocomplete result. + // Text: The value of a suggested input to a text input field. This is + // equivalent to what users would enter themselves. Text string `json:"text,omitempty"` // ForceSendFields is a list of field names (e.g. "Text") to @@ -2451,10 +2608,21 @@ func (s *GoogleAppsCardV1SuggestionItem) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleAppsCardV1Suggestions: A container wrapping elements necessary -// for showing suggestion items used in text input autocomplete. +// GoogleAppsCardV1Suggestions: Suggested values that users can enter. +// These values appear when users click inside the text input field. As +// users type, the suggested values dynamically filter to match what the +// users have typed. For example, a text input field for programming +// language might suggest Java, JavaScript, Python, and C++. When users +// start typing "Jav", the list of suggestions filters to show just Java +// and JavaScript. Suggested values help guide users to enter values +// that your app can make sense of. When referring to JavaScript, some +// users might enter "javascript" and others "java script". Suggesting +// "JavaScript" can standardize how users interact with your app. When +// specified, `TextInput.type` is always `SINGLE_LINE`, even if it is +// set to `MULTIPLE_LINE`. type GoogleAppsCardV1Suggestions struct { - // Items: A list of suggestions used for autocomplete recommendations. + // Items: A list of suggestions used for autocomplete recommendations in + // text input fields. Items []*GoogleAppsCardV1SuggestionItem `json:"items,omitempty"` // ForceSendFields is a list of field names (e.g. "Items") to @@ -2481,9 +2649,14 @@ func (s *GoogleAppsCardV1Suggestions) MarshalJSON() ([]byte, error) { } // GoogleAppsCardV1SwitchControl: Either a toggle-style switch or a -// checkbox. +// checkbox inside a `decoratedText` widget. Only supported on the +// `decoratedText` widget. Currently supported in dialogs +// (https://developers.google.com/chat/how-tos/dialogs). Support for +// card messages +// (https://developers.google.com/chat/api/guides/message-formats/cards) +// is coming soon. type GoogleAppsCardV1SwitchControl struct { - // ControlType: The control type, either switch or checkbox. + // ControlType: How the switch appears in the user interface. // // Possible values: // "SWITCH" - A toggle-style switch. @@ -2491,16 +2664,23 @@ type GoogleAppsCardV1SwitchControl struct { // "CHECK_BOX" - A checkbox. ControlType string `json:"controlType,omitempty"` - // Name: The name of the switch widget that's used in `formInput`. + // Name: 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/chat/how-tos/dialogs#receive_form_data_from_dialogs). Name string `json:"name,omitempty"` - // OnChangeAction: The action when the switch state is changed. + // OnChangeAction: The action to perform when the switch state is + // changed, such as what function to run. OnChangeAction *GoogleAppsCardV1Action `json:"onChangeAction,omitempty"` - // Selected: If the switch is selected. + // Selected: When `true`, the switch is selected. Selected bool `json:"selected,omitempty"` - // Value: The value is what is passed back in the callback. + // Value: 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/chat/how-tos/dialogs#receive_form_data_from_dialogs). Value string `json:"value,omitempty"` // ForceSendFields is a list of field names (e.g. "ControlType") to @@ -2526,41 +2706,82 @@ func (s *GoogleAppsCardV1SwitchControl) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleAppsCardV1TextInput: A text input is a UI item where users can -// input text. A text input can also have an onChange action and -// suggestions. +// GoogleAppsCardV1TextInput: A field in which users can enter text. +// Supports suggestions and on-change actions. Chat apps receive and can +// process the value of entered text during form input events. For +// details about working with form inputs, see Receive form data +// (https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs). +// When you need to collect abstract data from users, use a text input. +// To collect defined data from users, use the selection input widget +// instead. Only supported in dialogs +// (https://developers.google.com/chat/how-tos/dialogs). Support for +// card messages +// (https://developers.google.com/chat/api/guides/message-formats/cards) +// coming soon. type GoogleAppsCardV1TextInput struct { - // AutoCompleteAction: The refresh function that returns suggestions - // based on the user's input text. If the callback is not specified, - // autocomplete is done in client side based on the initial suggestion - // items. + // AutoCompleteAction: Optional. Specify what action to take when the + // text input field provides suggestions to users who interact with it. + // If unspecified, the suggestions are set by `initialSuggestions` and + // are processed by the client. If specified, the app takes the action + // specified here, such as running a custom function. Supported by + // Google Workspace Add-ons, but not Chat apps. Support by Chat apps + // coming soon. AutoCompleteAction *GoogleAppsCardV1Action `json:"autoCompleteAction,omitempty"` - // HintText: The hint text. + // HintText: Text that appears inside the text input field meant to + // assist users by prompting them to enter a certain value. This text is + // not visible after users begin typing. Required if `label` is + // unspecified. Otherwise, optional. HintText string `json:"hintText,omitempty"` - // InitialSuggestions: The initial suggestions made before any user - // input. + // InitialSuggestions: Suggested values that users can enter. These + // values appear when users click inside the text input field. As users + // type, the suggested values dynamically filter to match what the users + // have typed. For example, a text input field for programming language + // might suggest Java, JavaScript, Python, and C++. When users start + // typing "Jav", the list of suggestions filters to show just Java and + // JavaScript. Suggested values help guide users to enter values that + // your app can make sense of. When referring to JavaScript, some users + // might enter "javascript" and others "java script". Suggesting + // "JavaScript" can standardize how users interact with your app. When + // specified, `TextInput.type` is always `SINGLE_LINE`, even if it is + // set to `MULTIPLE_LINE`. InitialSuggestions *GoogleAppsCardV1Suggestions `json:"initialSuggestions,omitempty"` - // Label: At least one of label and hintText must be specified. + // Label: The text that appears above the text input field in the user + // interface. Specify text that helps the user enter the information + // your app needs. For example, if you are asking someone's name, but + // specifically need their surname, write "surname" instead of "name". + // Required if `hintText` is unspecified. Otherwise, optional. Label string `json:"label,omitempty"` - // Name: The name of the text input which is used in `formInput`. + // Name: The name by which the text input is identified in a form input + // event. For details about working with form inputs, see Receive form + // data + // (https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs). Name string `json:"name,omitempty"` - // OnChangeAction: The onChange action, for example, invoke a function. + // OnChangeAction: What to do when a change occurs in the text input + // field. Examples of changes include a user adding to the field, or + // deleting text. Examples of actions to take include running a custom + // function or opening a dialog + // (https://developers.google.com/chat/how-tos/dialogs) in Google Chat. OnChangeAction *GoogleAppsCardV1Action `json:"onChangeAction,omitempty"` - // Type: The style of the text, for example, a single line or multiple - // lines. + // Type: How a text input field appears in the user interface. For + // example, whether the field is single or multi-line. // // Possible values: - // "SINGLE_LINE" - The text is put into a single line. - // "MULTIPLE_LINE" - The text is put into multiple lines. + // "SINGLE_LINE" - The text input field has a fixed height of one + // line. + // "MULTIPLE_LINE" - The text input field has a fixed height of + // multiple lines. Type string `json:"type,omitempty"` - // Value: The default value when there is no input from the user. + // Value: 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/chat/how-tos/dialogs#receive_form_data_from_dialogs). Value string `json:"value,omitempty"` // ForceSendFields is a list of field names (e.g. "AutoCompleteAction") @@ -2618,87 +2839,100 @@ func (s *GoogleAppsCardV1TextParagraph) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleAppsCardV1Widget: A widget is a UI element that presents texts, -// images, etc. +// GoogleAppsCardV1Widget: 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. type GoogleAppsCardV1Widget struct { // ButtonList: A list of buttons. For example, the following JSON - // creates two buttons. The first is a filled text button and the second + // creates two buttons. The first is a blue text button and the second // is an image button that opens a link: ``` "buttonList": { "buttons": - // [ "button": { "text": "Edit", "Color": { "Red": 255 "Green": 255 - // "Blue": 255 } "disabled": true }, "button": { "icon": { "knownIcon": - // "INVITE" "altText": "check calendar" }, "onClick": { "openLink": { - // "url": "https://example.com/calendar" } } }, ] } ``` + // [ "button": { "text": "Edit", "color": { "red": 0, "green": 0, + // "blue": 1, "alpha": 1 } "disabled": true }, "button": { "icon": { + // "knownIcon": "INVITE" "altText": "check calendar" }, "onClick": { + // "openLink": { "url": "https://example.com/calendar" } } }, ] } ``` ButtonList *GoogleAppsCardV1ButtonList `json:"buttonList,omitempty"` - // DateTimePicker: Displays a selection/input widget for date/time. For - // example, the following JSON creates a date/time picker for an - // appointment time: ``` "date_time_picker": { "name": + // DateTimePicker: Displays a selection/input widget for date, time, or + // date and time. Not supported by Chat apps. Support by Chat apps is + // coming soon. For example, the following JSON creates a datetime + // picker to schedule an appointment: ``` "date_time_picker": { "name": // "appointment_time", "label": "Book your appointment at:", "type": // "DateTimePickerType.DATE_AND_TIME", "valueMsEpoch": "796435200000" } // ``` DateTimePicker *GoogleAppsCardV1DateTimePicker `json:"dateTimePicker,omitempty"` - // DecoratedText: Displays a decorated text item in this widget. For - // example, the following JSON creates a decorated text widget showing - // email address: ``` "decoratedText": { "icon": { "knownIcon": "EMAIL" - // }, "topLabel": "Email Address", "content": "sasha@example.com", - // "bottomLabel": "This is a new Email address!", "switchWidget": { - // "name": "has_send_welcome_email_to_sasha", "selected": false, - // "controlType": "ControlType.CHECKBOX" } } ``` + // DecoratedText: Displays a decorated text item. For example, the + // following JSON creates a decorated text widget showing email address: + // ``` "decoratedText": { "icon": { "knownIcon": "EMAIL" }, "topLabel": + // "Email Address", "text": "sasha@example.com", "bottomLabel": "This is + // a new Email address!", "switchWidget": { "name": + // "has_send_welcome_email_to_sasha", "selected": false, "controlType": + // "ControlType.CHECKBOX" } } ``` DecoratedText *GoogleAppsCardV1DecoratedText `json:"decoratedText,omitempty"` - // Divider: Displays a divider. For example, the following JSON creates - // a divider: ``` "divider": { } ``` + // Divider: Displays a horizontal line divider between widgets. For + // example, the following JSON creates a divider: ``` "divider": { } ``` Divider *GoogleAppsCardV1Divider `json:"divider,omitempty"` - // Grid: Displays a grid with a collection of items. For example, the - // following JSON creates a 2 column grid with a single item: ``` - // "grid": { "title": "A fine collection of items", "numColumns": 2, - // "borderStyle": { "type": "STROKE", "cornerRadius": 4.0 }, "items": [ - // "image": { "imageUri": "https://www.example.com/image.png", - // "cropStyle": { "type": "SQUARE" }, "borderStyle": { "type": "STROKE" - // } }, "title": "An item", "textAlignment": "CENTER" ], "onClick": { - // "openLink": { "url":"https://www.example.com" } } } ``` + // Grid: Displays a grid with a collection of items. A grid supports any + // number of columns and items. The number of rows is determined by the + // upper bounds of the number items divided by the number of columns. A + // grid with 10 items and 2 columns has 5 rows. A grid with 11 items and + // 2 columns has 6 rows. Currently supported in dialogs + // (https://developers.google.com/chat/how-tos/dialogs). Support for + // card messages + // (https://developers.google.com/chat/api/guides/message-formats/cards) + // is coming soon. For example, the following JSON creates a 2 column + // grid with a single item: ``` "grid": { "title": "A fine collection of + // items", "numColumns": 2, "borderStyle": { "type": "STROKE", + // "cornerRadius": 4.0 }, "items": [ "image": { "imageUri": + // "https://www.example.com/image.png", "cropStyle": { "type": "SQUARE" + // }, "borderStyle": { "type": "STROKE" } }, "title": "An item", + // "textAlignment": "CENTER" ], "onClick": { "openLink": { + // "url":"https://www.example.com" } } } ``` Grid *GoogleAppsCardV1Grid `json:"grid,omitempty"` - // HorizontalAlignment: The horizontal alignment of this widget. - // - // Possible values: - // "HORIZONTAL_ALIGNMENT_UNSPECIFIED" - Unspecified alignment. - // "START" - Alignment to the start position. - // "CENTER" - Alignment to the center position. - // "END" - Alignment to the end position. - HorizontalAlignment string `json:"horizontalAlignment,omitempty"` - - // Image: Displays an image in this widget. For example, the following - // JSON creates an image with alternative text: ``` "image": { - // "imageUrl": "https://example.com/sasha.png" "altText": "Avatar for - // Sasha" } ``` + // Image: Displays an image. For example, the following JSON creates an + // image with alternative text: ``` "image": { "imageUrl": + // "https://developers.google.com/chat/images/quickstart-app-avatar.png" + // "altText": "Chat app avatar" } ``` Image *GoogleAppsCardV1Image `json:"image,omitempty"` - // SelectionInput: Displays a switch control in this widget. For - // example, the following JSON creates a dropdown selection for size: - // ``` "switchControl": { "name": "size", "label": "Size" "type": - // "SelectionType.DROPDOWN", "items": [ { "text": "S", "value": "small", - // "selected": false }, { "text": "M", "value": "medium", "selected": - // true }, { "text": "L", "value": "large", "selected": false }, { - // "text": "XL", "value": "extra_large", "selected": false } ] } ``` + // SelectionInput: Displays a selection control that lets users select + // items. Selection controls can be check boxes, radio buttons, + // switches, or dropdown menus. Currently supported in dialogs + // (https://developers.google.com/chat/how-tos/dialogs). Support for + // card messages + // (https://developers.google.com/chat/api/guides/message-formats/cards) + // is coming soon. For example, the following JSON creates a dropdown + // menu that lets users choose a size: ``` "selectionInput": { "name": + // "size", "label": "Size" "type": "SelectionType.DROPDOWN", "items": [ + // { "text": "S", "value": "small", "selected": false }, { "text": "M", + // "value": "medium", "selected": true }, { "text": "L", "value": + // "large", "selected": false }, { "text": "XL", "value": "extra_large", + // "selected": false } ] } ``` SelectionInput *GoogleAppsCardV1SelectionInput `json:"selectionInput,omitempty"` - // TextInput: Displays a text input in this widget. For example, the - // following JSON creates a text input for mail address: ``` - // "textInput": { "name": "mailing_address", "label": "Mailing Address" - // } ``` As another example, the following JSON creates a text input for - // programming language with static suggestions: ``` "textInput": { - // "name": "preferred_programing_language", "label": "Preferred - // Language", "initialSuggestions": { "items": [ { "text": "C++" }, { - // "text": "Java" }, { "text": "JavaScript" }, { "text": "Python" } ] } - // } ``` + // TextInput: Displays a text box that users can type into. Currently + // supported in dialogs + // (https://developers.google.com/chat/how-tos/dialogs). Support for + // card messages + // (https://developers.google.com/chat/api/guides/message-formats/cards) + // is coming soon. For example, the following JSON creates a text input + // for an email address: ``` "textInput": { "name": "mailing_address", + // "label": "Mailing Address" } ``` As another example, the following + // JSON creates a text input for a programming language with static + // suggestions: ``` "textInput": { "name": + // "preferred_programing_language", "label": "Preferred Language", + // "initialSuggestions": { "items": [ { "text": "C++" }, { "text": + // "Java" }, { "text": "JavaScript" }, { "text": "Python" } ] } } ``` TextInput *GoogleAppsCardV1TextInput `json:"textInput,omitempty"` - // TextParagraph: Displays a text paragraph in this widget. For example, - // the following JSON creates a bolded text: ``` "textParagraph": { - // "text": " *bold text*" } ``` + // TextParagraph: Displays a text paragraph. Supports simple HTML + // formatted text + // (https://developers.google.com/apps-script/add-ons/concepts/widgets#text_formatting). + // For example, the following JSON creates a bolded text: ``` + // "textParagraph": { "text": " *bold text*" } ``` TextParagraph *GoogleAppsCardV1TextParagraph `json:"textParagraph,omitempty"` // ForceSendFields is a list of field names (e.g. "ButtonList") to @@ -3013,6 +3247,7 @@ func (s *ListMembershipsResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ListSpacesResponse: The response corresponding to ListSpacesRequest. type ListSpacesResponse struct { // NextPageToken: A token that can be sent as `pageToken` to retrieve // the next page of results. If empty, there are no subsequent pages. @@ -5454,8 +5689,17 @@ type SpacesGetCall struct { header_ http.Header } -// Get: Returns a space. Requires service account authentication +// Get: Returns a space. Requires authentication +// (https://developers.google.com/chat/api/guides/auth). Fully supports +// service account authentication // (https://developers.google.com/chat/api/guides/auth/service-accounts). +// Supports user authentication +// (https://developers.google.com/chat/api/guides/auth/users) as part of +// the Google Workspace Developer Preview Program +// (https://developers.google.com/workspace/preview), which grants early +// access to certain features. User authentication +// (https://developers.google.com/chat/api/guides/auth/users) requires +// the `chat.spaces` or `chat.spaces.readonly` authorization scope. // // - name: Resource name of the space, in the form "spaces/*". Format: // spaces/{space}. @@ -5564,7 +5808,7 @@ func (c *SpacesGetCall) Do(opts ...googleapi.CallOption) (*Space, error) { } return ret, nil // { - // "description": "Returns a space. Requires [service account authentication](https://developers.google.com/chat/api/guides/auth/service-accounts).", + // "description": "Returns a space. Requires [authentication](https://developers.google.com/chat/api/guides/auth). Fully supports [service account authentication](https://developers.google.com/chat/api/guides/auth/service-accounts). Supports [user authentication](https://developers.google.com/chat/api/guides/auth/users) as part of the [Google Workspace Developer Preview Program](https://developers.google.com/workspace/preview), which grants early access to certain features. [User authentication](https://developers.google.com/chat/api/guides/auth/users) requires the `chat.spaces` or `chat.spaces.readonly` authorization scope.", // "flatPath": "v1/spaces/{spacesId}", // "httpMethod": "GET", // "id": "chat.spaces.get", @@ -5598,9 +5842,19 @@ type SpacesListCall struct { header_ http.Header } -// List: Lists spaces the caller is a member of. Requires service -// account authentication +// List: Lists spaces the caller is a member of. Requires authentication +// (https://developers.google.com/chat/api/guides/auth). Fully supports +// service account authentication // (https://developers.google.com/chat/api/guides/auth/service-accounts). +// Supports user authentication +// (https://developers.google.com/chat/api/guides/auth/users) as part of +// the Google Workspace Developer Preview Program +// (https://developers.google.com/workspace/preview), which grants early +// access to certain features. User authentication +// (https://developers.google.com/chat/api/guides/auth/users) requires +// the `chat.spaces` or `chat.spaces.readonly` authorization scope. +// Lists spaces visible to the caller or authenticated user. Group chats +// and DMs aren't listed until the first message is sent. func (r *SpacesService) List() *SpacesListCall { c := &SpacesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} return c @@ -5721,7 +5975,7 @@ func (c *SpacesListCall) Do(opts ...googleapi.CallOption) (*ListSpacesResponse, } return ret, nil // { - // "description": "Lists spaces the caller is a member of. Requires [service account authentication](https://developers.google.com/chat/api/guides/auth/service-accounts). ", + // "description": "Lists spaces the caller is a member of. Requires [authentication](https://developers.google.com/chat/api/guides/auth). Fully supports [service account authentication](https://developers.google.com/chat/api/guides/auth/service-accounts). Supports [user authentication](https://developers.google.com/chat/api/guides/auth/users) as part of the [Google Workspace Developer Preview Program](https://developers.google.com/workspace/preview), which grants early access to certain features. [User authentication](https://developers.google.com/chat/api/guides/auth/users) requires the `chat.spaces` or `chat.spaces.readonly` authorization scope. Lists spaces visible to the caller or authenticated user. Group chats and DMs aren't listed until the first message is sent.", // "flatPath": "v1/spaces", // "httpMethod": "GET", // "id": "chat.spaces.list", diff --git a/cloudasset/v1/cloudasset-api.json b/cloudasset/v1/cloudasset-api.json index 71fd2568cc0..21f365ca5e9 100644 --- a/cloudasset/v1/cloudasset-api.json +++ b/cloudasset/v1/cloudasset-api.json @@ -716,6 +716,144 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "analyzeOrgPolicies": { + "description": "Analyzes organization policies under a scope.", + "flatPath": "v1/{v1Id}/{v1Id1}:analyzeOrgPolicies", + "httpMethod": "GET", + "id": "cloudasset.analyzeOrgPolicies", + "parameterOrder": [ + "scope" + ], + "parameters": { + "constraint": { + "description": "Required. The name of the constraint to analyze organization policies for. The response only contains analyzed organization policies for the provided constraint.", + "location": "query", + "type": "string" + }, + "filter": { + "description": "The expression to filter AnalyzeOrgPoliciesResponse.org_policy_results. The only supported field is `consolidated_policy.attached_resource`, and the only supported operator is `=`. Example: consolidated_policy.attached_resource=\"//cloudresourcemanager.googleapis.com/folders/001\" will return the org policy results of\"folders/001\".", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of items to return per page. If unspecified, AnalyzeOrgPoliciesResponse.org_policy_results will contain 20 items with a maximum of 200.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The pagination token to retrieve the next page.", + "location": "query", + "type": "string" + }, + "scope": { + "description": "Required. The organization to scope the request. Only organization policies within the scope will be analyzed. * organizations/{ORGANIZATION_NUMBER} (e.g., \"organizations/123456\")", + "location": "path", + "pattern": "^[^/]+/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+scope}:analyzeOrgPolicies", + "response": { + "$ref": "AnalyzeOrgPoliciesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "analyzeOrgPolicyGovernedAssets": { + "description": "Analyzes organization policies governed assets (GCP resources or policies) under a scope. This RPC supports custom constraints and the following 10 canned constraints: * storage.uniformBucketLevelAccess * iam.disableServiceAccountKeyCreation * iam.allowedPolicyMemberDomains * compute.vmExternalIpAccess * appengine.enforceServiceAccountActAsCheck * gcp.resourceLocations * compute.trustedImageProjects * compute.skipDefaultNetworkCreation * compute.requireOsLogin * compute.disableNestedVirtualization This RPC only returns either: * resources of types supported by [searchable asset types](https://cloud.google.com/asset-inventory/docs/supported-asset-types#searchable_asset_types), or * IAM policies.", + "flatPath": "v1/{v1Id}/{v1Id1}:analyzeOrgPolicyGovernedAssets", + "httpMethod": "GET", + "id": "cloudasset.analyzeOrgPolicyGovernedAssets", + "parameterOrder": [ + "scope" + ], + "parameters": { + "constraint": { + "description": "Required. The name of the constraint to analyze governed assets for. The analysis only contains analyzed organization policies for the provided constraint.", + "location": "query", + "type": "string" + }, + "filter": { + "description": "The expression to filter the governed assets in result. The only supported fields for governed resources are `governed_resource.project` and `governed_resource.folders`. The only supported fields for governed iam policies are `governed_iam_policy.project` and `governed_iam_policy.folders`. The only supported operator is `=`. Example 1: governed_resource.project=\"projects/12345678\" filter will return all governed resources under projects/12345678 including the project ifself, if applicable. Example 2: governed_iam_policy.folders=\"folders/12345678\" filter will return all governed iam policies under folders/12345678, if applicable.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of items to return per page. If unspecified, AnalyzeOrgPolicyGovernedAssetsResponse.governed_assets will contain 100 items with a maximum of 200.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The pagination token to retrieve the next page.", + "location": "query", + "type": "string" + }, + "scope": { + "description": "Required. The organization to scope the request. Only organization policies within the scope will be analyzed. The output assets will also be limited to the ones governed by those in-scope organization policies. * organizations/{ORGANIZATION_NUMBER} (e.g., \"organizations/123456\")", + "location": "path", + "pattern": "^[^/]+/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+scope}:analyzeOrgPolicyGovernedAssets", + "response": { + "$ref": "AnalyzeOrgPolicyGovernedAssetsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "analyzeOrgPolicyGovernedContainers": { + "description": "Analyzes organization policies governed containers (projects, folders or organization) under a scope.", + "flatPath": "v1/{v1Id}/{v1Id1}:analyzeOrgPolicyGovernedContainers", + "httpMethod": "GET", + "id": "cloudasset.analyzeOrgPolicyGovernedContainers", + "parameterOrder": [ + "scope" + ], + "parameters": { + "constraint": { + "description": "Required. The name of the constraint to analyze governed containers for. The analysis only contains organization policies for the provided constraint.", + "location": "query", + "type": "string" + }, + "filter": { + "description": "The expression to filter the governed containers in result. The only supported field is `parent`, and the only supported operator is `=`. Example: parent=\"//cloudresourcemanager.googleapis.com/folders/001\" will return all containers under \"folders/001\".", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of items to return per page. If unspecified, AnalyzeOrgPolicyGovernedContainersResponse.governed_containers will contain 100 items with a maximum of 200.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The pagination token to retrieve the next page.", + "location": "query", + "type": "string" + }, + "scope": { + "description": "Required. The organization to scope the request. Only organization policies within the scope will be analyzed. The output containers will also be limited to the ones governed by those in-scope organization policies. * organizations/{ORGANIZATION_NUMBER} (e.g., \"organizations/123456\")", + "location": "path", + "pattern": "^[^/]+/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+scope}:analyzeOrgPolicyGovernedContainers", + "response": { + "$ref": "AnalyzeOrgPolicyGovernedContainersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "batchGetAssetsHistory": { "description": "Batch gets the update history of assets that overlap a time window. For IAM_POLICY content, this API outputs history when the asset and its attached IAM POLICY both exist. This can create gaps in the output history. Otherwise, this API outputs history with asset in both non-delete or deleted status. If a specified asset does not exist, this API returns an INVALID_ARGUMENT error.", "flatPath": "v1/{v1Id}/{v1Id1}:batchGetAssetsHistory", @@ -816,6 +954,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "queryAssets": { + "description": "Issue a job that queries assets using a SQL statement compatible with [BigQuery Standard SQL](http://cloud/bigquery/docs/reference/standard-sql/enabling-standard-sql). If the query execution finishes within timeout and there's no pagination, the full query results will be returned in the `QueryAssetsResponse`. Otherwise, full query results can be obtained by issuing extra requests with the `job_reference` from the a previous `QueryAssets` call. Note, the query result has approximately 10 GB limitation enforced by BigQuery https://cloud.google.com/bigquery/docs/best-practices-performance-output, queries return larger results will result in errors.", + "flatPath": "v1/{v1Id}/{v1Id1}:queryAssets", + "httpMethod": "POST", + "id": "cloudasset.queryAssets", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The relative name of the root asset. This can only be an organization number (such as \"organizations/123\"), a project ID (such as \"projects/my-project-id\"), or a project number (such as \"projects/12345\"), or a folder number (such as \"folders/123\"). Only assets belonging to the `parent` will be returned.", + "location": "path", + "pattern": "^[^/]+/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}:queryAssets", + "request": { + "$ref": "QueryAssetsRequest" + }, + "response": { + "$ref": "QueryAssetsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "searchAllIamPolicies": { "description": "Searches all IAM policies within the specified scope, such as a project, folder, or organization. The caller must be granted the `cloudasset.assets.searchAllIamPolicies` permission on the desired scope, otherwise the request will be rejected.", "flatPath": "v1/{v1Id}/{v1Id1}:searchAllIamPolicies", @@ -929,7 +1095,7 @@ } } }, - "revision": "20221015", + "revision": "20221114", "rootUrl": "https://cloudasset.googleapis.com/", "schemas": { "AccessSelector": { @@ -1027,6 +1193,117 @@ }, "type": "object" }, + "AnalyzeOrgPoliciesResponse": { + "description": "The response message for AssetService.AnalyzeOrgPolicies.", + "id": "AnalyzeOrgPoliciesResponse", + "properties": { + "constraint": { + "$ref": "AnalyzerOrgPolicyConstraint", + "description": "The definition of the constraint in the request." + }, + "nextPageToken": { + "description": "The page token to fetch the next page for AnalyzeOrgPoliciesResponse.org_policy_results.", + "type": "string" + }, + "orgPolicyResults": { + "description": "The organization policies under the AnalyzeOrgPoliciesRequest.scope with the AnalyzeOrgPoliciesRequest.constraint.", + "items": { + "$ref": "OrgPolicyResult" + }, + "type": "array" + } + }, + "type": "object" + }, + "AnalyzeOrgPolicyGovernedAssetsResponse": { + "description": "The response message for AssetService.AnalyzeOrgPolicyGovernedAssets.", + "id": "AnalyzeOrgPolicyGovernedAssetsResponse", + "properties": { + "constraint": { + "$ref": "AnalyzerOrgPolicyConstraint", + "description": "The definition of the constraint in the request." + }, + "governedAssets": { + "description": "The list of the analyzed governed assets.", + "items": { + "$ref": "GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedAsset" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The page token to fetch the next page for AnalyzeOrgPolicyGovernedAssetsResponse.governed_assets.", + "type": "string" + } + }, + "type": "object" + }, + "AnalyzeOrgPolicyGovernedContainersResponse": { + "description": "The response message for AssetService.AnalyzeOrgPolicyGovernedContainers.", + "id": "AnalyzeOrgPolicyGovernedContainersResponse", + "properties": { + "constraint": { + "$ref": "AnalyzerOrgPolicyConstraint", + "description": "The definition of the constraint in the request." + }, + "governedContainers": { + "description": "The list of the analyzed governed containers.", + "items": { + "$ref": "GoogleCloudAssetV1GovernedContainer" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The page token to fetch the next page for AnalyzeOrgPolicyGovernedContainersResponse.governed_containers.", + "type": "string" + } + }, + "type": "object" + }, + "AnalyzerOrgPolicy": { + "description": "This organization policy message is a modified version of the one defined in the OrgPolicy system. This message contains several fields defined in the original organization policy with some new fields for analysis purpose.", + "id": "AnalyzerOrgPolicy", + "properties": { + "appliedResource": { + "description": "The [full resource name] (https://cloud.google.com/asset-inventory/docs/resource-name-format) of an organization/folder/project resource where this organization policy applies to. For any user defined org policies, this field has the same value as the [attached_resource] field. Only for default policy, this field has the different value.", + "type": "string" + }, + "attachedResource": { + "description": "The [full resource name] (https://cloud.google.com/asset-inventory/docs/resource-name-format) of an organization/folder/project resource where this organization policy is set. Notice that some type of constraints are defined with default policy. This field will be empty for them.", + "type": "string" + }, + "inheritFromParent": { + "description": "If `inherit_from_parent` is true, Rules set higher up in the hierarchy (up to the closest root) are inherited and present in the effective policy. If it is false, then no rules are inherited, and this policy becomes the effective root for evaluation.", + "type": "boolean" + }, + "reset": { + "description": "Ignores policies set above this resource and restores the default behavior of the constraint at this resource. This field can be set in policies for either list or boolean constraints. If set, `rules` must be empty and `inherit_from_parent` must be set to false.", + "type": "boolean" + }, + "rules": { + "description": "List of rules for this organization policy.", + "items": { + "$ref": "GoogleCloudAssetV1Rule" + }, + "type": "array" + } + }, + "type": "object" + }, + "AnalyzerOrgPolicyConstraint": { + "description": "The organization policy constraint definition.", + "id": "AnalyzerOrgPolicyConstraint", + "properties": { + "customConstraint": { + "$ref": "GoogleCloudAssetV1CustomConstraint", + "description": "The definition of the custom constraint." + }, + "googleDefinedConstraint": { + "$ref": "GoogleCloudAssetV1Constraint", + "description": "The definition of the canned constraint defined by Google." + } + }, + "type": "object" + }, "Asset": { "description": "An asset in Google Cloud. An asset can be any resource in the Google Cloud [resource hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy), a resource outside the Google Cloud resource hierarchy (such as Google Kubernetes Engine clusters and objects), or a policy (e.g. Cloud IAM policy), or a relationship (e.g. an INSTANCE_TO_INSTANCEGROUP relationship). See [Supported asset types](https://cloud.google.com/asset-inventory/docs/supported-asset-types) for more information.", "id": "Asset", @@ -1560,6 +1837,92 @@ }, "type": "object" }, + "GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedAsset": { + "description": "Represents a GCP asset(resource or IAM policy) governed by the organization policies of the AnalyzeOrgPolicyGovernedAssetsRequest.constraint.", + "id": "GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedAsset", + "properties": { + "consolidatedPolicy": { + "$ref": "AnalyzerOrgPolicy", + "description": "The consolidated policy for the analyzed asset. The consolidated policy is computed by merging and evaluating AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset.policy_bundle. The evaluation will respect the organization policy [hierarchy rules](https://cloud.google.com/resource-manager/docs/organization-policy/understanding-hierarchy)." + }, + "governedIamPolicy": { + "$ref": "GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedIamPolicy", + "description": "An IAM policy governed by the organization policies of the AnalyzeOrgPolicyGovernedAssetsRequest.constraint." + }, + "governedResource": { + "$ref": "GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedResource", + "description": "A GCP resource governed by the organization policies of the AnalyzeOrgPolicyGovernedAssetsRequest.constraint." + }, + "policyBundle": { + "description": "The ordered list of all organization policies from the AnalyzeOrgPoliciesResponse.OrgPolicyResult.consolidated_policy.attached_resource to the scope specified in the request. If the constraint is defined with default policy, it will also appear in the list.", + "items": { + "$ref": "AnalyzerOrgPolicy" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedIamPolicy": { + "description": "The IAM policies governed by the organization policies of the AnalyzeOrgPolicyGovernedAssetsRequest.constraint.", + "id": "GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedIamPolicy", + "properties": { + "attachedResource": { + "description": "The full resource name of the resource associated with this IAM policy. Example: `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`. See [Cloud Asset Inventory Resource Name Format](https://cloud.google.com/asset-inventory/docs/resource-name-format) for more information.", + "type": "string" + }, + "folders": { + "description": "The folder(s) that this IAM policy belongs to, in the form of folders/{FOLDER_NUMBER}. This field is available when the IAM policy belongs(directly or cascadingly) to one or more folders.", + "items": { + "type": "string" + }, + "type": "array" + }, + "organization": { + "description": "The organization that this IAM policy belongs to, in the form of organizations/{ORGANIZATION_NUMBER}. This field is available when the IAM policy belongs(directly or cascadingly) to an organization.", + "type": "string" + }, + "policy": { + "$ref": "Policy", + "description": "The IAM policy directly set on the given resource." + }, + "project": { + "description": "The project that this IAM policy belongs to, in the form of projects/{PROJECT_NUMBER}. This field is available when the IAM policy belongs to a project.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedResource": { + "description": "The GCP resources governed by the organization policies of the AnalyzeOrgPolicyGovernedAssetsRequest.constraint.", + "id": "GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedResource", + "properties": { + "folders": { + "description": "The folder(s) that this resource belongs to, in the form of folders/{FOLDER_NUMBER}. This field is available when the resource belongs(directly or cascadingly) to one or more folders.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fullResourceName": { + "description": "The [full resource name] (https://cloud.google.com/asset-inventory/docs/resource-name-format) of the GCP resource.", + "type": "string" + }, + "organization": { + "description": "The organization that this resource belongs to, in the form of organizations/{ORGANIZATION_NUMBER}. This field is available when the resource belongs(directly or cascadingly) to an organization.", + "type": "string" + }, + "parent": { + "description": "The [full resource name] (https://cloud.google.com/asset-inventory/docs/resource-name-format) of the parent of AnalyzeOrgPolicyGovernedAssetsResponse.GovernedResource.full_resource_name.", + "type": "string" + }, + "project": { + "description": "The project that this resource belongs to, in the form of projects/{PROJECT_NUMBER}. This field is available when the resource belongs to a project.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAssetV1BigQueryDestination": { "description": "A BigQuery destination.", "id": "GoogleCloudAssetV1BigQueryDestination", @@ -1591,6 +1954,116 @@ }, "type": "object" }, + "GoogleCloudAssetV1BooleanConstraint": { + "description": "A `Constraint` that is either enforced or not. For example a constraint `constraints/compute.disableSerialPortAccess`. If it is enforced on a VM instance, serial port connections will not be opened to that instance.", + "id": "GoogleCloudAssetV1BooleanConstraint", + "properties": {}, + "type": "object" + }, + "GoogleCloudAssetV1Constraint": { + "description": "The definition of a constraint.", + "id": "GoogleCloudAssetV1Constraint", + "properties": { + "booleanConstraint": { + "$ref": "GoogleCloudAssetV1BooleanConstraint", + "description": "Defines this constraint as being a BooleanConstraint." + }, + "constraintDefault": { + "description": "The evaluation behavior of this constraint in the absence of 'Policy'.", + "enum": [ + "CONSTRAINT_DEFAULT_UNSPECIFIED", + "ALLOW", + "DENY" + ], + "enumDescriptions": [ + "This is only used for distinguishing unset values and should never be used.", + "Indicate that all values are allowed for list constraints. Indicate that enforcement is off for boolean constraints.", + "Indicate that all values are denied for list constraints. Indicate that enforcement is on for boolean constraints." + ], + "type": "string" + }, + "description": { + "description": "Detailed description of what this `Constraint` controls as well as how and where it is enforced.", + "type": "string" + }, + "displayName": { + "description": "The human readable name of the constraint.", + "type": "string" + }, + "listConstraint": { + "$ref": "GoogleCloudAssetV1ListConstraint", + "description": "Defines this constraint as being a ListConstraint." + }, + "name": { + "description": "The unique name of the constraint. Format of the name should be * `constraints/{constraint_name}` For example, `constraints/compute.disableSerialPortAccess`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAssetV1CustomConstraint": { + "description": "The definition of a custom constraint.", + "id": "GoogleCloudAssetV1CustomConstraint", + "properties": { + "actionType": { + "description": "Allow or deny type.", + "enum": [ + "ACTION_TYPE_UNSPECIFIED", + "ALLOW", + "DENY" + ], + "enumDescriptions": [ + "Unspecified. Will results in user error.", + "Allowed action type.", + "Deny action type." + ], + "type": "string" + }, + "condition": { + "description": "Organization policy condition/expression. For example: `resource.instanceName.matches(\"[production|test]_.*_(\\d)+\")'` or, `resource.management.auto_upgrade == true`", + "type": "string" + }, + "description": { + "description": "Detailed information about this custom policy constraint.", + "type": "string" + }, + "displayName": { + "description": "One line display name for the UI.", + "type": "string" + }, + "methodTypes": { + "description": "All the operations being applied for this constraint.", + "items": { + "enum": [ + "METHOD_TYPE_UNSPECIFIED", + "CREATE", + "UPDATE", + "DELETE" + ], + "enumDescriptions": [ + "Unspecified. Will results in user error.", + "Constraint applied when creating the resource.", + "Constraint applied when updating the resource.", + "Constraint applied when deleting the resource." + ], + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Name of the constraint. This is unique within the organization. Format of the name should be * `organizations/{organization_id}/customConstraints/{custom_constraint_id}` Example : \"organizations/123/customConstraints/custom.createOnlyE2TypeVms\"", + "type": "string" + }, + "resourceTypes": { + "description": "The Resource Instance type on which this policy applies to. Format will be of the form : \"/\" Example: * `compute.googleapis.com/Instance`.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAssetV1Edge": { "description": "A directional edge.", "id": "GoogleCloudAssetV1Edge", @@ -1617,6 +2090,32 @@ }, "type": "object" }, + "GoogleCloudAssetV1GovernedContainer": { + "description": "The organization/folder/project resource governed by organization policies of AnalyzeOrgPolicyGovernedContainersRequest.constraint.", + "id": "GoogleCloudAssetV1GovernedContainer", + "properties": { + "consolidatedPolicy": { + "$ref": "AnalyzerOrgPolicy", + "description": "The consolidated organization policy for the analyzed resource. The consolidated organization policy is computed by merging and evaluating AnalyzeOrgPolicyGovernedContainersResponse.GovernedContainer.policy_bundle. The evaluation will respect the organization policy [hierarchy rules](https://cloud.google.com/resource-manager/docs/organization-policy/understanding-hierarchy)." + }, + "fullResourceName": { + "description": "The [full resource name] (https://cloud.google.com/asset-inventory/docs/resource-name-format) of an organization/folder/project resource.", + "type": "string" + }, + "parent": { + "description": "The [full resource name] (https://cloud.google.com/asset-inventory/docs/resource-name-format) of the parent of AnalyzeOrgPolicyGovernedContainersResponse.GovernedContainer.full_resource_name.", + "type": "string" + }, + "policyBundle": { + "description": "The ordered list of all organization policies from the AnalyzeOrgPoliciesResponse.OrgPolicyResult.consolidated_policy.attached_resource. to the scope specified in the request. If the constraint is defined with default policy, it will also appear in the list.", + "items": { + "$ref": "AnalyzerOrgPolicy" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAssetV1Identity": { "description": "An identity under analysis.", "id": "GoogleCloudAssetV1Identity", @@ -1653,6 +2152,40 @@ }, "type": "object" }, + "GoogleCloudAssetV1ListConstraint": { + "description": "A `Constraint` that allows or disallows a list of string values, which are configured by an Organization's policy administrator with a `Policy`.", + "id": "GoogleCloudAssetV1ListConstraint", + "properties": { + "supportsIn": { + "description": "Indicates whether values grouped into categories can be used in `Policy.allowed_values` and `Policy.denied_values`. For example, `\"in:Python\"` would match any value in the 'Python' group.", + "type": "boolean" + }, + "supportsUnder": { + "description": "Indicates whether subtrees of Cloud Resource Manager resource hierarchy can be used in `Policy.allowed_values` and `Policy.denied_values`. For example, `\"under:folders/123\"` would match any resource under the 'folders/123' folder.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudAssetV1QueryAssetsOutputConfigBigQueryDestination": { + "description": "BigQuery destination.", + "id": "GoogleCloudAssetV1QueryAssetsOutputConfigBigQueryDestination", + "properties": { + "dataset": { + "description": "Required. The BigQuery dataset where the query results will be saved. It has the format of \"projects/{projectId}/datasets/{datasetId}\".", + "type": "string" + }, + "table": { + "description": "Required. The BigQuery table where the query results will be saved. If this table does not exist, a new table with the given name will be created.", + "type": "string" + }, + "writeDisposition": { + "description": "Specifies the action that occurs if the destination table or partition already exists. The following values are supported: * WRITE_TRUNCATE: If the table or partition already exists, BigQuery overwrites the entire table or all the partitions data. * WRITE_APPEND: If the table or partition already exists, BigQuery appends the data to the table or the latest partition. * WRITE_EMPTY: If the table already exists and contains data, a 'duplicate' error is returned in the job result. The default value is WRITE_EMPTY.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAssetV1Resource": { "description": "A Google Cloud resource under analysis.", "id": "GoogleCloudAssetV1Resource", @@ -1668,6 +2201,54 @@ }, "type": "object" }, + "GoogleCloudAssetV1Rule": { + "description": "Represents a rule defined in an organization policy", + "id": "GoogleCloudAssetV1Rule", + "properties": { + "allowAll": { + "description": "Setting this to true means that all values are allowed. This field can be set only in Policies for list constraints.", + "type": "boolean" + }, + "condition": { + "$ref": "Expr", + "description": "The evaluating condition for this rule." + }, + "denyAll": { + "description": "Setting this to true means that all values are denied. This field can be set only in Policies for list constraints.", + "type": "boolean" + }, + "enforce": { + "description": "If `true`, then the `Policy` is enforced. If `false`, then any configuration is acceptable. This field can be set only in Policies for boolean constraints.", + "type": "boolean" + }, + "values": { + "$ref": "GoogleCloudAssetV1StringValues", + "description": "List of values to be used for this PolicyRule. This field can be set only in Policies for list constraints." + } + }, + "type": "object" + }, + "GoogleCloudAssetV1StringValues": { + "description": "The string values for the list constraints.", + "id": "GoogleCloudAssetV1StringValues", + "properties": { + "allowedValues": { + "description": "List of values allowed at this resource.", + "items": { + "type": "string" + }, + "type": "array" + }, + "deniedValues": { + "description": "List of values denied at this resource.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAssetV1p7beta1Asset": { "description": "An asset in Google Cloud. An asset can be any resource in the Google Cloud [resource hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy), a resource outside the Google Cloud resource hierarchy (such as Google Kubernetes Engine clusters and objects), or a policy (e.g. Cloud IAM policy). See [Supported asset types](https://cloud.google.com/asset-inventory/docs/supported-asset-types) for more information.", "id": "GoogleCloudAssetV1p7beta1Asset", @@ -1943,7 +2524,7 @@ "type": "string" }, "name": { - "description": "Required. Resource name for the Access Level. The `short_name` component must begin with a letter and only include alphanumeric and '_'. Format: `accessPolicies/{access_policy}/accessLevels/{access_level}`. The maximum length of the `access_level` component is 50 characters.", + "description": "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`.", "type": "string" }, "title": { @@ -2367,7 +2948,7 @@ "type": "string" }, "name": { - "description": "Required. Resource name for the ServicePerimeter. The `short_name` component must begin with a letter and only include alphanumeric and '_'. Format: `accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}`", + "description": "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`.", "type": "string" }, "perimeterType": { @@ -2377,7 +2958,7 @@ "PERIMETER_TYPE_BRIDGE" ], "enumDescriptions": [ - "Regular Perimeter.", + "Regular Perimeter. When no value is specified, the perimeter uses this type.", "Perimeter Bridge." ], "type": "string" @@ -2927,6 +3508,24 @@ }, "type": "object" }, + "OrgPolicyResult": { + "description": "The organization policy result to the query.", + "id": "OrgPolicyResult", + "properties": { + "consolidatedPolicy": { + "$ref": "AnalyzerOrgPolicy", + "description": "The consolidated organization policy for the analyzed resource. The consolidated organization policy is computed by merging and evaluating AnalyzeOrgPoliciesResponse.policy_bundle. The evaluation will respect the organization policy [hierarchy rules](https://cloud.google.com/resource-manager/docs/organization-policy/understanding-hierarchy)." + }, + "policyBundle": { + "description": "The ordered list of all organization policies from the AnalyzeOrgPoliciesResponse.OrgPolicyResult.consolidated_policy.attached_resource. to the scope specified in the request. If the constraint is defined with default policy, it will also appear in the list.", + "items": { + "$ref": "AnalyzerOrgPolicy" + }, + "type": "array" + } + }, + "type": "object" + }, "OsInfo": { "description": "Operating system information for the VM.", "id": "OsInfo", @@ -3073,6 +3672,86 @@ }, "type": "object" }, + "QueryAssetsOutputConfig": { + "description": "Output configuration query assets.", + "id": "QueryAssetsOutputConfig", + "properties": { + "bigqueryDestination": { + "$ref": "GoogleCloudAssetV1QueryAssetsOutputConfigBigQueryDestination", + "description": "BigQuery destination where the query results will be saved." + } + }, + "type": "object" + }, + "QueryAssetsRequest": { + "description": "QueryAssets request.", + "id": "QueryAssetsRequest", + "properties": { + "jobReference": { + "description": "Optional. Reference to the query job, which is from the `QueryAssetsResponse` of previous `QueryAssets` call.", + "type": "string" + }, + "outputConfig": { + "$ref": "QueryAssetsOutputConfig", + "description": "Optional. Destination where the query results will be saved. When this field is specified, the query results won't be saved in the [QueryAssetsResponse.query_result]. Instead [QueryAssetsResponse.output_config] will be set. Meanwhile, [QueryAssetsResponse.job_reference] will be set and can be used to check the status of the query job when passed to a following [QueryAssets] API call." + }, + "pageSize": { + "description": "Optional. The maximum number of rows to return in the results. Responses are limited to 10 MB and 1000 rows. By default, the maximum row count is 1000. When the byte or row count limit is reached, the rest of the query results will be paginated. The field will be ignored when [output_config] is specified.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token received from previous `QueryAssets`. The field will be ignored when [output_config] is specified.", + "type": "string" + }, + "readTime": { + "description": "Optional. Queries cloud assets as they appeared at the specified point in time.", + "format": "google-datetime", + "type": "string" + }, + "readTimeWindow": { + "$ref": "TimeWindow", + "description": "Optional. [start_time] is required. [start_time] must be less than [end_time] Defaults [end_time] to now if [start_time] is set and [end_time] isn't. Maximum permitted time range is 7 days." + }, + "statement": { + "description": "Optional. A SQL statement that's compatible with [BigQuery Standard SQL](http://cloud/bigquery/docs/reference/standard-sql/enabling-standard-sql).", + "type": "string" + }, + "timeout": { + "description": "Optional. Specifies the maximum amount of time that the client is willing to wait for the query to complete. By default, this limit is 5 min for the first query, and 1 minute for the following queries. If the query is complete, the `done` field in the `QueryAssetsResponse` is true, otherwise false. Like BigQuery [jobs.query API](https://cloud.google.com/bigquery/docs/reference/rest/v2/jobs/query#queryrequest) The call is not guaranteed to wait for the specified timeout; it typically returns after around 200 seconds (200,000 milliseconds), even if the query is not complete. The field will be ignored when [output_config] is specified.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "QueryAssetsResponse": { + "description": "QueryAssets response.", + "id": "QueryAssetsResponse", + "properties": { + "done": { + "description": "The query response, which can be either an `error` or a valid `response`. If `done` == `false` and the query result is being saved in a output, the output_config field will be set. If `done` == `true`, exactly one of `error`, `query_result` or `output_config` will be set.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "Error status." + }, + "jobReference": { + "description": "Reference to a query job.", + "type": "string" + }, + "outputConfig": { + "$ref": "QueryAssetsOutputConfig", + "description": "Output configuration which indicates instead of being returned in API response on the fly, the query result will be saved in a specific output." + }, + "queryResult": { + "$ref": "QueryResult", + "description": "Result of the query." + } + }, + "type": "object" + }, "QueryContent": { "description": "The query content.", "id": "QueryContent", @@ -3084,6 +3763,37 @@ }, "type": "object" }, + "QueryResult": { + "description": "Execution results of the query. The result is formatted as rows represented by BigQuery compatible [schema]. When pagination is necessary, it will contains the page token to retrieve the results of following pages.", + "id": "QueryResult", + "properties": { + "nextPageToken": { + "description": "Token to retrieve the next page of the results.", + "type": "string" + }, + "rows": { + "description": "Each row hold a query result in the format of `Struct`.", + "items": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "schema": { + "$ref": "TableSchema", + "description": "Describes the format of the [rows]." + }, + "totalRows": { + "description": "Total rows of the whole query results.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "RelatedAsset": { "description": "An asset identifier in Google Cloud which contains its name, type and ancestors. An asset can be any resource in the Google Cloud [resource hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy), a resource outside the Google Cloud resource hierarchy (such as Google Kubernetes Engine clusters and objects), or a policy (e.g. Cloud IAM policy). See [Supported asset types](https://cloud.google.com/asset-inventory/docs/supported-asset-types) for more information.", "id": "RelatedAsset", @@ -3523,6 +4233,46 @@ }, "type": "object" }, + "TableFieldSchema": { + "description": "A field in TableSchema.", + "id": "TableFieldSchema", + "properties": { + "field": { + "description": "The field name. The name must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_), and must start with a letter or underscore. The maximum length is 128 characters.", + "type": "string" + }, + "fields": { + "description": "Describes the nested schema fields if the type property is set to RECORD.", + "items": { + "$ref": "TableFieldSchema" + }, + "type": "array" + }, + "mode": { + "description": "The field mode. Possible values include NULLABLE, REQUIRED and REPEATED. The default value is NULLABLE.", + "type": "string" + }, + "type": { + "description": "The field data type. Possible values include * STRING * BYTES * INTEGER * FLOAT * BOOLEAN * TIMESTAMP * DATE * TIME * DATETIME * GEOGRAPHY, * NUMERIC, * BIGNUMERIC, * RECORD (where RECORD indicates that the field contains a nested schema).", + "type": "string" + } + }, + "type": "object" + }, + "TableSchema": { + "description": "BigQuery Compatible table schema.", + "id": "TableSchema", + "properties": { + "fields": { + "description": "Describes the fields in a table.", + "items": { + "$ref": "TableFieldSchema" + }, + "type": "array" + } + }, + "type": "object" + }, "TemporalAsset": { "description": "An asset in Google Cloud and its temporal metadata, including the time window when it was observed and its status during that window.", "id": "TemporalAsset", diff --git a/cloudasset/v1/cloudasset-gen.go b/cloudasset/v1/cloudasset-gen.go index 59db65dbb08..b57ceca845f 100644 --- a/cloudasset/v1/cloudasset-gen.go +++ b/cloudasset/v1/cloudasset-gen.go @@ -401,6 +401,221 @@ func (s *AnalyzeMoveResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// AnalyzeOrgPoliciesResponse: The response message for +// AssetService.AnalyzeOrgPolicies. +type AnalyzeOrgPoliciesResponse struct { + // Constraint: The definition of the constraint in the request. + Constraint *AnalyzerOrgPolicyConstraint `json:"constraint,omitempty"` + + // NextPageToken: The page token to fetch the next page for + // AnalyzeOrgPoliciesResponse.org_policy_results. + NextPageToken string `json:"nextPageToken,omitempty"` + + // OrgPolicyResults: The organization policies under the + // AnalyzeOrgPoliciesRequest.scope with the + // AnalyzeOrgPoliciesRequest.constraint. + OrgPolicyResults []*OrgPolicyResult `json:"orgPolicyResults,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Constraint") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Constraint") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AnalyzeOrgPoliciesResponse) MarshalJSON() ([]byte, error) { + type NoMethod AnalyzeOrgPoliciesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AnalyzeOrgPolicyGovernedAssetsResponse: The response message for +// AssetService.AnalyzeOrgPolicyGovernedAssets. +type AnalyzeOrgPolicyGovernedAssetsResponse struct { + // Constraint: The definition of the constraint in the request. + Constraint *AnalyzerOrgPolicyConstraint `json:"constraint,omitempty"` + + // GovernedAssets: The list of the analyzed governed assets. + GovernedAssets []*GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedAsset `json:"governedAssets,omitempty"` + + // NextPageToken: The page token to fetch the next page for + // AnalyzeOrgPolicyGovernedAssetsResponse.governed_assets. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Constraint") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Constraint") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AnalyzeOrgPolicyGovernedAssetsResponse) MarshalJSON() ([]byte, error) { + type NoMethod AnalyzeOrgPolicyGovernedAssetsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AnalyzeOrgPolicyGovernedContainersResponse: The response message for +// AssetService.AnalyzeOrgPolicyGovernedContainers. +type AnalyzeOrgPolicyGovernedContainersResponse struct { + // Constraint: The definition of the constraint in the request. + Constraint *AnalyzerOrgPolicyConstraint `json:"constraint,omitempty"` + + // GovernedContainers: The list of the analyzed governed containers. + GovernedContainers []*GoogleCloudAssetV1GovernedContainer `json:"governedContainers,omitempty"` + + // NextPageToken: The page token to fetch the next page for + // AnalyzeOrgPolicyGovernedContainersResponse.governed_containers. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Constraint") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Constraint") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AnalyzeOrgPolicyGovernedContainersResponse) MarshalJSON() ([]byte, error) { + type NoMethod AnalyzeOrgPolicyGovernedContainersResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AnalyzerOrgPolicy: This organization policy message is a modified +// version of the one defined in the OrgPolicy system. This message +// contains several fields defined in the original organization policy +// with some new fields for analysis purpose. +type AnalyzerOrgPolicy struct { + // AppliedResource: The [full resource name] + // (https://cloud.google.com/asset-inventory/docs/resource-name-format) + // of an organization/folder/project resource where this organization + // policy applies to. For any user defined org policies, this field has + // the same value as the [attached_resource] field. Only for default + // policy, this field has the different value. + AppliedResource string `json:"appliedResource,omitempty"` + + // AttachedResource: The [full resource name] + // (https://cloud.google.com/asset-inventory/docs/resource-name-format) + // of an organization/folder/project resource where this organization + // policy is set. Notice that some type of constraints are defined with + // default policy. This field will be empty for them. + AttachedResource string `json:"attachedResource,omitempty"` + + // InheritFromParent: If `inherit_from_parent` is true, Rules set higher + // up in the hierarchy (up to the closest root) are inherited and + // present in the effective policy. If it is false, then no rules are + // inherited, and this policy becomes the effective root for evaluation. + InheritFromParent bool `json:"inheritFromParent,omitempty"` + + // Reset: Ignores policies set above this resource and restores the + // default behavior of the constraint at this resource. This field can + // be set in policies for either list or boolean constraints. If set, + // `rules` must be empty and `inherit_from_parent` must be set to false. + Reset bool `json:"reset,omitempty"` + + // Rules: List of rules for this organization policy. + Rules []*GoogleCloudAssetV1Rule `json:"rules,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AppliedResource") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AppliedResource") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AnalyzerOrgPolicy) MarshalJSON() ([]byte, error) { + type NoMethod AnalyzerOrgPolicy + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AnalyzerOrgPolicyConstraint: The organization policy constraint +// definition. +type AnalyzerOrgPolicyConstraint struct { + // CustomConstraint: The definition of the custom constraint. + CustomConstraint *GoogleCloudAssetV1CustomConstraint `json:"customConstraint,omitempty"` + + // GoogleDefinedConstraint: The definition of the canned constraint + // defined by Google. + GoogleDefinedConstraint *GoogleCloudAssetV1Constraint `json:"googleDefinedConstraint,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CustomConstraint") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CustomConstraint") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AnalyzerOrgPolicyConstraint) MarshalJSON() ([]byte, error) { + type NoMethod AnalyzerOrgPolicyConstraint + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Asset: An asset in Google Cloud. An asset can be any resource in the // Google Cloud resource hierarchy // (https://cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy), @@ -1537,6 +1752,168 @@ func (s *GoogleCloudAssetV1AccessControlList) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedAsset: +// +// Represents a GCP asset(resource or IAM policy) governed by the +// +// organization policies of the +// AnalyzeOrgPolicyGovernedAssetsRequest.constraint. +type GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedAsset struct { + // ConsolidatedPolicy: The consolidated policy for the analyzed asset. + // The consolidated policy is computed by merging and evaluating + // AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset.policy_bundle. + // The evaluation will respect the organization policy hierarchy rules + // (https://cloud.google.com/resource-manager/docs/organization-policy/understanding-hierarchy). + ConsolidatedPolicy *AnalyzerOrgPolicy `json:"consolidatedPolicy,omitempty"` + + // GovernedIamPolicy: An IAM policy governed by the organization + // policies of the AnalyzeOrgPolicyGovernedAssetsRequest.constraint. + GovernedIamPolicy *GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedIamPolicy `json:"governedIamPolicy,omitempty"` + + // GovernedResource: A GCP resource governed by the organization + // policies of the AnalyzeOrgPolicyGovernedAssetsRequest.constraint. + GovernedResource *GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedResource `json:"governedResource,omitempty"` + + // PolicyBundle: The ordered list of all organization policies from the + // AnalyzeOrgPoliciesResponse.OrgPolicyResult.consolidated_policy.attache + // d_resource to the scope specified in the request. If the constraint + // is defined with default policy, it will also appear in the list. + PolicyBundle []*AnalyzerOrgPolicy `json:"policyBundle,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ConsolidatedPolicy") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ConsolidatedPolicy") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedAsset) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedAsset + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedIamPol +// icy: The IAM policies governed by the organization policies of the +// AnalyzeOrgPolicyGovernedAssetsRequest.constraint. +type GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedIamPolicy struct { + // AttachedResource: The full resource name of the resource associated + // with this IAM policy. Example: + // `//compute.googleapis.com/projects/my_project_123/zones/zone1/instance + // s/instance1`. See Cloud Asset Inventory Resource Name Format + // (https://cloud.google.com/asset-inventory/docs/resource-name-format) + // for more information. + AttachedResource string `json:"attachedResource,omitempty"` + + // Folders: The folder(s) that this IAM policy belongs to, in the form + // of folders/{FOLDER_NUMBER}. This field is available when the IAM + // policy belongs(directly or cascadingly) to one or more folders. + Folders []string `json:"folders,omitempty"` + + // Organization: The organization that this IAM policy belongs to, in + // the form of organizations/{ORGANIZATION_NUMBER}. This field is + // available when the IAM policy belongs(directly or cascadingly) to an + // organization. + Organization string `json:"organization,omitempty"` + + // Policy: The IAM policy directly set on the given resource. + Policy *Policy `json:"policy,omitempty"` + + // Project: The project that this IAM policy belongs to, in the form of + // projects/{PROJECT_NUMBER}. This field is available when the IAM + // policy belongs to a project. + Project string `json:"project,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AttachedResource") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AttachedResource") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedIamPolicy) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedIamPolicy + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedResour +// ce: The GCP resources governed by the organization policies of the +// AnalyzeOrgPolicyGovernedAssetsRequest.constraint. +type GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedResource struct { + // Folders: The folder(s) that this resource belongs to, in the form of + // folders/{FOLDER_NUMBER}. This field is available when the resource + // belongs(directly or cascadingly) to one or more folders. + Folders []string `json:"folders,omitempty"` + + // FullResourceName: The [full resource name] + // (https://cloud.google.com/asset-inventory/docs/resource-name-format) + // of the GCP resource. + FullResourceName string `json:"fullResourceName,omitempty"` + + // Organization: The organization that this resource belongs to, in the + // form of organizations/{ORGANIZATION_NUMBER}. This field is available + // when the resource belongs(directly or cascadingly) to an + // organization. + Organization string `json:"organization,omitempty"` + + // Parent: The [full resource name] + // (https://cloud.google.com/asset-inventory/docs/resource-name-format) + // of the parent of + // AnalyzeOrgPolicyGovernedAssetsResponse.GovernedResource.full_resource_ + // name. + Parent string `json:"parent,omitempty"` + + // Project: The project that this resource belongs to, in the form of + // projects/{PROJECT_NUMBER}. This field is available when the resource + // belongs to a project. + Project string `json:"project,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Folders") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Folders") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedResource) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedResource + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudAssetV1BigQueryDestination: A BigQuery destination. type GoogleCloudAssetV1BigQueryDestination struct { // Dataset: Required. The BigQuery dataset in format @@ -1600,33 +1977,168 @@ func (s *GoogleCloudAssetV1BigQueryDestination) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleCloudAssetV1Edge: A directional edge. -type GoogleCloudAssetV1Edge struct { - // SourceNode: The source node of the edge. For example, it could be a - // full resource name for a resource node or an email of an identity. - SourceNode string `json:"sourceNode,omitempty"` +// GoogleCloudAssetV1BooleanConstraint: A `Constraint` that is either +// enforced or not. For example a constraint +// `constraints/compute.disableSerialPortAccess`. If it is enforced on a +// VM instance, serial port connections will not be opened to that +// instance. +type GoogleCloudAssetV1BooleanConstraint struct { +} - // TargetNode: The target node of the edge. For example, it could be a - // full resource name for a resource node or an email of an identity. - TargetNode string `json:"targetNode,omitempty"` +// GoogleCloudAssetV1Constraint: The definition of a constraint. +type GoogleCloudAssetV1Constraint struct { + // BooleanConstraint: Defines this constraint as being a + // BooleanConstraint. + BooleanConstraint *GoogleCloudAssetV1BooleanConstraint `json:"booleanConstraint,omitempty"` - // ForceSendFields is a list of field names (e.g. "SourceNode") to - // unconditionally include in API requests. By default, fields with + // ConstraintDefault: The evaluation behavior of this constraint in the + // absence of 'Policy'. + // + // Possible values: + // "CONSTRAINT_DEFAULT_UNSPECIFIED" - This is only used for + // distinguishing unset values and should never be used. + // "ALLOW" - Indicate that all values are allowed for list + // constraints. Indicate that enforcement is off for boolean + // constraints. + // "DENY" - Indicate that all values are denied for list constraints. + // Indicate that enforcement is on for boolean constraints. + ConstraintDefault string `json:"constraintDefault,omitempty"` + + // Description: Detailed description of what this `Constraint` controls + // as well as how and where it is enforced. + Description string `json:"description,omitempty"` + + // DisplayName: The human readable name of the constraint. + DisplayName string `json:"displayName,omitempty"` + + // ListConstraint: Defines this constraint as being a ListConstraint. + ListConstraint *GoogleCloudAssetV1ListConstraint `json:"listConstraint,omitempty"` + + // Name: The unique name of the constraint. Format of the name should be + // * `constraints/{constraint_name}` For example, + // `constraints/compute.disableSerialPortAccess`. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BooleanConstraint") + // to unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be // sent to the server regardless of whether the field is empty or not. // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "SourceNode") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - + // NullFields is a list of field names (e.g. "BooleanConstraint") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudAssetV1Constraint) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAssetV1Constraint + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAssetV1CustomConstraint: The definition of a custom +// constraint. +type GoogleCloudAssetV1CustomConstraint struct { + // ActionType: Allow or deny type. + // + // Possible values: + // "ACTION_TYPE_UNSPECIFIED" - Unspecified. Will results in user + // error. + // "ALLOW" - Allowed action type. + // "DENY" - Deny action type. + ActionType string `json:"actionType,omitempty"` + + // Condition: Organization policy condition/expression. For example: + // `resource.instanceName.matches("[production|test]_.*_(\d)+")'` or, + // `resource.management.auto_upgrade == true` + Condition string `json:"condition,omitempty"` + + // Description: Detailed information about this custom policy + // constraint. + Description string `json:"description,omitempty"` + + // DisplayName: One line display name for the UI. + DisplayName string `json:"displayName,omitempty"` + + // MethodTypes: All the operations being applied for this constraint. + // + // Possible values: + // "METHOD_TYPE_UNSPECIFIED" - Unspecified. Will results in user + // error. + // "CREATE" - Constraint applied when creating the resource. + // "UPDATE" - Constraint applied when updating the resource. + // "DELETE" - Constraint applied when deleting the resource. + MethodTypes []string `json:"methodTypes,omitempty"` + + // Name: Name of the constraint. This is unique within the organization. + // Format of the name should be * + // `organizations/{organization_id}/customConstraints/{custom_constraint_ + // id}` Example : + // "organizations/123/customConstraints/custom.createOnlyE2TypeVms" + Name string `json:"name,omitempty"` + + // ResourceTypes: The Resource Instance type on which this policy + // applies to. Format will be of the form : "/" Example: * + // `compute.googleapis.com/Instance`. + ResourceTypes []string `json:"resourceTypes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActionType") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ActionType") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudAssetV1CustomConstraint) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAssetV1CustomConstraint + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAssetV1Edge: A directional edge. +type GoogleCloudAssetV1Edge struct { + // SourceNode: The source node of the edge. For example, it could be a + // full resource name for a resource node or an email of an identity. + SourceNode string `json:"sourceNode,omitempty"` + + // TargetNode: The target node of the edge. For example, it could be a + // full resource name for a resource node or an email of an identity. + TargetNode string `json:"targetNode,omitempty"` + + // ForceSendFields is a list of field names (e.g. "SourceNode") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "SourceNode") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + func (s *GoogleCloudAssetV1Edge) MarshalJSON() ([]byte, error) { type NoMethod GoogleCloudAssetV1Edge raw := NoMethod(*s) @@ -1668,6 +2180,61 @@ func (s *GoogleCloudAssetV1GcsDestination) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudAssetV1GovernedContainer: The organization/folder/project +// resource governed by organization policies of +// AnalyzeOrgPolicyGovernedContainersRequest.constraint. +type GoogleCloudAssetV1GovernedContainer struct { + // ConsolidatedPolicy: The consolidated organization policy for the + // analyzed resource. The consolidated organization policy is computed + // by merging and evaluating + // AnalyzeOrgPolicyGovernedContainersResponse.GovernedContainer.policy_bu + // ndle. The evaluation will respect the organization policy hierarchy + // rules + // (https://cloud.google.com/resource-manager/docs/organization-policy/understanding-hierarchy). + ConsolidatedPolicy *AnalyzerOrgPolicy `json:"consolidatedPolicy,omitempty"` + + // FullResourceName: The [full resource name] + // (https://cloud.google.com/asset-inventory/docs/resource-name-format) + // of an organization/folder/project resource. + FullResourceName string `json:"fullResourceName,omitempty"` + + // Parent: The [full resource name] + // (https://cloud.google.com/asset-inventory/docs/resource-name-format) + // of the parent of + // AnalyzeOrgPolicyGovernedContainersResponse.GovernedContainer.full_reso + // urce_name. + Parent string `json:"parent,omitempty"` + + // PolicyBundle: The ordered list of all organization policies from the + // AnalyzeOrgPoliciesResponse.OrgPolicyResult.consolidated_policy.attache + // d_resource. to the scope specified in the request. If the constraint + // is defined with default policy, it will also appear in the list. + PolicyBundle []*AnalyzerOrgPolicy `json:"policyBundle,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ConsolidatedPolicy") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ConsolidatedPolicy") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudAssetV1GovernedContainer) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAssetV1GovernedContainer + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudAssetV1Identity: An identity under analysis. type GoogleCloudAssetV1Identity struct { // AnalysisState: The analysis state of this identity. @@ -1742,6 +2309,91 @@ func (s *GoogleCloudAssetV1IdentityList) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudAssetV1ListConstraint: A `Constraint` that allows or +// disallows a list of string values, which are configured by an +// Organization's policy administrator with a `Policy`. +type GoogleCloudAssetV1ListConstraint struct { + // SupportsIn: Indicates whether values grouped into categories can be + // used in `Policy.allowed_values` and `Policy.denied_values`. For + // example, "in:Python" would match any value in the 'Python' group. + SupportsIn bool `json:"supportsIn,omitempty"` + + // SupportsUnder: Indicates whether subtrees of Cloud Resource Manager + // resource hierarchy can be used in `Policy.allowed_values` and + // `Policy.denied_values`. For example, "under:folders/123" would + // match any resource under the 'folders/123' folder. + SupportsUnder bool `json:"supportsUnder,omitempty"` + + // ForceSendFields is a list of field names (e.g. "SupportsIn") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "SupportsIn") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudAssetV1ListConstraint) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAssetV1ListConstraint + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAssetV1QueryAssetsOutputConfigBigQueryDestination: +// BigQuery destination. +type GoogleCloudAssetV1QueryAssetsOutputConfigBigQueryDestination struct { + // Dataset: Required. The BigQuery dataset where the query results will + // be saved. It has the format of + // "projects/{projectId}/datasets/{datasetId}". + Dataset string `json:"dataset,omitempty"` + + // Table: Required. The BigQuery table where the query results will be + // saved. If this table does not exist, a new table with the given name + // will be created. + Table string `json:"table,omitempty"` + + // WriteDisposition: Specifies the action that occurs if the destination + // table or partition already exists. The following values are + // supported: * WRITE_TRUNCATE: If the table or partition already + // exists, BigQuery overwrites the entire table or all the partitions + // data. * WRITE_APPEND: If the table or partition already exists, + // BigQuery appends the data to the table or the latest partition. * + // WRITE_EMPTY: If the table already exists and contains data, a + // 'duplicate' error is returned in the job result. The default value is + // WRITE_EMPTY. + WriteDisposition string `json:"writeDisposition,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Dataset") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Dataset") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudAssetV1QueryAssetsOutputConfigBigQueryDestination) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAssetV1QueryAssetsOutputConfigBigQueryDestination + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudAssetV1Resource: A Google Cloud resource under analysis. type GoogleCloudAssetV1Resource struct { // AnalysisState: The analysis state of this resource. @@ -1774,6 +2426,84 @@ func (s *GoogleCloudAssetV1Resource) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudAssetV1Rule: Represents a rule defined in an organization +// policy +type GoogleCloudAssetV1Rule struct { + // AllowAll: Setting this to true means that all values are allowed. + // This field can be set only in Policies for list constraints. + AllowAll bool `json:"allowAll,omitempty"` + + // Condition: The evaluating condition for this rule. + Condition *Expr `json:"condition,omitempty"` + + // DenyAll: Setting this to true means that all values are denied. This + // field can be set only in Policies for list constraints. + DenyAll bool `json:"denyAll,omitempty"` + + // Enforce: If `true`, then the `Policy` is enforced. If `false`, then + // any configuration is acceptable. This field can be set only in + // Policies for boolean constraints. + Enforce bool `json:"enforce,omitempty"` + + // Values: List of values to be used for this PolicyRule. This field can + // be set only in Policies for list constraints. + Values *GoogleCloudAssetV1StringValues `json:"values,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AllowAll") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AllowAll") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudAssetV1Rule) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAssetV1Rule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAssetV1StringValues: The string values for the list +// constraints. +type GoogleCloudAssetV1StringValues struct { + // AllowedValues: List of values allowed at this resource. + AllowedValues []string `json:"allowedValues,omitempty"` + + // DeniedValues: List of values denied at this resource. + DeniedValues []string `json:"deniedValues,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AllowedValues") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AllowedValues") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudAssetV1StringValues) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAssetV1StringValues + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudAssetV1p7beta1Asset: An asset in Google Cloud. An asset // can be any resource in the Google Cloud resource hierarchy // (https://cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy), @@ -2351,11 +3081,11 @@ type GoogleIdentityAccesscontextmanagerV1AccessLevel struct { // affect behavior. Description string `json:"description,omitempty"` - // Name: Required. Resource name for the Access Level. The `short_name` - // component must begin with a letter and only include alphanumeric and - // '_'. Format: + // Name: Resource name for the `AccessLevel`. Format: // `accessPolicies/{access_policy}/accessLevels/{access_level}`. The - // maximum length of the `access_level` component is 50 characters. + // `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`. Name string `json:"name,omitempty"` // Title: Human readable title. Must be unique within the Policy. @@ -3149,10 +3879,11 @@ type GoogleIdentityAccesscontextmanagerV1ServicePerimeter struct { // not affect behavior. Description string `json:"description,omitempty"` - // Name: Required. Resource name for the ServicePerimeter. The - // `short_name` component must begin with a letter and only include - // alphanumeric and '_'. Format: + // Name: 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`. Name string `json:"name,omitempty"` // PerimeterType: Perimeter type indicator. A single project is allowed @@ -3163,7 +3894,8 @@ type GoogleIdentityAccesscontextmanagerV1ServicePerimeter struct { // must be empty. // // Possible values: - // "PERIMETER_TYPE_REGULAR" - Regular Perimeter. + // "PERIMETER_TYPE_REGULAR" - Regular Perimeter. When no value is + // specified, the perimeter uses this type. // "PERIMETER_TYPE_BRIDGE" - Perimeter Bridge. PerimeterType string `json:"perimeterType,omitempty"` @@ -4220,6 +4952,45 @@ func (s *Options) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// OrgPolicyResult: The organization policy result to the query. +type OrgPolicyResult struct { + // ConsolidatedPolicy: The consolidated organization policy for the + // analyzed resource. The consolidated organization policy is computed + // by merging and evaluating AnalyzeOrgPoliciesResponse.policy_bundle. + // The evaluation will respect the organization policy hierarchy rules + // (https://cloud.google.com/resource-manager/docs/organization-policy/understanding-hierarchy). + ConsolidatedPolicy *AnalyzerOrgPolicy `json:"consolidatedPolicy,omitempty"` + + // PolicyBundle: The ordered list of all organization policies from the + // AnalyzeOrgPoliciesResponse.OrgPolicyResult.consolidated_policy.attache + // d_resource. to the scope specified in the request. If the constraint + // is defined with default policy, it will also appear in the list. + PolicyBundle []*AnalyzerOrgPolicy `json:"policyBundle,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ConsolidatedPolicy") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ConsolidatedPolicy") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *OrgPolicyResult) MarshalJSON() ([]byte, error) { + type NoMethod OrgPolicyResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // OsInfo: Operating system information for the VM. type OsInfo struct { // Architecture: The system architecture of the operating system. @@ -4546,47 +5317,244 @@ func (s *PubsubDestination) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// QueryContent: The query content. -type QueryContent struct { - // IamPolicyAnalysisQuery: An IAM Policy Analysis query, which could be - // used in the AssetService.AnalyzeIamPolicy rpc or the - // AssetService.AnalyzeIamPolicyLongrunning rpc. - IamPolicyAnalysisQuery *IamPolicyAnalysisQuery `json:"iamPolicyAnalysisQuery,omitempty"` +// QueryAssetsOutputConfig: Output configuration query assets. +type QueryAssetsOutputConfig struct { + // BigqueryDestination: BigQuery destination where the query results + // will be saved. + BigqueryDestination *GoogleCloudAssetV1QueryAssetsOutputConfigBigQueryDestination `json:"bigqueryDestination,omitempty"` - // ForceSendFields is a list of field names (e.g. - // "IamPolicyAnalysisQuery") to unconditionally include in API requests. - // By default, fields with empty or default values are omitted from API - // requests. However, any non-pointer, non-interface field appearing in - // ForceSendFields will be sent to the server regardless of whether the - // field is empty or not. This may be used to include empty fields in - // Patch requests. + // ForceSendFields is a list of field names (e.g. "BigqueryDestination") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "IamPolicyAnalysisQuery") - // to include in API requests with the JSON null value. By default, - // fields with empty values are omitted from API requests. However, any - // field with an empty value appearing in NullFields will be sent to the + // NullFields is a list of field names (e.g. "BigqueryDestination") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the // server as null. It is an error if a field in this list has a // non-empty value. This may be used to include null fields in Patch // requests. NullFields []string `json:"-"` } -func (s *QueryContent) MarshalJSON() ([]byte, error) { - type NoMethod QueryContent +func (s *QueryAssetsOutputConfig) MarshalJSON() ([]byte, error) { + type NoMethod QueryAssetsOutputConfig raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// RelatedAsset: An asset identifier in Google Cloud which contains its -// name, type and ancestors. An asset can be any resource in the Google -// Cloud resource hierarchy -// (https://cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy), -// a resource outside the Google Cloud resource hierarchy (such as -// Google Kubernetes Engine clusters and objects), or a policy (e.g. -// Cloud IAM policy). See Supported asset types -// (https://cloud.google.com/asset-inventory/docs/supported-asset-types) -// for more information. +// QueryAssetsRequest: QueryAssets request. +type QueryAssetsRequest struct { + // JobReference: Optional. Reference to the query job, which is from the + // `QueryAssetsResponse` of previous `QueryAssets` call. + JobReference string `json:"jobReference,omitempty"` + + // OutputConfig: Optional. Destination where the query results will be + // saved. When this field is specified, the query results won't be saved + // in the [QueryAssetsResponse.query_result]. Instead + // [QueryAssetsResponse.output_config] will be set. Meanwhile, + // [QueryAssetsResponse.job_reference] will be set and can be used to + // check the status of the query job when passed to a following + // [QueryAssets] API call. + OutputConfig *QueryAssetsOutputConfig `json:"outputConfig,omitempty"` + + // PageSize: Optional. The maximum number of rows to return in the + // results. Responses are limited to 10 MB and 1000 rows. By default, + // the maximum row count is 1000. When the byte or row count limit is + // reached, the rest of the query results will be paginated. The field + // will be ignored when [output_config] is specified. + PageSize int64 `json:"pageSize,omitempty"` + + // PageToken: Optional. A page token received from previous + // `QueryAssets`. The field will be ignored when [output_config] is + // specified. + PageToken string `json:"pageToken,omitempty"` + + // ReadTime: Optional. Queries cloud assets as they appeared at the + // specified point in time. + ReadTime string `json:"readTime,omitempty"` + + // ReadTimeWindow: Optional. [start_time] is required. [start_time] must + // be less than [end_time] Defaults [end_time] to now if [start_time] is + // set and [end_time] isn't. Maximum permitted time range is 7 days. + ReadTimeWindow *TimeWindow `json:"readTimeWindow,omitempty"` + + // Statement: Optional. A SQL statement that's compatible with BigQuery + // Standard SQL + // (http://cloud/bigquery/docs/reference/standard-sql/enabling-standard-sql). + Statement string `json:"statement,omitempty"` + + // Timeout: Optional. Specifies the maximum amount of time that the + // client is willing to wait for the query to complete. By default, this + // limit is 5 min for the first query, and 1 minute for the following + // queries. If the query is complete, the `done` field in the + // `QueryAssetsResponse` is true, otherwise false. Like BigQuery + // jobs.query API + // (https://cloud.google.com/bigquery/docs/reference/rest/v2/jobs/query#queryrequest) + // The call is not guaranteed to wait for the specified timeout; it + // typically returns after around 200 seconds (200,000 milliseconds), + // even if the query is not complete. The field will be ignored when + // [output_config] is specified. + Timeout string `json:"timeout,omitempty"` + + // ForceSendFields is a list of field names (e.g. "JobReference") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "JobReference") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *QueryAssetsRequest) MarshalJSON() ([]byte, error) { + type NoMethod QueryAssetsRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// QueryAssetsResponse: QueryAssets response. +type QueryAssetsResponse struct { + // Done: The query response, which can be either an `error` or a valid + // `response`. If `done` == `false` and the query result is being saved + // in a output, the output_config field will be set. If `done` == + // `true`, exactly one of `error`, `query_result` or `output_config` + // will be set. + Done bool `json:"done,omitempty"` + + // Error: Error status. + Error *Status `json:"error,omitempty"` + + // JobReference: Reference to a query job. + JobReference string `json:"jobReference,omitempty"` + + // OutputConfig: Output configuration which indicates instead of being + // returned in API response on the fly, the query result will be saved + // in a specific output. + OutputConfig *QueryAssetsOutputConfig `json:"outputConfig,omitempty"` + + // QueryResult: Result of the query. + QueryResult *QueryResult `json:"queryResult,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Done") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Done") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *QueryAssetsResponse) MarshalJSON() ([]byte, error) { + type NoMethod QueryAssetsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// QueryContent: The query content. +type QueryContent struct { + // IamPolicyAnalysisQuery: An IAM Policy Analysis query, which could be + // used in the AssetService.AnalyzeIamPolicy rpc or the + // AssetService.AnalyzeIamPolicyLongrunning rpc. + IamPolicyAnalysisQuery *IamPolicyAnalysisQuery `json:"iamPolicyAnalysisQuery,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "IamPolicyAnalysisQuery") to unconditionally include in API requests. + // By default, fields with empty or default values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "IamPolicyAnalysisQuery") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *QueryContent) MarshalJSON() ([]byte, error) { + type NoMethod QueryContent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// QueryResult: Execution results of the query. The result is formatted +// as rows represented by BigQuery compatible [schema]. When pagination +// is necessary, it will contains the page token to retrieve the results +// of following pages. +type QueryResult struct { + // NextPageToken: Token to retrieve the next page of the results. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Rows: Each row hold a query result in the format of `Struct`. + Rows []googleapi.RawMessage `json:"rows,omitempty"` + + // Schema: Describes the format of the [rows]. + Schema *TableSchema `json:"schema,omitempty"` + + // TotalRows: Total rows of the whole query results. + TotalRows int64 `json:"totalRows,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NextPageToken") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *QueryResult) MarshalJSON() ([]byte, error) { + type NoMethod QueryResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// RelatedAsset: An asset identifier in Google Cloud which contains its +// name, type and ancestors. An asset can be any resource in the Google +// Cloud resource hierarchy +// (https://cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy), +// a resource outside the Google Cloud resource hierarchy (such as +// Google Kubernetes Engine clusters and objects), or a policy (e.g. +// Cloud IAM policy). See Supported asset types +// (https://cloud.google.com/asset-inventory/docs/supported-asset-types) +// for more information. type RelatedAsset struct { // Ancestors: The ancestors of an asset in Google Cloud resource // hierarchy @@ -5377,6 +6345,78 @@ func (s *Status) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// TableFieldSchema: A field in TableSchema. +type TableFieldSchema struct { + // Field: The field name. The name must contain only letters (a-z, A-Z), + // numbers (0-9), or underscores (_), and must start with a letter or + // underscore. The maximum length is 128 characters. + Field string `json:"field,omitempty"` + + // Fields: Describes the nested schema fields if the type property is + // set to RECORD. + Fields []*TableFieldSchema `json:"fields,omitempty"` + + // Mode: The field mode. Possible values include NULLABLE, REQUIRED and + // REPEATED. The default value is NULLABLE. + Mode string `json:"mode,omitempty"` + + // Type: The field data type. Possible values include * STRING * BYTES * + // INTEGER * FLOAT * BOOLEAN * TIMESTAMP * DATE * TIME * DATETIME * + // GEOGRAPHY, * NUMERIC, * BIGNUMERIC, * RECORD (where RECORD indicates + // that the field contains a nested schema). + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Field") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Field") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TableFieldSchema) MarshalJSON() ([]byte, error) { + type NoMethod TableFieldSchema + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// TableSchema: BigQuery Compatible table schema. +type TableSchema struct { + // Fields: Describes the fields in a table. + Fields []*TableFieldSchema `json:"fields,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Fields") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Fields") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TableSchema) MarshalJSON() ([]byte, error) { + type NoMethod TableSchema + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // TemporalAsset: An asset in Google Cloud and its temporal metadata, // including the time window when it was observed and its status during // that window. @@ -8754,106 +9794,69 @@ func (c *V1AnalyzeMoveCall) Do(opts ...googleapi.CallOption) (*AnalyzeMoveRespon } -// method id "cloudasset.batchGetAssetsHistory": +// method id "cloudasset.analyzeOrgPolicies": -type V1BatchGetAssetsHistoryCall struct { +type V1AnalyzeOrgPoliciesCall struct { s *Service - parent string + scope string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } -// BatchGetAssetsHistory: Batch gets the update history of assets that -// overlap a time window. For IAM_POLICY content, this API outputs -// history when the asset and its attached IAM POLICY both exist. This -// can create gaps in the output history. Otherwise, this API outputs -// history with asset in both non-delete or deleted status. If a -// specified asset does not exist, this API returns an INVALID_ARGUMENT -// error. +// AnalyzeOrgPolicies: Analyzes organization policies under a scope. // -// - parent: The relative name of the root asset. It can only be an -// organization number (such as "organizations/123"), a project ID -// (such as "projects/my-project-id")", or a project number (such as -// "projects/12345"). -func (r *V1Service) BatchGetAssetsHistory(parent string) *V1BatchGetAssetsHistoryCall { - c := &V1BatchGetAssetsHistoryCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.parent = parent - return c -} - -// AssetNames sets the optional parameter "assetNames": A list of the -// full names of the assets. See: -// https://cloud.google.com/asset-inventory/docs/resource-name-format -// Example: -// `//compute.googleapis.com/projects/my_project_123/zones/zone1/instance -// s/instance1`. The request becomes a no-op if the asset name list is -// empty, and the max size of the asset name list is 100 in one request. -func (c *V1BatchGetAssetsHistoryCall) AssetNames(assetNames ...string) *V1BatchGetAssetsHistoryCall { - c.urlParams_.SetMulti("assetNames", append([]string{}, assetNames...)) +// - scope: The organization to scope the request. Only organization +// policies within the scope will be analyzed. * +// organizations/{ORGANIZATION_NUMBER} (e.g., "organizations/123456"). +func (r *V1Service) AnalyzeOrgPolicies(scope string) *V1AnalyzeOrgPoliciesCall { + c := &V1AnalyzeOrgPoliciesCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.scope = scope return c } -// ContentType sets the optional parameter "contentType": The content -// type. -// -// Possible values: -// -// "CONTENT_TYPE_UNSPECIFIED" - Unspecified content type. -// "RESOURCE" - Resource metadata. -// "IAM_POLICY" - The actual IAM policy set on a resource. -// "ORG_POLICY" - The Cloud Organization Policy set on an asset. -// "ACCESS_POLICY" - The Cloud Access context manager Policy set on an -// -// asset. -// -// "OS_INVENTORY" - The runtime OS Inventory information. -// "RELATIONSHIP" - The related resources. -func (c *V1BatchGetAssetsHistoryCall) ContentType(contentType string) *V1BatchGetAssetsHistoryCall { - c.urlParams_.Set("contentType", contentType) +// Constraint sets the optional parameter "constraint": Required. The +// name of the constraint to analyze organization policies for. The +// response only contains analyzed organization policies for the +// provided constraint. +func (c *V1AnalyzeOrgPoliciesCall) Constraint(constraint string) *V1AnalyzeOrgPoliciesCall { + c.urlParams_.Set("constraint", constraint) return c } -// ReadTimeWindowEndTime sets the optional parameter -// "readTimeWindow.endTime": End time of the time window (inclusive). If -// not specified, the current timestamp is used instead. -func (c *V1BatchGetAssetsHistoryCall) ReadTimeWindowEndTime(readTimeWindowEndTime string) *V1BatchGetAssetsHistoryCall { - c.urlParams_.Set("readTimeWindow.endTime", readTimeWindowEndTime) +// Filter sets the optional parameter "filter": The expression to filter +// AnalyzeOrgPoliciesResponse.org_policy_results. The only supported +// field is `consolidated_policy.attached_resource`, and the only +// supported operator is `=`. Example: +// consolidated_policy.attached_resource="//cloudresourcemanager.googleap +// is.com/folders/001" will return the org policy results +// of"folders/001". +func (c *V1AnalyzeOrgPoliciesCall) Filter(filter string) *V1AnalyzeOrgPoliciesCall { + c.urlParams_.Set("filter", filter) return c } -// ReadTimeWindowStartTime sets the optional parameter -// "readTimeWindow.startTime": Start time of the time window -// (exclusive). -func (c *V1BatchGetAssetsHistoryCall) ReadTimeWindowStartTime(readTimeWindowStartTime string) *V1BatchGetAssetsHistoryCall { - c.urlParams_.Set("readTimeWindow.startTime", readTimeWindowStartTime) +// PageSize sets the optional parameter "pageSize": The maximum number +// of items to return per page. If unspecified, +// AnalyzeOrgPoliciesResponse.org_policy_results will contain 20 items +// with a maximum of 200. +func (c *V1AnalyzeOrgPoliciesCall) PageSize(pageSize int64) *V1AnalyzeOrgPoliciesCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c } -// RelationshipTypes sets the optional parameter "relationshipTypes": A -// list of relationship types to output, for example: -// `INSTANCE_TO_INSTANCEGROUP`. This field should only be specified if -// content_type=RELATIONSHIP. * If specified: it outputs specified -// relationships' history on the [asset_names]. It returns an error if -// any of the [relationship_types] doesn't belong to the supported -// relationship types of the [asset_names] or if any of the -// [asset_names]'s types doesn't belong to the source types of the -// [relationship_types]. * Otherwise: it outputs the supported -// relationships' history on the [asset_names] or returns an error if -// any of the [asset_names]'s types has no relationship support. See -// Introduction to Cloud Asset Inventory -// (https://cloud.google.com/asset-inventory/docs/overview) for all -// supported asset types and relationship types. -func (c *V1BatchGetAssetsHistoryCall) RelationshipTypes(relationshipTypes ...string) *V1BatchGetAssetsHistoryCall { - c.urlParams_.SetMulti("relationshipTypes", append([]string{}, relationshipTypes...)) +// PageToken sets the optional parameter "pageToken": The pagination +// token to retrieve the next page. +func (c *V1AnalyzeOrgPoliciesCall) PageToken(pageToken string) *V1AnalyzeOrgPoliciesCall { + c.urlParams_.Set("pageToken", pageToken) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. -func (c *V1BatchGetAssetsHistoryCall) Fields(s ...googleapi.Field) *V1BatchGetAssetsHistoryCall { +func (c *V1AnalyzeOrgPoliciesCall) Fields(s ...googleapi.Field) *V1AnalyzeOrgPoliciesCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -8863,7 +9866,7 @@ func (c *V1BatchGetAssetsHistoryCall) Fields(s ...googleapi.Field) *V1BatchGetAs // getting updates only after the object has changed since the last // request. Use googleapi.IsNotModified to check whether the response // error from Do is the result of In-None-Match. -func (c *V1BatchGetAssetsHistoryCall) IfNoneMatch(entityTag string) *V1BatchGetAssetsHistoryCall { +func (c *V1AnalyzeOrgPoliciesCall) IfNoneMatch(entityTag string) *V1AnalyzeOrgPoliciesCall { c.ifNoneMatch_ = entityTag return c } @@ -8871,21 +9874,21 @@ func (c *V1BatchGetAssetsHistoryCall) IfNoneMatch(entityTag string) *V1BatchGetA // Context sets the context to be used in this call's Do method. Any // pending HTTP request will be aborted if the provided context is // canceled. -func (c *V1BatchGetAssetsHistoryCall) Context(ctx context.Context) *V1BatchGetAssetsHistoryCall { +func (c *V1AnalyzeOrgPoliciesCall) Context(ctx context.Context) *V1AnalyzeOrgPoliciesCall { c.ctx_ = ctx return c } // Header returns an http.Header that can be modified by the caller to // add HTTP headers to the request. -func (c *V1BatchGetAssetsHistoryCall) Header() http.Header { +func (c *V1AnalyzeOrgPoliciesCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *V1BatchGetAssetsHistoryCall) doRequest(alt string) (*http.Response, error) { +func (c *V1AnalyzeOrgPoliciesCall) doRequest(alt string) (*http.Response, error) { reqHeaders := make(http.Header) reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) for k, v := range c.header_ { @@ -8898,7 +9901,7 @@ func (c *V1BatchGetAssetsHistoryCall) doRequest(alt string) (*http.Response, err var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}:batchGetAssetsHistory") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+scope}:analyzeOrgPolicies") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { @@ -8906,13 +9909,754 @@ func (c *V1BatchGetAssetsHistoryCall) doRequest(alt string) (*http.Response, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "parent": c.parent, + "scope": c.scope, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "cloudasset.batchGetAssetsHistory" call. -// Exactly one of *BatchGetAssetsHistoryResponse or error will be +// Do executes the "cloudasset.analyzeOrgPolicies" call. +// Exactly one of *AnalyzeOrgPoliciesResponse or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *AnalyzeOrgPoliciesResponse.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *V1AnalyzeOrgPoliciesCall) Do(opts ...googleapi.CallOption) (*AnalyzeOrgPoliciesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &AnalyzeOrgPoliciesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Analyzes organization policies under a scope.", + // "flatPath": "v1/{v1Id}/{v1Id1}:analyzeOrgPolicies", + // "httpMethod": "GET", + // "id": "cloudasset.analyzeOrgPolicies", + // "parameterOrder": [ + // "scope" + // ], + // "parameters": { + // "constraint": { + // "description": "Required. The name of the constraint to analyze organization policies for. The response only contains analyzed organization policies for the provided constraint.", + // "location": "query", + // "type": "string" + // }, + // "filter": { + // "description": "The expression to filter AnalyzeOrgPoliciesResponse.org_policy_results. The only supported field is `consolidated_policy.attached_resource`, and the only supported operator is `=`. Example: consolidated_policy.attached_resource=\"//cloudresourcemanager.googleapis.com/folders/001\" will return the org policy results of\"folders/001\".", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "The maximum number of items to return per page. If unspecified, AnalyzeOrgPoliciesResponse.org_policy_results will contain 20 items with a maximum of 200.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The pagination token to retrieve the next page.", + // "location": "query", + // "type": "string" + // }, + // "scope": { + // "description": "Required. The organization to scope the request. Only organization policies within the scope will be analyzed. * organizations/{ORGANIZATION_NUMBER} (e.g., \"organizations/123456\")", + // "location": "path", + // "pattern": "^[^/]+/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+scope}:analyzeOrgPolicies", + // "response": { + // "$ref": "AnalyzeOrgPoliciesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *V1AnalyzeOrgPoliciesCall) Pages(ctx context.Context, f func(*AnalyzeOrgPoliciesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "cloudasset.analyzeOrgPolicyGovernedAssets": + +type V1AnalyzeOrgPolicyGovernedAssetsCall struct { + s *Service + scope string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// AnalyzeOrgPolicyGovernedAssets: Analyzes organization policies +// governed assets (GCP resources or policies) under a scope. This RPC +// supports custom constraints and the following 10 canned constraints: +// * storage.uniformBucketLevelAccess * +// iam.disableServiceAccountKeyCreation * iam.allowedPolicyMemberDomains +// * compute.vmExternalIpAccess * +// appengine.enforceServiceAccountActAsCheck * gcp.resourceLocations * +// compute.trustedImageProjects * compute.skipDefaultNetworkCreation * +// compute.requireOsLogin * compute.disableNestedVirtualization This RPC +// only returns either: * resources of types supported by searchable +// asset types +// (https://cloud.google.com/asset-inventory/docs/supported-asset-types#searchable_asset_types), +// or * IAM policies. +// +// - scope: The organization to scope the request. Only organization +// policies within the scope will be analyzed. The output assets will +// also be limited to the ones governed by those in-scope organization +// policies. * organizations/{ORGANIZATION_NUMBER} (e.g., +// "organizations/123456"). +func (r *V1Service) AnalyzeOrgPolicyGovernedAssets(scope string) *V1AnalyzeOrgPolicyGovernedAssetsCall { + c := &V1AnalyzeOrgPolicyGovernedAssetsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.scope = scope + return c +} + +// Constraint sets the optional parameter "constraint": Required. The +// name of the constraint to analyze governed assets for. The analysis +// only contains analyzed organization policies for the provided +// constraint. +func (c *V1AnalyzeOrgPolicyGovernedAssetsCall) Constraint(constraint string) *V1AnalyzeOrgPolicyGovernedAssetsCall { + c.urlParams_.Set("constraint", constraint) + return c +} + +// Filter sets the optional parameter "filter": The expression to filter +// the governed assets in result. The only supported fields for governed +// resources are `governed_resource.project` and +// `governed_resource.folders`. The only supported fields for governed +// iam policies are `governed_iam_policy.project` and +// `governed_iam_policy.folders`. The only supported operator is `=`. +// Example 1: governed_resource.project="projects/12345678" filter will +// return all governed resources under projects/12345678 including the +// project ifself, if applicable. Example 2: +// governed_iam_policy.folders="folders/12345678" filter will return all +// governed iam policies under folders/12345678, if applicable. +func (c *V1AnalyzeOrgPolicyGovernedAssetsCall) Filter(filter string) *V1AnalyzeOrgPolicyGovernedAssetsCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of items to return per page. If unspecified, +// AnalyzeOrgPolicyGovernedAssetsResponse.governed_assets will contain +// 100 items with a maximum of 200. +func (c *V1AnalyzeOrgPolicyGovernedAssetsCall) PageSize(pageSize int64) *V1AnalyzeOrgPolicyGovernedAssetsCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The pagination +// token to retrieve the next page. +func (c *V1AnalyzeOrgPolicyGovernedAssetsCall) PageToken(pageToken string) *V1AnalyzeOrgPolicyGovernedAssetsCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *V1AnalyzeOrgPolicyGovernedAssetsCall) Fields(s ...googleapi.Field) *V1AnalyzeOrgPolicyGovernedAssetsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *V1AnalyzeOrgPolicyGovernedAssetsCall) IfNoneMatch(entityTag string) *V1AnalyzeOrgPolicyGovernedAssetsCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *V1AnalyzeOrgPolicyGovernedAssetsCall) Context(ctx context.Context) *V1AnalyzeOrgPolicyGovernedAssetsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *V1AnalyzeOrgPolicyGovernedAssetsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *V1AnalyzeOrgPolicyGovernedAssetsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+scope}:analyzeOrgPolicyGovernedAssets") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "scope": c.scope, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudasset.analyzeOrgPolicyGovernedAssets" call. +// Exactly one of *AnalyzeOrgPolicyGovernedAssetsResponse or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *AnalyzeOrgPolicyGovernedAssetsResponse.ServerResponse.Header or (if +// a response was returned at all) in error.(*googleapi.Error).Header. +// Use googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *V1AnalyzeOrgPolicyGovernedAssetsCall) Do(opts ...googleapi.CallOption) (*AnalyzeOrgPolicyGovernedAssetsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &AnalyzeOrgPolicyGovernedAssetsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Analyzes organization policies governed assets (GCP resources or policies) under a scope. This RPC supports custom constraints and the following 10 canned constraints: * storage.uniformBucketLevelAccess * iam.disableServiceAccountKeyCreation * iam.allowedPolicyMemberDomains * compute.vmExternalIpAccess * appengine.enforceServiceAccountActAsCheck * gcp.resourceLocations * compute.trustedImageProjects * compute.skipDefaultNetworkCreation * compute.requireOsLogin * compute.disableNestedVirtualization This RPC only returns either: * resources of types supported by [searchable asset types](https://cloud.google.com/asset-inventory/docs/supported-asset-types#searchable_asset_types), or * IAM policies.", + // "flatPath": "v1/{v1Id}/{v1Id1}:analyzeOrgPolicyGovernedAssets", + // "httpMethod": "GET", + // "id": "cloudasset.analyzeOrgPolicyGovernedAssets", + // "parameterOrder": [ + // "scope" + // ], + // "parameters": { + // "constraint": { + // "description": "Required. The name of the constraint to analyze governed assets for. The analysis only contains analyzed organization policies for the provided constraint.", + // "location": "query", + // "type": "string" + // }, + // "filter": { + // "description": "The expression to filter the governed assets in result. The only supported fields for governed resources are `governed_resource.project` and `governed_resource.folders`. The only supported fields for governed iam policies are `governed_iam_policy.project` and `governed_iam_policy.folders`. The only supported operator is `=`. Example 1: governed_resource.project=\"projects/12345678\" filter will return all governed resources under projects/12345678 including the project ifself, if applicable. Example 2: governed_iam_policy.folders=\"folders/12345678\" filter will return all governed iam policies under folders/12345678, if applicable.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "The maximum number of items to return per page. If unspecified, AnalyzeOrgPolicyGovernedAssetsResponse.governed_assets will contain 100 items with a maximum of 200.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The pagination token to retrieve the next page.", + // "location": "query", + // "type": "string" + // }, + // "scope": { + // "description": "Required. The organization to scope the request. Only organization policies within the scope will be analyzed. The output assets will also be limited to the ones governed by those in-scope organization policies. * organizations/{ORGANIZATION_NUMBER} (e.g., \"organizations/123456\")", + // "location": "path", + // "pattern": "^[^/]+/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+scope}:analyzeOrgPolicyGovernedAssets", + // "response": { + // "$ref": "AnalyzeOrgPolicyGovernedAssetsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *V1AnalyzeOrgPolicyGovernedAssetsCall) Pages(ctx context.Context, f func(*AnalyzeOrgPolicyGovernedAssetsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "cloudasset.analyzeOrgPolicyGovernedContainers": + +type V1AnalyzeOrgPolicyGovernedContainersCall struct { + s *Service + scope string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// AnalyzeOrgPolicyGovernedContainers: Analyzes organization policies +// governed containers (projects, folders or organization) under a +// scope. +// +// - scope: The organization to scope the request. Only organization +// policies within the scope will be analyzed. The output containers +// will also be limited to the ones governed by those in-scope +// organization policies. * organizations/{ORGANIZATION_NUMBER} (e.g., +// "organizations/123456"). +func (r *V1Service) AnalyzeOrgPolicyGovernedContainers(scope string) *V1AnalyzeOrgPolicyGovernedContainersCall { + c := &V1AnalyzeOrgPolicyGovernedContainersCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.scope = scope + return c +} + +// Constraint sets the optional parameter "constraint": Required. The +// name of the constraint to analyze governed containers for. The +// analysis only contains organization policies for the provided +// constraint. +func (c *V1AnalyzeOrgPolicyGovernedContainersCall) Constraint(constraint string) *V1AnalyzeOrgPolicyGovernedContainersCall { + c.urlParams_.Set("constraint", constraint) + return c +} + +// Filter sets the optional parameter "filter": The expression to filter +// the governed containers in result. The only supported field is +// `parent`, and the only supported operator is `=`. Example: +// parent="//cloudresourcemanager.googleapis.com/folders/001" will +// return all containers under "folders/001". +func (c *V1AnalyzeOrgPolicyGovernedContainersCall) Filter(filter string) *V1AnalyzeOrgPolicyGovernedContainersCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of items to return per page. If unspecified, +// AnalyzeOrgPolicyGovernedContainersResponse.governed_containers will +// contain 100 items with a maximum of 200. +func (c *V1AnalyzeOrgPolicyGovernedContainersCall) PageSize(pageSize int64) *V1AnalyzeOrgPolicyGovernedContainersCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The pagination +// token to retrieve the next page. +func (c *V1AnalyzeOrgPolicyGovernedContainersCall) PageToken(pageToken string) *V1AnalyzeOrgPolicyGovernedContainersCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *V1AnalyzeOrgPolicyGovernedContainersCall) Fields(s ...googleapi.Field) *V1AnalyzeOrgPolicyGovernedContainersCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *V1AnalyzeOrgPolicyGovernedContainersCall) IfNoneMatch(entityTag string) *V1AnalyzeOrgPolicyGovernedContainersCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *V1AnalyzeOrgPolicyGovernedContainersCall) Context(ctx context.Context) *V1AnalyzeOrgPolicyGovernedContainersCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *V1AnalyzeOrgPolicyGovernedContainersCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *V1AnalyzeOrgPolicyGovernedContainersCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+scope}:analyzeOrgPolicyGovernedContainers") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "scope": c.scope, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudasset.analyzeOrgPolicyGovernedContainers" call. +// Exactly one of *AnalyzeOrgPolicyGovernedContainersResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *AnalyzeOrgPolicyGovernedContainersResponse.ServerResponse.Header or +// (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *V1AnalyzeOrgPolicyGovernedContainersCall) Do(opts ...googleapi.CallOption) (*AnalyzeOrgPolicyGovernedContainersResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &AnalyzeOrgPolicyGovernedContainersResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Analyzes organization policies governed containers (projects, folders or organization) under a scope.", + // "flatPath": "v1/{v1Id}/{v1Id1}:analyzeOrgPolicyGovernedContainers", + // "httpMethod": "GET", + // "id": "cloudasset.analyzeOrgPolicyGovernedContainers", + // "parameterOrder": [ + // "scope" + // ], + // "parameters": { + // "constraint": { + // "description": "Required. The name of the constraint to analyze governed containers for. The analysis only contains organization policies for the provided constraint.", + // "location": "query", + // "type": "string" + // }, + // "filter": { + // "description": "The expression to filter the governed containers in result. The only supported field is `parent`, and the only supported operator is `=`. Example: parent=\"//cloudresourcemanager.googleapis.com/folders/001\" will return all containers under \"folders/001\".", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "The maximum number of items to return per page. If unspecified, AnalyzeOrgPolicyGovernedContainersResponse.governed_containers will contain 100 items with a maximum of 200.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The pagination token to retrieve the next page.", + // "location": "query", + // "type": "string" + // }, + // "scope": { + // "description": "Required. The organization to scope the request. Only organization policies within the scope will be analyzed. The output containers will also be limited to the ones governed by those in-scope organization policies. * organizations/{ORGANIZATION_NUMBER} (e.g., \"organizations/123456\")", + // "location": "path", + // "pattern": "^[^/]+/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+scope}:analyzeOrgPolicyGovernedContainers", + // "response": { + // "$ref": "AnalyzeOrgPolicyGovernedContainersResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *V1AnalyzeOrgPolicyGovernedContainersCall) Pages(ctx context.Context, f func(*AnalyzeOrgPolicyGovernedContainersResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "cloudasset.batchGetAssetsHistory": + +type V1BatchGetAssetsHistoryCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// BatchGetAssetsHistory: Batch gets the update history of assets that +// overlap a time window. For IAM_POLICY content, this API outputs +// history when the asset and its attached IAM POLICY both exist. This +// can create gaps in the output history. Otherwise, this API outputs +// history with asset in both non-delete or deleted status. If a +// specified asset does not exist, this API returns an INVALID_ARGUMENT +// error. +// +// - parent: The relative name of the root asset. It can only be an +// organization number (such as "organizations/123"), a project ID +// (such as "projects/my-project-id")", or a project number (such as +// "projects/12345"). +func (r *V1Service) BatchGetAssetsHistory(parent string) *V1BatchGetAssetsHistoryCall { + c := &V1BatchGetAssetsHistoryCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// AssetNames sets the optional parameter "assetNames": A list of the +// full names of the assets. See: +// https://cloud.google.com/asset-inventory/docs/resource-name-format +// Example: +// `//compute.googleapis.com/projects/my_project_123/zones/zone1/instance +// s/instance1`. The request becomes a no-op if the asset name list is +// empty, and the max size of the asset name list is 100 in one request. +func (c *V1BatchGetAssetsHistoryCall) AssetNames(assetNames ...string) *V1BatchGetAssetsHistoryCall { + c.urlParams_.SetMulti("assetNames", append([]string{}, assetNames...)) + return c +} + +// ContentType sets the optional parameter "contentType": The content +// type. +// +// Possible values: +// +// "CONTENT_TYPE_UNSPECIFIED" - Unspecified content type. +// "RESOURCE" - Resource metadata. +// "IAM_POLICY" - The actual IAM policy set on a resource. +// "ORG_POLICY" - The Cloud Organization Policy set on an asset. +// "ACCESS_POLICY" - The Cloud Access context manager Policy set on an +// +// asset. +// +// "OS_INVENTORY" - The runtime OS Inventory information. +// "RELATIONSHIP" - The related resources. +func (c *V1BatchGetAssetsHistoryCall) ContentType(contentType string) *V1BatchGetAssetsHistoryCall { + c.urlParams_.Set("contentType", contentType) + return c +} + +// ReadTimeWindowEndTime sets the optional parameter +// "readTimeWindow.endTime": End time of the time window (inclusive). If +// not specified, the current timestamp is used instead. +func (c *V1BatchGetAssetsHistoryCall) ReadTimeWindowEndTime(readTimeWindowEndTime string) *V1BatchGetAssetsHistoryCall { + c.urlParams_.Set("readTimeWindow.endTime", readTimeWindowEndTime) + return c +} + +// ReadTimeWindowStartTime sets the optional parameter +// "readTimeWindow.startTime": Start time of the time window +// (exclusive). +func (c *V1BatchGetAssetsHistoryCall) ReadTimeWindowStartTime(readTimeWindowStartTime string) *V1BatchGetAssetsHistoryCall { + c.urlParams_.Set("readTimeWindow.startTime", readTimeWindowStartTime) + return c +} + +// RelationshipTypes sets the optional parameter "relationshipTypes": A +// list of relationship types to output, for example: +// `INSTANCE_TO_INSTANCEGROUP`. This field should only be specified if +// content_type=RELATIONSHIP. * If specified: it outputs specified +// relationships' history on the [asset_names]. It returns an error if +// any of the [relationship_types] doesn't belong to the supported +// relationship types of the [asset_names] or if any of the +// [asset_names]'s types doesn't belong to the source types of the +// [relationship_types]. * Otherwise: it outputs the supported +// relationships' history on the [asset_names] or returns an error if +// any of the [asset_names]'s types has no relationship support. See +// Introduction to Cloud Asset Inventory +// (https://cloud.google.com/asset-inventory/docs/overview) for all +// supported asset types and relationship types. +func (c *V1BatchGetAssetsHistoryCall) RelationshipTypes(relationshipTypes ...string) *V1BatchGetAssetsHistoryCall { + c.urlParams_.SetMulti("relationshipTypes", append([]string{}, relationshipTypes...)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *V1BatchGetAssetsHistoryCall) Fields(s ...googleapi.Field) *V1BatchGetAssetsHistoryCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *V1BatchGetAssetsHistoryCall) IfNoneMatch(entityTag string) *V1BatchGetAssetsHistoryCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *V1BatchGetAssetsHistoryCall) Context(ctx context.Context) *V1BatchGetAssetsHistoryCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *V1BatchGetAssetsHistoryCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *V1BatchGetAssetsHistoryCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}:batchGetAssetsHistory") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudasset.batchGetAssetsHistory" call. +// Exactly one of *BatchGetAssetsHistoryResponse or error will be // non-nil. Any non-2xx status code is an error. Response headers are in // either *BatchGetAssetsHistoryResponse.ServerResponse.Header or (if a // response was returned at all) in error.(*googleapi.Error).Header. Use @@ -9178,6 +10922,162 @@ func (c *V1ExportAssetsCall) Do(opts ...googleapi.CallOption) (*Operation, error } +// method id "cloudasset.queryAssets": + +type V1QueryAssetsCall struct { + s *Service + parent string + queryassetsrequest *QueryAssetsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// QueryAssets: Issue a job that queries assets using a SQL statement +// compatible with BigQuery Standard SQL +// (http://cloud/bigquery/docs/reference/standard-sql/enabling-standard-sql). +// If the query execution finishes within timeout and there's no +// pagination, the full query results will be returned in the +// `QueryAssetsResponse`. Otherwise, full query results can be obtained +// by issuing extra requests with the `job_reference` from the a +// previous `QueryAssets` call. Note, the query result has approximately +// 10 GB limitation enforced by BigQuery +// https://cloud.google.com/bigquery/docs/best-practices-performance-output, +// queries return larger results will result in errors. +// +// - parent: The relative name of the root asset. This can only be an +// organization number (such as "organizations/123"), a project ID +// (such as "projects/my-project-id"), or a project number (such as +// "projects/12345"), or a folder number (such as "folders/123"). Only +// assets belonging to the `parent` will be returned. +func (r *V1Service) QueryAssets(parent string, queryassetsrequest *QueryAssetsRequest) *V1QueryAssetsCall { + c := &V1QueryAssetsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.queryassetsrequest = queryassetsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *V1QueryAssetsCall) Fields(s ...googleapi.Field) *V1QueryAssetsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *V1QueryAssetsCall) Context(ctx context.Context) *V1QueryAssetsCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *V1QueryAssetsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *V1QueryAssetsCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.queryassetsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}:queryAssets") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudasset.queryAssets" call. +// Exactly one of *QueryAssetsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *QueryAssetsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *V1QueryAssetsCall) Do(opts ...googleapi.CallOption) (*QueryAssetsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &QueryAssetsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Issue a job that queries assets using a SQL statement compatible with [BigQuery Standard SQL](http://cloud/bigquery/docs/reference/standard-sql/enabling-standard-sql). If the query execution finishes within timeout and there's no pagination, the full query results will be returned in the `QueryAssetsResponse`. Otherwise, full query results can be obtained by issuing extra requests with the `job_reference` from the a previous `QueryAssets` call. Note, the query result has approximately 10 GB limitation enforced by BigQuery https://cloud.google.com/bigquery/docs/best-practices-performance-output, queries return larger results will result in errors.", + // "flatPath": "v1/{v1Id}/{v1Id1}:queryAssets", + // "httpMethod": "POST", + // "id": "cloudasset.queryAssets", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The relative name of the root asset. This can only be an organization number (such as \"organizations/123\"), a project ID (such as \"projects/my-project-id\"), or a project number (such as \"projects/12345\"), or a folder number (such as \"folders/123\"). Only assets belonging to the `parent` will be returned.", + // "location": "path", + // "pattern": "^[^/]+/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}:queryAssets", + // "request": { + // "$ref": "QueryAssetsRequest" + // }, + // "response": { + // "$ref": "QueryAssetsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "cloudasset.searchAllIamPolicies": type V1SearchAllIamPoliciesCall struct { diff --git a/cloudasset/v1beta1/cloudasset-api.json b/cloudasset/v1beta1/cloudasset-api.json index 68cb9880720..956c8f485bb 100644 --- a/cloudasset/v1beta1/cloudasset-api.json +++ b/cloudasset/v1beta1/cloudasset-api.json @@ -411,7 +411,7 @@ } } }, - "revision": "20220826", + "revision": "20221114", "rootUrl": "https://cloudasset.googleapis.com/", "schemas": { "AnalyzeIamPolicyLongrunningMetadata": { @@ -909,7 +909,7 @@ "type": "string" }, "name": { - "description": "Required. Resource name for the Access Level. The `short_name` component must begin with a letter and only include alphanumeric and '_'. Format: `accessPolicies/{access_policy}/accessLevels/{access_level}`. The maximum length of the `access_level` component is 50 characters.", + "description": "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`.", "type": "string" }, "title": { @@ -1333,7 +1333,7 @@ "type": "string" }, "name": { - "description": "Required. Resource name for the ServicePerimeter. The `short_name` component must begin with a letter and only include alphanumeric and '_'. Format: `accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}`", + "description": "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`.", "type": "string" }, "perimeterType": { @@ -1343,7 +1343,7 @@ "PERIMETER_TYPE_BRIDGE" ], "enumDescriptions": [ - "Regular Perimeter.", + "Regular Perimeter. When no value is specified, the perimeter uses this type.", "Perimeter Bridge." ], "type": "string" diff --git a/cloudasset/v1beta1/cloudasset-gen.go b/cloudasset/v1beta1/cloudasset-gen.go index 694f5ca6a9e..7bea1bedbc5 100644 --- a/cloudasset/v1beta1/cloudasset-gen.go +++ b/cloudasset/v1beta1/cloudasset-gen.go @@ -1256,11 +1256,11 @@ type GoogleIdentityAccesscontextmanagerV1AccessLevel struct { // affect behavior. Description string `json:"description,omitempty"` - // Name: Required. Resource name for the Access Level. The `short_name` - // component must begin with a letter and only include alphanumeric and - // '_'. Format: + // Name: Resource name for the `AccessLevel`. Format: // `accessPolicies/{access_policy}/accessLevels/{access_level}`. The - // maximum length of the `access_level` component is 50 characters. + // `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`. Name string `json:"name,omitempty"` // Title: Human readable title. Must be unique within the Policy. @@ -2054,10 +2054,11 @@ type GoogleIdentityAccesscontextmanagerV1ServicePerimeter struct { // not affect behavior. Description string `json:"description,omitempty"` - // Name: Required. Resource name for the ServicePerimeter. The - // `short_name` component must begin with a letter and only include - // alphanumeric and '_'. Format: + // Name: 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`. Name string `json:"name,omitempty"` // PerimeterType: Perimeter type indicator. A single project is allowed @@ -2068,7 +2069,8 @@ type GoogleIdentityAccesscontextmanagerV1ServicePerimeter struct { // must be empty. // // Possible values: - // "PERIMETER_TYPE_REGULAR" - Regular Perimeter. + // "PERIMETER_TYPE_REGULAR" - Regular Perimeter. When no value is + // specified, the perimeter uses this type. // "PERIMETER_TYPE_BRIDGE" - Perimeter Bridge. PerimeterType string `json:"perimeterType,omitempty"` diff --git a/cloudasset/v1p1beta1/cloudasset-api.json b/cloudasset/v1p1beta1/cloudasset-api.json index 9514bfccba1..0844329ba14 100644 --- a/cloudasset/v1p1beta1/cloudasset-api.json +++ b/cloudasset/v1p1beta1/cloudasset-api.json @@ -207,7 +207,7 @@ } } }, - "revision": "20220826", + "revision": "20221114", "rootUrl": "https://cloudasset.googleapis.com/", "schemas": { "AnalyzeIamPolicyLongrunningMetadata": { @@ -611,7 +611,7 @@ "type": "string" }, "name": { - "description": "Required. Resource name for the Access Level. The `short_name` component must begin with a letter and only include alphanumeric and '_'. Format: `accessPolicies/{access_policy}/accessLevels/{access_level}`. The maximum length of the `access_level` component is 50 characters.", + "description": "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`.", "type": "string" }, "title": { @@ -1035,7 +1035,7 @@ "type": "string" }, "name": { - "description": "Required. Resource name for the ServicePerimeter. The `short_name` component must begin with a letter and only include alphanumeric and '_'. Format: `accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}`", + "description": "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`.", "type": "string" }, "perimeterType": { @@ -1045,7 +1045,7 @@ "PERIMETER_TYPE_BRIDGE" ], "enumDescriptions": [ - "Regular Perimeter.", + "Regular Perimeter. When no value is specified, the perimeter uses this type.", "Perimeter Bridge." ], "type": "string" diff --git a/cloudasset/v1p1beta1/cloudasset-gen.go b/cloudasset/v1p1beta1/cloudasset-gen.go index ffedb27d916..6be3681ec57 100644 --- a/cloudasset/v1p1beta1/cloudasset-gen.go +++ b/cloudasset/v1p1beta1/cloudasset-gen.go @@ -1038,11 +1038,11 @@ type GoogleIdentityAccesscontextmanagerV1AccessLevel struct { // affect behavior. Description string `json:"description,omitempty"` - // Name: Required. Resource name for the Access Level. The `short_name` - // component must begin with a letter and only include alphanumeric and - // '_'. Format: + // Name: Resource name for the `AccessLevel`. Format: // `accessPolicies/{access_policy}/accessLevels/{access_level}`. The - // maximum length of the `access_level` component is 50 characters. + // `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`. Name string `json:"name,omitempty"` // Title: Human readable title. Must be unique within the Policy. @@ -1836,10 +1836,11 @@ type GoogleIdentityAccesscontextmanagerV1ServicePerimeter struct { // not affect behavior. Description string `json:"description,omitempty"` - // Name: Required. Resource name for the ServicePerimeter. The - // `short_name` component must begin with a letter and only include - // alphanumeric and '_'. Format: + // Name: 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`. Name string `json:"name,omitempty"` // PerimeterType: Perimeter type indicator. A single project is allowed @@ -1850,7 +1851,8 @@ type GoogleIdentityAccesscontextmanagerV1ServicePerimeter struct { // must be empty. // // Possible values: - // "PERIMETER_TYPE_REGULAR" - Regular Perimeter. + // "PERIMETER_TYPE_REGULAR" - Regular Perimeter. When no value is + // specified, the perimeter uses this type. // "PERIMETER_TYPE_BRIDGE" - Perimeter Bridge. PerimeterType string `json:"perimeterType,omitempty"` diff --git a/cloudasset/v1p5beta1/cloudasset-api.json b/cloudasset/v1p5beta1/cloudasset-api.json index 9114feb50d7..8a8b6866f9c 100644 --- a/cloudasset/v1p5beta1/cloudasset-api.json +++ b/cloudasset/v1p5beta1/cloudasset-api.json @@ -177,7 +177,7 @@ } } }, - "revision": "20220826", + "revision": "20221114", "rootUrl": "https://cloudasset.googleapis.com/", "schemas": { "AnalyzeIamPolicyLongrunningMetadata": { @@ -616,7 +616,7 @@ "type": "string" }, "name": { - "description": "Required. Resource name for the Access Level. The `short_name` component must begin with a letter and only include alphanumeric and '_'. Format: `accessPolicies/{access_policy}/accessLevels/{access_level}`. The maximum length of the `access_level` component is 50 characters.", + "description": "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`.", "type": "string" }, "title": { @@ -1040,7 +1040,7 @@ "type": "string" }, "name": { - "description": "Required. Resource name for the ServicePerimeter. The `short_name` component must begin with a letter and only include alphanumeric and '_'. Format: `accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}`", + "description": "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`.", "type": "string" }, "perimeterType": { @@ -1050,7 +1050,7 @@ "PERIMETER_TYPE_BRIDGE" ], "enumDescriptions": [ - "Regular Perimeter.", + "Regular Perimeter. When no value is specified, the perimeter uses this type.", "Perimeter Bridge." ], "type": "string" diff --git a/cloudasset/v1p5beta1/cloudasset-gen.go b/cloudasset/v1p5beta1/cloudasset-gen.go index 24932a1c682..5b5a62c1f04 100644 --- a/cloudasset/v1p5beta1/cloudasset-gen.go +++ b/cloudasset/v1p5beta1/cloudasset-gen.go @@ -1079,11 +1079,11 @@ type GoogleIdentityAccesscontextmanagerV1AccessLevel struct { // affect behavior. Description string `json:"description,omitempty"` - // Name: Required. Resource name for the Access Level. The `short_name` - // component must begin with a letter and only include alphanumeric and - // '_'. Format: + // Name: Resource name for the `AccessLevel`. Format: // `accessPolicies/{access_policy}/accessLevels/{access_level}`. The - // maximum length of the `access_level` component is 50 characters. + // `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`. Name string `json:"name,omitempty"` // Title: Human readable title. Must be unique within the Policy. @@ -1877,10 +1877,11 @@ type GoogleIdentityAccesscontextmanagerV1ServicePerimeter struct { // not affect behavior. Description string `json:"description,omitempty"` - // Name: Required. Resource name for the ServicePerimeter. The - // `short_name` component must begin with a letter and only include - // alphanumeric and '_'. Format: + // Name: 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`. Name string `json:"name,omitempty"` // PerimeterType: Perimeter type indicator. A single project is allowed @@ -1891,7 +1892,8 @@ type GoogleIdentityAccesscontextmanagerV1ServicePerimeter struct { // must be empty. // // Possible values: - // "PERIMETER_TYPE_REGULAR" - Regular Perimeter. + // "PERIMETER_TYPE_REGULAR" - Regular Perimeter. When no value is + // specified, the perimeter uses this type. // "PERIMETER_TYPE_BRIDGE" - Perimeter Bridge. PerimeterType string `json:"perimeterType,omitempty"` diff --git a/cloudasset/v1p7beta1/cloudasset-api.json b/cloudasset/v1p7beta1/cloudasset-api.json index e08177f2491..a8edd7bb50f 100644 --- a/cloudasset/v1p7beta1/cloudasset-api.json +++ b/cloudasset/v1p7beta1/cloudasset-api.json @@ -167,7 +167,7 @@ } } }, - "revision": "20220826", + "revision": "20221114", "rootUrl": "https://cloudasset.googleapis.com/", "schemas": { "AnalyzeIamPolicyLongrunningMetadata": { @@ -685,7 +685,7 @@ "type": "string" }, "name": { - "description": "Required. Resource name for the Access Level. The `short_name` component must begin with a letter and only include alphanumeric and '_'. Format: `accessPolicies/{access_policy}/accessLevels/{access_level}`. The maximum length of the `access_level` component is 50 characters.", + "description": "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`.", "type": "string" }, "title": { @@ -1109,7 +1109,7 @@ "type": "string" }, "name": { - "description": "Required. Resource name for the ServicePerimeter. The `short_name` component must begin with a letter and only include alphanumeric and '_'. Format: `accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}`", + "description": "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`.", "type": "string" }, "perimeterType": { @@ -1119,7 +1119,7 @@ "PERIMETER_TYPE_BRIDGE" ], "enumDescriptions": [ - "Regular Perimeter.", + "Regular Perimeter. When no value is specified, the perimeter uses this type.", "Perimeter Bridge." ], "type": "string" diff --git a/cloudasset/v1p7beta1/cloudasset-gen.go b/cloudasset/v1p7beta1/cloudasset-gen.go index a25da95b4bd..c02554916e8 100644 --- a/cloudasset/v1p7beta1/cloudasset-gen.go +++ b/cloudasset/v1p7beta1/cloudasset-gen.go @@ -1290,11 +1290,11 @@ type GoogleIdentityAccesscontextmanagerV1AccessLevel struct { // affect behavior. Description string `json:"description,omitempty"` - // Name: Required. Resource name for the Access Level. The `short_name` - // component must begin with a letter and only include alphanumeric and - // '_'. Format: + // Name: Resource name for the `AccessLevel`. Format: // `accessPolicies/{access_policy}/accessLevels/{access_level}`. The - // maximum length of the `access_level` component is 50 characters. + // `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`. Name string `json:"name,omitempty"` // Title: Human readable title. Must be unique within the Policy. @@ -2088,10 +2088,11 @@ type GoogleIdentityAccesscontextmanagerV1ServicePerimeter struct { // not affect behavior. Description string `json:"description,omitempty"` - // Name: Required. Resource name for the ServicePerimeter. The - // `short_name` component must begin with a letter and only include - // alphanumeric and '_'. Format: + // Name: 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`. Name string `json:"name,omitempty"` // PerimeterType: Perimeter type indicator. A single project is allowed @@ -2102,7 +2103,8 @@ type GoogleIdentityAccesscontextmanagerV1ServicePerimeter struct { // must be empty. // // Possible values: - // "PERIMETER_TYPE_REGULAR" - Regular Perimeter. + // "PERIMETER_TYPE_REGULAR" - Regular Perimeter. When no value is + // specified, the perimeter uses this type. // "PERIMETER_TYPE_BRIDGE" - Perimeter Bridge. PerimeterType string `json:"perimeterType,omitempty"` diff --git a/cloudbuild/v1/cloudbuild-api.json b/cloudbuild/v1/cloudbuild-api.json index 9c40d35c392..5513063fd9a 100644 --- a/cloudbuild/v1/cloudbuild-api.json +++ b/cloudbuild/v1/cloudbuild-api.json @@ -2295,7 +2295,7 @@ } } }, - "revision": "20221027", + "revision": "20221103", "rootUrl": "https://cloudbuild.googleapis.com/", "schemas": { "ApprovalConfig": { @@ -3312,6 +3312,10 @@ "$ref": "PubsubConfig", "description": "PubsubConfig describes the configuration of a trigger that creates a build whenever a Pub/Sub message is published." }, + "repositoryEventConfig": { + "$ref": "RepositoryEventConfig", + "description": "The configuration of a trigger that creates a build whenever an event from Repo API is received." + }, "resourceName": { "description": "The `Trigger` name with format: `projects/{project}/locations/{location}/triggers/{trigger}`, where {trigger} is a unique identifier generated by the service.", "type": "string" @@ -4707,6 +4711,42 @@ }, "type": "object" }, + "RepositoryEventConfig": { + "description": "The configuration of a trigger that creates a build whenever an event from Repo API is received.", + "id": "RepositoryEventConfig", + "properties": { + "pullRequest": { + "$ref": "PullRequestFilter", + "description": "Filter to match changes in pull requests." + }, + "push": { + "$ref": "PushFilter", + "description": "Filter to match changes in refs like branches, tags." + }, + "repository": { + "description": "The resource name of the Repo API resource.", + "type": "string" + }, + "repositoryType": { + "description": "Output only. The type of the SCM vendor the repository points to.", + "enum": [ + "REPOSITORY_TYPE_UNSPECIFIED", + "GITHUB", + "GITHUB_ENTERPRISE", + "GITLAB_ENTERPRISE" + ], + "enumDescriptions": [ + "If unspecified, RepositoryType defaults to GITHUB.", + "The SCM repo is GITHUB.", + "The SCM repo is GITHUB Enterprise.", + "The SCM repo is GITLAB Enterprise." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "Results": { "description": "Artifacts created by the build pipeline.", "id": "Results", diff --git a/cloudbuild/v1/cloudbuild-gen.go b/cloudbuild/v1/cloudbuild-gen.go index 702808817f1..066fa3fed1b 100644 --- a/cloudbuild/v1/cloudbuild-gen.go +++ b/cloudbuild/v1/cloudbuild-gen.go @@ -1756,6 +1756,10 @@ type BuildTrigger struct { // that creates a build whenever a Pub/Sub message is published. PubsubConfig *PubsubConfig `json:"pubsubConfig,omitempty"` + // RepositoryEventConfig: The configuration of a trigger that creates a + // build whenever an event from Repo API is received. + RepositoryEventConfig *RepositoryEventConfig `json:"repositoryEventConfig,omitempty"` + // ResourceName: The `Trigger` name with format: // `projects/{project}/locations/{location}/triggers/{trigger}`, where // {trigger} is a unique identifier generated by the service. @@ -4254,6 +4258,52 @@ func (s *RepoSource) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// RepositoryEventConfig: The configuration of a trigger that creates a +// build whenever an event from Repo API is received. +type RepositoryEventConfig struct { + // PullRequest: Filter to match changes in pull requests. + PullRequest *PullRequestFilter `json:"pullRequest,omitempty"` + + // Push: Filter to match changes in refs like branches, tags. + Push *PushFilter `json:"push,omitempty"` + + // Repository: The resource name of the Repo API resource. + Repository string `json:"repository,omitempty"` + + // RepositoryType: Output only. The type of the SCM vendor the + // repository points to. + // + // Possible values: + // "REPOSITORY_TYPE_UNSPECIFIED" - If unspecified, RepositoryType + // defaults to GITHUB. + // "GITHUB" - The SCM repo is GITHUB. + // "GITHUB_ENTERPRISE" - The SCM repo is GITHUB Enterprise. + // "GITLAB_ENTERPRISE" - The SCM repo is GITLAB Enterprise. + RepositoryType string `json:"repositoryType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "PullRequest") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "PullRequest") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *RepositoryEventConfig) MarshalJSON() ([]byte, error) { + type NoMethod RepositoryEventConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Results: Artifacts created by the build pipeline. type Results struct { // ArtifactManifest: Path to the artifact manifest for non-container diff --git a/cloudbuild/v1alpha1/cloudbuild-api.json b/cloudbuild/v1alpha1/cloudbuild-api.json index 6a1df4216e7..905a9c4f00f 100644 --- a/cloudbuild/v1alpha1/cloudbuild-api.json +++ b/cloudbuild/v1alpha1/cloudbuild-api.json @@ -306,7 +306,7 @@ } } }, - "revision": "20221015", + "revision": "20221103", "rootUrl": "https://cloudbuild.googleapis.com/", "schemas": { "ApprovalConfig": { @@ -503,6 +503,20 @@ }, "type": "object" }, + "BatchCreateRepositoriesResponse": { + "description": "Message for response of creating repositories in batch.", + "id": "BatchCreateRepositoriesResponse", + "properties": { + "repositories": { + "description": "Repository resources created.", + "items": { + "$ref": "Repository" + }, + "type": "array" + } + }, + "type": "object" + }, "BitbucketServerConnectedRepository": { "description": "/ BitbucketServerConnectedRepository represents a connected Bitbucket Server / repository.", "id": "BitbucketServerConnectedRepository", @@ -1770,6 +1784,44 @@ }, "type": "object" }, + "Repository": { + "description": "A repository associated to a parent connection.", + "id": "Repository", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Allows clients to store small amounts of arbitrary data.", + "type": "object" + }, + "createTime": { + "description": "Output only. Server assigned timestamp for when the connection was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "etag": { + "description": "This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", + "type": "string" + }, + "name": { + "description": "Immutable. Resource name of the repository, in the format `projects/*/locations/*/connections/*/repositories/*`.", + "type": "string" + }, + "remoteUri": { + "description": "Required. Git Clone HTTPS URI.", + "type": "string" + }, + "updateTime": { + "description": "Output only. Server assigned timestamp for when the connection was updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "Results": { "description": "Artifacts created by the build pipeline.", "id": "Results", diff --git a/cloudbuild/v1alpha1/cloudbuild-gen.go b/cloudbuild/v1alpha1/cloudbuild-gen.go index bd6da369be6..b5d44cc16a3 100644 --- a/cloudbuild/v1alpha1/cloudbuild-gen.go +++ b/cloudbuild/v1alpha1/cloudbuild-gen.go @@ -539,6 +539,35 @@ func (s *BatchCreateGitLabConnectedRepositoriesResponseMetadata) MarshalJSON() ( return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// BatchCreateRepositoriesResponse: Message for response of creating +// repositories in batch. +type BatchCreateRepositoriesResponse struct { + // Repositories: Repository resources created. + Repositories []*Repository `json:"repositories,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Repositories") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Repositories") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *BatchCreateRepositoriesResponse) MarshalJSON() ([]byte, error) { + type NoMethod BatchCreateRepositoriesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // BitbucketServerConnectedRepository: / // BitbucketServerConnectedRepository represents a connected Bitbucket // Server / repository. @@ -2419,6 +2448,54 @@ func (s *RepoSource) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Repository: A repository associated to a parent connection. +type Repository struct { + // Annotations: Allows clients to store small amounts of arbitrary data. + Annotations map[string]string `json:"annotations,omitempty"` + + // CreateTime: Output only. Server assigned timestamp for when the + // connection was created. + CreateTime string `json:"createTime,omitempty"` + + // Etag: This checksum is computed by the server based on the value of + // other fields, and may be sent on update and delete requests to ensure + // the client has an up-to-date value before proceeding. + Etag string `json:"etag,omitempty"` + + // Name: Immutable. Resource name of the repository, in the format + // `projects/*/locations/*/connections/*/repositories/*`. + Name string `json:"name,omitempty"` + + // RemoteUri: Required. Git Clone HTTPS URI. + RemoteUri string `json:"remoteUri,omitempty"` + + // UpdateTime: Output only. Server assigned timestamp for when the + // connection was updated. + UpdateTime string `json:"updateTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Annotations") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Annotations") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Repository) MarshalJSON() ([]byte, error) { + type NoMethod Repository + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Results: Artifacts created by the build pipeline. type Results struct { // ArtifactManifest: Path to the artifact manifest for non-container diff --git a/cloudbuild/v1alpha2/cloudbuild-api.json b/cloudbuild/v1alpha2/cloudbuild-api.json index 364d8657fe1..cb45a093a3d 100644 --- a/cloudbuild/v1alpha2/cloudbuild-api.json +++ b/cloudbuild/v1alpha2/cloudbuild-api.json @@ -317,7 +317,7 @@ } } }, - "revision": "20221015", + "revision": "20221103", "rootUrl": "https://cloudbuild.googleapis.com/", "schemas": { "ApprovalConfig": { @@ -514,6 +514,20 @@ }, "type": "object" }, + "BatchCreateRepositoriesResponse": { + "description": "Message for response of creating repositories in batch.", + "id": "BatchCreateRepositoriesResponse", + "properties": { + "repositories": { + "description": "Repository resources created.", + "items": { + "$ref": "Repository" + }, + "type": "array" + } + }, + "type": "object" + }, "BitbucketServerConnectedRepository": { "description": "/ BitbucketServerConnectedRepository represents a connected Bitbucket Server / repository.", "id": "BitbucketServerConnectedRepository", @@ -1773,6 +1787,44 @@ }, "type": "object" }, + "Repository": { + "description": "A repository associated to a parent connection.", + "id": "Repository", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Allows clients to store small amounts of arbitrary data.", + "type": "object" + }, + "createTime": { + "description": "Output only. Server assigned timestamp for when the connection was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "etag": { + "description": "This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", + "type": "string" + }, + "name": { + "description": "Immutable. Resource name of the repository, in the format `projects/*/locations/*/connections/*/repositories/*`.", + "type": "string" + }, + "remoteUri": { + "description": "Required. Git Clone HTTPS URI.", + "type": "string" + }, + "updateTime": { + "description": "Output only. Server assigned timestamp for when the connection was updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "Results": { "description": "Artifacts created by the build pipeline.", "id": "Results", diff --git a/cloudbuild/v1alpha2/cloudbuild-gen.go b/cloudbuild/v1alpha2/cloudbuild-gen.go index 844cad92499..16e788cf024 100644 --- a/cloudbuild/v1alpha2/cloudbuild-gen.go +++ b/cloudbuild/v1alpha2/cloudbuild-gen.go @@ -539,6 +539,35 @@ func (s *BatchCreateGitLabConnectedRepositoriesResponseMetadata) MarshalJSON() ( return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// BatchCreateRepositoriesResponse: Message for response of creating +// repositories in batch. +type BatchCreateRepositoriesResponse struct { + // Repositories: Repository resources created. + Repositories []*Repository `json:"repositories,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Repositories") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Repositories") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *BatchCreateRepositoriesResponse) MarshalJSON() ([]byte, error) { + type NoMethod BatchCreateRepositoriesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // BitbucketServerConnectedRepository: / // BitbucketServerConnectedRepository represents a connected Bitbucket // Server / repository. @@ -2412,6 +2441,54 @@ func (s *RepoSource) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Repository: A repository associated to a parent connection. +type Repository struct { + // Annotations: Allows clients to store small amounts of arbitrary data. + Annotations map[string]string `json:"annotations,omitempty"` + + // CreateTime: Output only. Server assigned timestamp for when the + // connection was created. + CreateTime string `json:"createTime,omitempty"` + + // Etag: This checksum is computed by the server based on the value of + // other fields, and may be sent on update and delete requests to ensure + // the client has an up-to-date value before proceeding. + Etag string `json:"etag,omitempty"` + + // Name: Immutable. Resource name of the repository, in the format + // `projects/*/locations/*/connections/*/repositories/*`. + Name string `json:"name,omitempty"` + + // RemoteUri: Required. Git Clone HTTPS URI. + RemoteUri string `json:"remoteUri,omitempty"` + + // UpdateTime: Output only. Server assigned timestamp for when the + // connection was updated. + UpdateTime string `json:"updateTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Annotations") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Annotations") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Repository) MarshalJSON() ([]byte, error) { + type NoMethod Repository + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Results: Artifacts created by the build pipeline. type Results struct { // ArtifactManifest: Path to the artifact manifest for non-container diff --git a/cloudbuild/v1beta1/cloudbuild-api.json b/cloudbuild/v1beta1/cloudbuild-api.json index cbf34c6f33f..2e411320007 100644 --- a/cloudbuild/v1beta1/cloudbuild-api.json +++ b/cloudbuild/v1beta1/cloudbuild-api.json @@ -322,7 +322,7 @@ } } }, - "revision": "20221015", + "revision": "20221103", "rootUrl": "https://cloudbuild.googleapis.com/", "schemas": { "ApprovalConfig": { @@ -519,6 +519,20 @@ }, "type": "object" }, + "BatchCreateRepositoriesResponse": { + "description": "Message for response of creating repositories in batch.", + "id": "BatchCreateRepositoriesResponse", + "properties": { + "repositories": { + "description": "Repository resources created.", + "items": { + "$ref": "Repository" + }, + "type": "array" + } + }, + "type": "object" + }, "BitbucketServerConnectedRepository": { "description": "/ BitbucketServerConnectedRepository represents a connected Bitbucket Server / repository.", "id": "BitbucketServerConnectedRepository", @@ -1778,6 +1792,44 @@ }, "type": "object" }, + "Repository": { + "description": "A repository associated to a parent connection.", + "id": "Repository", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Allows clients to store small amounts of arbitrary data.", + "type": "object" + }, + "createTime": { + "description": "Output only. Server assigned timestamp for when the connection was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "etag": { + "description": "This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", + "type": "string" + }, + "name": { + "description": "Immutable. Resource name of the repository, in the format `projects/*/locations/*/connections/*/repositories/*`.", + "type": "string" + }, + "remoteUri": { + "description": "Required. Git Clone HTTPS URI.", + "type": "string" + }, + "updateTime": { + "description": "Output only. Server assigned timestamp for when the connection was updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "Results": { "description": "Artifacts created by the build pipeline.", "id": "Results", diff --git a/cloudbuild/v1beta1/cloudbuild-gen.go b/cloudbuild/v1beta1/cloudbuild-gen.go index 8d6c018149f..9c058b0a643 100644 --- a/cloudbuild/v1beta1/cloudbuild-gen.go +++ b/cloudbuild/v1beta1/cloudbuild-gen.go @@ -539,6 +539,35 @@ func (s *BatchCreateGitLabConnectedRepositoriesResponseMetadata) MarshalJSON() ( return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// BatchCreateRepositoriesResponse: Message for response of creating +// repositories in batch. +type BatchCreateRepositoriesResponse struct { + // Repositories: Repository resources created. + Repositories []*Repository `json:"repositories,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Repositories") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Repositories") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *BatchCreateRepositoriesResponse) MarshalJSON() ([]byte, error) { + type NoMethod BatchCreateRepositoriesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // BitbucketServerConnectedRepository: / // BitbucketServerConnectedRepository represents a connected Bitbucket // Server / repository. @@ -2415,6 +2444,54 @@ func (s *RepoSource) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Repository: A repository associated to a parent connection. +type Repository struct { + // Annotations: Allows clients to store small amounts of arbitrary data. + Annotations map[string]string `json:"annotations,omitempty"` + + // CreateTime: Output only. Server assigned timestamp for when the + // connection was created. + CreateTime string `json:"createTime,omitempty"` + + // Etag: This checksum is computed by the server based on the value of + // other fields, and may be sent on update and delete requests to ensure + // the client has an up-to-date value before proceeding. + Etag string `json:"etag,omitempty"` + + // Name: Immutable. Resource name of the repository, in the format + // `projects/*/locations/*/connections/*/repositories/*`. + Name string `json:"name,omitempty"` + + // RemoteUri: Required. Git Clone HTTPS URI. + RemoteUri string `json:"remoteUri,omitempty"` + + // UpdateTime: Output only. Server assigned timestamp for when the + // connection was updated. + UpdateTime string `json:"updateTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Annotations") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Annotations") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Repository) MarshalJSON() ([]byte, error) { + type NoMethod Repository + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Results: Artifacts created by the build pipeline. type Results struct { // ArtifactManifest: Path to the artifact manifest for non-container diff --git a/cloudkms/v1/cloudkms-api.json b/cloudkms/v1/cloudkms-api.json index 9888a47cdb7..fdb5170a504 100644 --- a/cloudkms/v1/cloudkms-api.json +++ b/cloudkms/v1/cloudkms-api.json @@ -1676,7 +1676,7 @@ } } }, - "revision": "20221028", + "revision": "20221107", "rootUrl": "https://cloudkms.googleapis.com/", "schemas": { "AsymmetricDecryptRequest": { @@ -2069,6 +2069,10 @@ "EC_SIGN_P384_SHA384", "EC_SIGN_SECP256K1_SHA256", "HMAC_SHA256", + "HMAC_SHA1", + "HMAC_SHA384", + "HMAC_SHA512", + "HMAC_SHA224", "EXTERNAL_SYMMETRIC_ENCRYPTION" ], "enumDescriptions": [ @@ -2096,6 +2100,10 @@ "ECDSA on the NIST P-384 curve with a SHA384 digest.", "ECDSA on the non-NIST secp256k1 curve. This curve is only supported for HSM protection level.", "HMAC-SHA256 signing with a 256 bit key.", + "HMAC-SHA1 signing with a 160 bit key.", + "HMAC-SHA384 signing with a 384 bit key.", + "HMAC-SHA512 signing with a 512 bit key.", + "HMAC-SHA224 signing with a 224 bit key.", "Algorithm representing symmetric encryption by an external key manager." ], "readOnly": true, @@ -2237,6 +2245,10 @@ "EC_SIGN_P384_SHA384", "EC_SIGN_SECP256K1_SHA256", "HMAC_SHA256", + "HMAC_SHA1", + "HMAC_SHA384", + "HMAC_SHA512", + "HMAC_SHA224", "EXTERNAL_SYMMETRIC_ENCRYPTION" ], "enumDescriptions": [ @@ -2264,6 +2276,10 @@ "ECDSA on the NIST P-384 curve with a SHA384 digest.", "ECDSA on the non-NIST secp256k1 curve. This curve is only supported for HSM protection level.", "HMAC-SHA256 signing with a 256 bit key.", + "HMAC-SHA1 signing with a 160 bit key.", + "HMAC-SHA384 signing with a 384 bit key.", + "HMAC-SHA512 signing with a 512 bit key.", + "HMAC-SHA224 signing with a 224 bit key.", "Algorithm representing symmetric encryption by an external key manager." ], "type": "string" @@ -2602,6 +2618,10 @@ "EC_SIGN_P384_SHA384", "EC_SIGN_SECP256K1_SHA256", "HMAC_SHA256", + "HMAC_SHA1", + "HMAC_SHA384", + "HMAC_SHA512", + "HMAC_SHA224", "EXTERNAL_SYMMETRIC_ENCRYPTION" ], "enumDescriptions": [ @@ -2629,6 +2649,10 @@ "ECDSA on the NIST P-384 curve with a SHA384 digest.", "ECDSA on the non-NIST secp256k1 curve. This curve is only supported for HSM protection level.", "HMAC-SHA256 signing with a 256 bit key.", + "HMAC-SHA1 signing with a 160 bit key.", + "HMAC-SHA384 signing with a 384 bit key.", + "HMAC-SHA512 signing with a 512 bit key.", + "HMAC-SHA224 signing with a 224 bit key.", "Algorithm representing symmetric encryption by an external key manager." ], "type": "string" @@ -3184,6 +3208,10 @@ "EC_SIGN_P384_SHA384", "EC_SIGN_SECP256K1_SHA256", "HMAC_SHA256", + "HMAC_SHA1", + "HMAC_SHA384", + "HMAC_SHA512", + "HMAC_SHA224", "EXTERNAL_SYMMETRIC_ENCRYPTION" ], "enumDescriptions": [ @@ -3211,6 +3239,10 @@ "ECDSA on the NIST P-384 curve with a SHA384 digest.", "ECDSA on the non-NIST secp256k1 curve. This curve is only supported for HSM protection level.", "HMAC-SHA256 signing with a 256 bit key.", + "HMAC-SHA1 signing with a 160 bit key.", + "HMAC-SHA384 signing with a 384 bit key.", + "HMAC-SHA512 signing with a 512 bit key.", + "HMAC-SHA224 signing with a 224 bit key.", "Algorithm representing symmetric encryption by an external key manager." ], "type": "string" diff --git a/cloudkms/v1/cloudkms-gen.go b/cloudkms/v1/cloudkms-gen.go index 2431b4eebe3..93f45cccb80 100644 --- a/cloudkms/v1/cloudkms-gen.go +++ b/cloudkms/v1/cloudkms-gen.go @@ -949,6 +949,10 @@ type CryptoKeyVersion struct { // "EC_SIGN_SECP256K1_SHA256" - ECDSA on the non-NIST secp256k1 curve. // This curve is only supported for HSM protection level. // "HMAC_SHA256" - HMAC-SHA256 signing with a 256 bit key. + // "HMAC_SHA1" - HMAC-SHA1 signing with a 160 bit key. + // "HMAC_SHA384" - HMAC-SHA384 signing with a 384 bit key. + // "HMAC_SHA512" - HMAC-SHA512 signing with a 512 bit key. + // "HMAC_SHA224" - HMAC-SHA224 signing with a 224 bit key. // "EXTERNAL_SYMMETRIC_ENCRYPTION" - Algorithm representing symmetric // encryption by an external key manager. Algorithm string `json:"algorithm,omitempty"` @@ -1132,6 +1136,10 @@ type CryptoKeyVersionTemplate struct { // "EC_SIGN_SECP256K1_SHA256" - ECDSA on the non-NIST secp256k1 curve. // This curve is only supported for HSM protection level. // "HMAC_SHA256" - HMAC-SHA256 signing with a 256 bit key. + // "HMAC_SHA1" - HMAC-SHA1 signing with a 160 bit key. + // "HMAC_SHA384" - HMAC-SHA384 signing with a 384 bit key. + // "HMAC_SHA512" - HMAC-SHA512 signing with a 512 bit key. + // "HMAC_SHA224" - HMAC-SHA224 signing with a 224 bit key. // "EXTERNAL_SYMMETRIC_ENCRYPTION" - Algorithm representing symmetric // encryption by an external key manager. Algorithm string `json:"algorithm,omitempty"` @@ -1801,6 +1809,10 @@ type ImportCryptoKeyVersionRequest struct { // "EC_SIGN_SECP256K1_SHA256" - ECDSA on the non-NIST secp256k1 curve. // This curve is only supported for HSM protection level. // "HMAC_SHA256" - HMAC-SHA256 signing with a 256 bit key. + // "HMAC_SHA1" - HMAC-SHA1 signing with a 160 bit key. + // "HMAC_SHA384" - HMAC-SHA384 signing with a 384 bit key. + // "HMAC_SHA512" - HMAC-SHA512 signing with a 512 bit key. + // "HMAC_SHA224" - HMAC-SHA224 signing with a 224 bit key. // "EXTERNAL_SYMMETRIC_ENCRYPTION" - Algorithm representing symmetric // encryption by an external key manager. Algorithm string `json:"algorithm,omitempty"` @@ -2854,6 +2866,10 @@ type PublicKey struct { // "EC_SIGN_SECP256K1_SHA256" - ECDSA on the non-NIST secp256k1 curve. // This curve is only supported for HSM protection level. // "HMAC_SHA256" - HMAC-SHA256 signing with a 256 bit key. + // "HMAC_SHA1" - HMAC-SHA1 signing with a 160 bit key. + // "HMAC_SHA384" - HMAC-SHA384 signing with a 384 bit key. + // "HMAC_SHA512" - HMAC-SHA512 signing with a 512 bit key. + // "HMAC_SHA224" - HMAC-SHA224 signing with a 224 bit key. // "EXTERNAL_SYMMETRIC_ENCRYPTION" - Algorithm representing symmetric // encryption by an external key manager. Algorithm string `json:"algorithm,omitempty"` diff --git a/cloudresourcemanager/v3/cloudresourcemanager-api.json b/cloudresourcemanager/v3/cloudresourcemanager-api.json index be43fce366c..646a6215a0b 100644 --- a/cloudresourcemanager/v3/cloudresourcemanager-api.json +++ b/cloudresourcemanager/v3/cloudresourcemanager-api.json @@ -980,7 +980,8 @@ "$ref": "SearchProjectsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ] }, "setIamPolicy": { @@ -1760,7 +1761,7 @@ } } }, - "revision": "20221016", + "revision": "20221113", "rootUrl": "https://cloudresourcemanager.googleapis.com/", "schemas": { "AuditConfig": { diff --git a/cloudresourcemanager/v3/cloudresourcemanager-gen.go b/cloudresourcemanager/v3/cloudresourcemanager-gen.go index ab26d58d854..f684b0aa567 100644 --- a/cloudresourcemanager/v3/cloudresourcemanager-gen.go +++ b/cloudresourcemanager/v3/cloudresourcemanager-gen.go @@ -7282,7 +7282,8 @@ func (c *ProjectsSearchCall) Do(opts ...googleapi.CallOption) (*SearchProjectsRe // "$ref": "SearchProjectsResponse" // }, // "scopes": [ - // "https://www.googleapis.com/auth/cloud-platform" + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloud-platform.read-only" // ] // } diff --git a/cloudsearch/v1/cloudsearch-api.json b/cloudsearch/v1/cloudsearch-api.json index 29933500ab5..42adc053aa2 100644 --- a/cloudsearch/v1/cloudsearch-api.json +++ b/cloudsearch/v1/cloudsearch-api.json @@ -2077,7 +2077,7 @@ } } }, - "revision": "20221018", + "revision": "20221108", "rootUrl": "https://cloudsearch.googleapis.com/", "schemas": { "AbuseReportingConfig": { @@ -2889,6 +2889,7 @@ "SCAN_RULE_EVALUATION_SKIPPED_NO_APPLICABLE_RULES_FOR_TRIGGER", "SCAN_RULE_EVALUATION_SKIPPED_CHANGELING_PERMANENT_ERROR", "SCAN_RULE_EVALUATION_SKIPPED_CHANGELING_EMPTY_RESPONSE", + "SCAN_RULE_EVALUATION_SKIPPED_UNSUPPORTED_FILE_TYPE", "SCAN_SUCCEEDED_WITH_FAILURES_NO_VIOLATION", "SCAN_SUCCEEDED_WITH_FAILURES_BLOCK", "SCAN_SUCCEEDED_WITH_FAILURES_WARN", @@ -2915,6 +2916,7 @@ "Rule fetch happened, but rule evaluation is skipped because none of the rules are applicable to the given trigger.", "Rule fetch happened, but rule evaluation is skipped because Changeling returned permanent failure while converting the attachment to text.", "Rule fetch happened, but rule evaluation is skipped because Changeling returned an empty response while converting the attachment to text.", + "Rule fetch happened, but rule evaluation is skipped because file type is unsupported.", "Rules were fetched but some evaluations failed. No violation was found in the rules that were successfully evaluated.", "Rules were fetched but some evaluations failed. A blocking violation was found in the rules that were successfully evaluated. The message/attachment will be blocked, the user will be notified, and the violation will be logged to BIP. A blocking violation takes precedence over all other violation types.", "Rules were fetched but some evaluations failed. A warn violation was found in the rules that were successfully evaluated. The user will be warned, and the violation will be logged to BIP.", @@ -5344,6 +5346,69 @@ }, "type": "object" }, + "Attribute": { + "description": "An Attribute is a piece of data attached an Item. Attributes are opaque to the Starbox and have no effect on, nor are they effected by, message storage, indexing, or search. ", + "id": "Attribute", + "properties": { + "name": { + "description": "The name of the attribute. Required - If a write is attempted with an empty string, the server will return an error.", + "type": "string" + }, + "value": { + "$ref": "CaribouAttributeValue" + } + }, + "type": "object" + }, + "AttributeRemoved": { + "description": "An attribute was deleted from some (subset of the) messages in this thread.", + "id": "AttributeRemoved", + "properties": { + "attributeId": { + "type": "string" + }, + "messageKeys": { + "items": { + "$ref": "MultiKey" + }, + "type": "array" + } + }, + "type": "object" + }, + "AttributeSet": { + "description": "An attribute was added to some (subset of the) messages in this thread.", + "id": "AttributeSet", + "properties": { + "attributeId": { + "type": "string" + }, + "attributeValue": { + "description": "The serialized attribute_value as persisted in the storage layer. The application is responsible for deserializing it to an Attribute.Value if appropriate.", + "format": "byte", + "type": "string" + }, + "messageKeys": { + "items": { + "$ref": "MultiKey" + }, + "type": "array" + } + }, + "type": "object" + }, + "Attributes": { + "id": "Attributes", + "properties": { + "attribute": { + "items": { + "$ref": "Attribute" + }, + "type": "array" + } + }, + "type": "object" + }, "AuditLoggingSettings": { "description": "Represents the settings for Cloud audit logging", "id": "AuditLoggingSettings", @@ -5767,10 +5832,6 @@ "readOnly": true, "type": "string" }, - "chatConfig": { - "$ref": "ChatConfig", - "description": "Configuration for the chat for this conference." - }, "coActivity": { "$ref": "CoActivity", "description": "The current co-activity session, or unset if there is none in progress. A co-activity session can be initiated by devices in JOINED state . Initiator of the co-activity is expected to populate this field to start the session. Once clients detect that the co-activity has finished, any JOINED device can clear this field to end the co-activity session. In the case of switching activities, the initiator of the new activity merely needs to override this with the new co-activity data, and all connected clients are expected to handle the transition gracefully." @@ -5790,7 +5851,7 @@ "type": "integer" }, "mediaBackendInfo": { - "description": "Output only. Information about the media backend for the currently ongoing conference in the meeting space. The media backend information will only be filled in for clients that are supposed to present the information. The information should be displayed in a debug panel and is only intended for internal debugging purposes. If the string is empty nothing should be displayed about the media backend.", + "description": "Output only. Information about the media backend for the currently ongoing conference in the meeting space. The media backend information will only be filled in for clients that are supposed to present the information. The information should be displayed in a debug panel and is only intended for internal debugging purposes. If the string is empty nothing should be displayed about the media backend. Deprecated because media backend is always MEDIA_ROUTER since Dec 2018.", "readOnly": true, "type": "string" }, @@ -6038,37 +6099,38 @@ }, "type": "object" }, - "ChatClientActionMarkup": { - "description": "Actions handled by Chat Clients.", - "id": "ChatClientActionMarkup", - "properties": {}, - "type": "object" - }, - "ChatConfig": { - "description": "Configuration of the in meeting chat.", - "id": "ChatConfig", + "CaribouAttributeValue": { + "id": "CaribouAttributeValue", "properties": { - "chatType": { - "description": "The Type of chat this Conference is currently using.", - "enum": [ - "CHAT_TYPE_UNSPECIFIED", - "MEET_CHAT", - "GOOGLE_CHAT" - ], - "enumDescriptions": [ - "Chat Type has not been specified.", - "Meets native chat.", - "Google Chat." - ], + "booleanValue": { + "description": "Tags 1 through 15 are reserved for the most commonly used fields.", + "type": "boolean" + }, + "intValue": { + "format": "int32", + "type": "integer" + }, + "longValue": { + "format": "int64", + "type": "string" + }, + "rawByteValue": { + "description": "Generally, applications should avoid storing raw bytes and instead store structured data as protocol buffer extensions. This both reduces the amount of ad-hoc attribute parsing code as well as eliminates an intermediate copy of the data when deserializing the value. The rawByteValue field is mainly provided for compatibility with attributes stored before the introduction of the Attribute.Value.", + "format": "byte", "type": "string" }, - "googleChatConfig": { - "$ref": "GoogleChatConfig", - "description": "The configuration of Google Chat when selected." + "stringValue": { + "type": "string" } }, "type": "object" }, + "ChatClientActionMarkup": { + "description": "Actions handled by Chat Clients.", + "id": "ChatClientActionMarkup", + "properties": {}, + "type": "object" + }, "ChatConserverDynamitePlaceholderMetadata": { "description": "Metadata used as inputs to the localization that is performed on Dynamite-originated messages that are incompatible with Hangouts clients. See go/localization-of-system-messages for more details.", "id": "ChatConserverDynamitePlaceholderMetadata", @@ -6276,6 +6338,29 @@ }, "type": "object" }, + "ClientContext": { + "description": "Represents the context of the client on behalf of which a HistoryRecord is produced. The ClientContext message can be used to hold context about the service client (e.g. the internal server making fusebox requests) or the user client (e.g. the IP address of the end user).", + "id": "ClientContext", + "properties": { + "clientOperationId": { + "description": "The client operation to which this history record belongs. The notion of a client operation is provided to keep track of client operations which might span multiple transactions in the lower level.", + "type": "string" + }, + "clientType": { + "description": "E.g. \"pinto\", \"imap\", \"bigtop\", \"upload\"", + "type": "string" + }, + "sessionContext": { + "$ref": "SessionContext", + "description": "Contains information about the session which created this history record. This will be empty if the history record was generated by an internal request." + }, + "userIp": { + "description": "Textual representation of the user's IP address, if available.", + "type": "string" + } + }, + "type": "object" + }, "CloudPrincipalProto": { "description": "Principal associated with a Cloud Principal representing third party user.", "id": "CloudPrincipalProto", @@ -6287,6 +6372,24 @@ }, "type": "object" }, + "ClusterInfo": { + "description": "ClusterInfo contains clustering related information for a particular thread that would be sent as part of the conversation view. Today, this information would be used by iOS notification server to identify whether the thread belongs to a cluster. If the thread belongs to a grouped cluster, it would identify whether the cluster is throttled.", + "id": "ClusterInfo", + "properties": { + "clusterId": { + "description": "IDs of the highest priority clusters to which the thread belongs to. If this field is not present, the thread does not belong to any cluster and would be shown in the inbox, unclustered.", + "items": { + "type": "string" + }, + "type": "array" + }, + "throttled": { + "description": "If the thread belongs to a grouped cluster and all of those clusters are throttled, then this field is set to true.", + "type": "boolean" + } + }, + "type": "object" + }, "CoActivity": { "description": "Metadata about a co-activity session.", "id": "CoActivity", @@ -6304,7 +6407,8 @@ "CO_ACTIVITY_APP_UNO", "CO_ACTIVITY_APP_HEADSUP", "CO_ACTIVITY_APP_KAHOOT", - "CO_ACTIVITY_APP_GQUEUES" + "CO_ACTIVITY_APP_GQUEUES", + "CO_ACTIVITY_APP_YOU_TUBE_MUSIC" ], "enumDescriptions": [ "Should never be used.", @@ -6313,7 +6417,8 @@ "Uno game.", "HeadsUp game.", "Kahoot! educational software.", - "GQueues task manager." + "GQueues task manager.", + "YouTube Music" ], "type": "string" } @@ -7038,6 +7143,7 @@ "SCAN_RULE_EVALUATION_SKIPPED_NO_APPLICABLE_RULES_FOR_TRIGGER", "SCAN_RULE_EVALUATION_SKIPPED_CHANGELING_PERMANENT_ERROR", "SCAN_RULE_EVALUATION_SKIPPED_CHANGELING_EMPTY_RESPONSE", + "SCAN_RULE_EVALUATION_SKIPPED_UNSUPPORTED_FILE_TYPE", "SCAN_SUCCEEDED_WITH_FAILURES_NO_VIOLATION", "SCAN_SUCCEEDED_WITH_FAILURES_BLOCK", "SCAN_SUCCEEDED_WITH_FAILURES_WARN", @@ -7064,6 +7170,7 @@ "Rule fetch happened, but rule evaluation is skipped because none of the rules are applicable to the given trigger.", "Rule fetch happened, but rule evaluation is skipped because Changeling returned permanent failure while converting the attachment to text.", "Rule fetch happened, but rule evaluation is skipped because Changeling returned an empty response while converting the attachment to text.", + "Rule fetch happened, but rule evaluation is skipped because file type is unsupported.", "Rules were fetched but some evaluations failed. No violation was found in the rules that were successfully evaluated.", "Rules were fetched but some evaluations failed. A blocking violation was found in the rules that were successfully evaluated. The message/attachment will be blocked, the user will be notified, and the violation will be logged to BIP. A blocking violation takes precedence over all other violation types.", "Rules were fetched but some evaluations failed. A warn violation was found in the rules that were successfully evaluated. The user will be warned, and the violation will be logged to BIP.", @@ -8549,6 +8656,10 @@ "format": "int32", "type": "integer" }, + "filter": { + "$ref": "Filter", + "description": "Filter to be passed in the search request if the corresponding bucket is selected." + }, "percentage": { "description": "Percent of results that match the bucket value. The returned value is between (0-100], and is rounded down to an integer if fractional. If the value is not explicitly returned, it represents a percentage value that rounds to 0. Percentages are returned for all searches, but are an estimate. Because percentages are always returned, you should render percentages instead of counts.", "format": "int32", @@ -8564,6 +8675,10 @@ "description": "Specifies operators to return facet results for. There will be one FacetResult for every source_name/object_type/operator_name combination.", "id": "FacetOptions", "properties": { + "integerFacetingOptions": { + "$ref": "IntegerFacetingOptions", + "description": "If set, describes integer faceting options for the given integer property. The corresponding integer property in the schema should be marked isFacetable. The number of buckets returned would be minimum of this and num_facet_buckets." + }, "numFacetBuckets": { "description": "Maximum number of facet buckets that should be returned for this facet. Defaults to 10. Maximum value is 100.", "format": "int32", @@ -8637,6 +8752,18 @@ }, "type": "object" }, + "FilterCreated": { + "description": "A filter was created.", + "id": "FilterCreated", + "properties": {}, + "type": "object" + }, + "FilterDeleted": { + "description": "A filter was deleted.", + "id": "FilterDeleted", + "properties": {}, + "type": "object" + }, "FilterOptions": { "description": "Filter options to be applied on query.", "id": "FilterOptions", @@ -8652,6 +8779,22 @@ }, "type": "object" }, + "FilterUpdate": { + "description": "HistoryRecord for changes associated with a filter, namely: FILTER_CREATED FILTER_DELETED", + "id": "FilterUpdate", + "properties": { + "filterCreated": { + "$ref": "FilterCreated" + }, + "filterDeleted": { + "$ref": "FilterDeleted" + }, + "filterId": { + "type": "string" + } + }, + "type": "object" + }, "FixedFooter": { "description": "A persistent (sticky) footer that is added to the bottom of the card.", "id": "FixedFooter", @@ -8671,6 +8814,38 @@ }, "type": "object" }, + "Folder": { + "id": "Folder", + "properties": { + "id": { + "description": "Folder mapping id.", + "format": "uint64", + "type": "string" + }, + "message": { + "description": "One for each copy of the message in the IMAP folder.", + "items": { + "$ref": "ImapsyncFolderAttributeFolderMessage" + }, + "type": "array" + } + }, + "type": "object" + }, + "FolderAttribute": { + "description": "This is the content of //imapsync/folder attribute.", + "id": "FolderAttribute", + "properties": { + "folder": { + "description": "List of all IMAP folders where the message presents.", + "items": { + "$ref": "Folder" + }, + "type": "array" + } + }, + "type": "object" + }, "FormAction": { "id": "FormAction", "properties": { @@ -8805,6 +8980,118 @@ }, "type": "object" }, + "FuseboxItem": { + "description": "The Item message is the read interface for user data (traditionally referred to as a \"message\", such as a mail message or a chat message, but generalized to encompass other types such as tasks) and stored in Tingle. Each Item is associated with a single Thread. An Item contains three classes of data. (1): Item \"fields\" are common to items of all message types (e.g. mail, chat, task, etc.) and are identified by the ItemFieldSpec.FetchType enum when fetching Items. (2): Item \"attributes\" represent data associated with an Item that is stored on behalf of the client but to which the fusebox and storage layers are otherwise agnostic. (3): Item \"parts\" are application-defined protocol buffers that affect how the Item is indexed. Item parts are referenced as extensions to the ItemParts message. By default the application specifies the index terms associated with an Item part. For performance sensitive applications, the storage layer can be modified to understand and index data types natively.", + "id": "FuseboxItem", + "properties": { + "attributes": { + "$ref": "Attributes" + }, + "creationTimeMicroseconds": { + "description": "The creation time of the Item in micro seconds.", + "format": "uint64", + "type": "string" + }, + "history": { + "$ref": "History" + }, + "itemKey": { + "$ref": "MultiKey", + "description": "The key is used to refer to an item. Note that every field of the MultiKey is unique to the Item, and thus the Item can be looked up by any of the fields." + }, + "labels": { + "$ref": "Labels" + }, + "lastModificationTimeUs": { + "description": "The modification time of the Item in micro seconds. Modifications to the message include label addition, deletion, etc.", + "format": "uint64", + "type": "string" + }, + "lockerReferences": { + "$ref": "References", + "description": "go/lockpicker Locker counterpart of references." + }, + "matchInfo": { + "$ref": "MatchInfo" + }, + "parts": { + "$ref": "ItemParts", + "description": "Type-specific data are represented as extensions to the ItemParts message." + }, + "readTs": { + "description": "The read timestamp at which this item was read. This is a temporary field used to check if two items streamed during dual reading were read at the same timestamp. This will be populated by Fusebox RPCs. \"DO NOT USE UNLESS YOU TALK TO FUSEBOX TEAM (gmail-fusebox@)\".", + "format": "int64", + "type": "string" + }, + "references": { + "$ref": "References", + "description": "References to attachments, video attachments in Youtube and Hangout messages." + }, + "snippet": { + "description": "The snippet is a brief bit of text describing this item.", + "type": "string" + }, + "threadKey": { + "$ref": "MultiKey", + "description": "The key of the Thread with which this Item is associated." + }, + "threadLocator": { + "description": "A base64 encoded and encrypted string generated from the Gaia Id and the thread id. Used to generate the permalink for this thread, exposed from Gmail API.", + "type": "string" + }, + "triggers": { + "$ref": "Triggers" + }, + "version": { + "description": "The latest history operation id that resulted in a mutation of the item.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "FuseboxItemThreadMatchInfo": { + "description": "In the context of a search, the MatchInfo contains information about which Items matched the query.", + "id": "FuseboxItemThreadMatchInfo", + "properties": { + "clusterId": { + "description": "If SearchQuery.Options.Clustering is present, the query will be treated as a cluster query, and this field may be populated with the cluster ID of the cluster to which this thread belongs, if any. The cluster ID will be a label on the message.", + "type": "string" + }, + "lastMatchingItemId": { + "description": "The server id of the last item that matched the query. This is always set, regardless of the compute_matching_items_per_thread option. This is the value by which search results are sorted, in descending (i.e. newest first) order.", + "format": "uint64", + "type": "string" + }, + "lastMatchingItemKey": { + "$ref": "MultiKey", + "description": "The MultiKey of the last item that matched the query. This is always set, regardless of the compute_matching_items_per_thread option. This is the value by which search results are sorted, in descending (i.e. newest first) order." + }, + "matchingItemKey": { + "description": "If SearchQuery.Options.compute_matching_items_per_thread, this field will contain the keys of all items that matched the query, in ascending order. Note that this option requires extra computation.", + "items": { + "$ref": "MultiKey" + }, + "type": "array" + }, + "rank": { + "$ref": "Rank", + "description": "The rank of this ItemThread in the result set of the query. This rank may be used to sort ItemThreads in proper order. Ranks are specific to a query, and stable for a given query at a specific time." + } + }, + "type": "object" + }, + "FuseboxPrefUpdatePreState": { + "description": "If the Value field is not set this means the pref did not exist.", + "id": "FuseboxPrefUpdatePreState", + "properties": { + "value": { + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, "GSuitePrincipal": { "id": "GSuitePrincipal", "properties": { @@ -9027,17 +9314,6 @@ }, "type": "object" }, - "GoogleChatConfig": { - "description": "Configuration of the Google Chat in Meet.", - "id": "GoogleChatConfig", - "properties": { - "chatGroupId": { - "description": "ID of the Chat group.", - "type": "string" - } - }, - "type": "object" - }, "GoogleChatV1ContextualAddOnMarkup": { "description": "The markup for developers to specify the contents of a contextual AddOn.", "id": "GoogleChatV1ContextualAddOnMarkup", @@ -9864,6 +10140,103 @@ }, "type": "object" }, + "History": { + "description": "The most recent history records associated with the item.", + "id": "History", + "properties": { + "record": { + "items": { + "$ref": "HistoryRecord" + }, + "type": "array" + } + }, + "type": "object" + }, + "HistoryRecord": { + "id": "HistoryRecord", + "properties": { + "clientContext": { + "$ref": "ClientContext", + "description": "This will almost always be set, but there are corner cases in which the information is not available, and thus applications must handle its absence appropriately." + }, + "filterUpdate": { + "$ref": "FilterUpdate" + }, + "imapUpdate": { + "$ref": "ImapUpdate" + }, + "labelUpdate": { + "$ref": "LabelUpdate" + }, + "prefUpdate": { + "$ref": "PrefUpdate" + }, + "recordId": { + "description": "Each HistoryRecord has a unique id. Ids are monotonically increasing, and not necessarily contiguous.", + "format": "uint64", + "type": "string" + }, + "threadUpdate": { + "$ref": "ThreadUpdate" + }, + "transactionContext": { + "$ref": "TransactionContext", + "description": "This will almost always be set, but there are corner cases in which the information is not available, and thus applications must handle its absence appropriately." + }, + "txnDebugInfo": { + "$ref": "TransactionDebugInfo" + }, + "type": { + "enum": [ + "UNKNOWN", + "INTERNAL", + "MESSAGE_ADDED", + "MESSAGE_DELETED", + "LABEL_ADDED", + "LABEL_REMOVED", + "ATTRIBUTE_SET", + "ATTRIBUTE_REMOVED", + "THREAD_KEY_SET", + "LABEL_CREATED", + "LABEL_DELETED", + "LABEL_RENAMED", + "LABEL_UPDATED", + "PREF_WRITTEN", + "PREF_DELETED", + "FILTER_CREATED", + "FILTER_DELETED", + "IMAP_UIDS_REASSIGN", + "TOPIC_STATE_UPDATED", + "TXN_DEBUG_INFO" + ], + "enumDescriptions": [ + "Represents a type that is deprecated or not known by the executing code. Even if Fusebox sends a HistoryRecord with Type not UNKNOWN, it may send Type values that are not yet defined on the client-side, in which case they will be appear as Type.UNKNOWN on the client.", + "Represents a change internal to the Fusebox. HistoryRecords for Fusebox internal changes contribute to the user's version, which is defined as the latest HistoryRecord's record_id. INTERNAL HistoryRecords exist to allow a client to update its notion of the latest record_id it has processed, but do not necessarily contain any other information.", + "ThreadUpdate:", + "", + "", + "", + "", + "", + "", + "LabelUpdate:", + "", + "", + "", + "PrefUpdate:", + "", + "FilterUpdate:", + "", + "IMAP", + "EAI", + "TXN_DEBUG_INFO" + ], + "type": "string" + } + }, + "type": "object" + }, "HostAppActionMarkup": { "description": "Actions handled by individual host apps.", "id": "HostAppActionMarkup", @@ -10329,19 +10702,390 @@ }, "type": "object" }, - "IncomingWebhookChangedMetadata": { - "description": "Annotation metadata to display system messages for incoming webhook events. Next Tag: 7", - "id": "IncomingWebhookChangedMetadata", + "ImapSessionContext": { + "id": "ImapSessionContext", "properties": { - "incomingWebhookName": { - "description": "The webhook name at the time of the change. Used in Spanner storage, BE API responses and FE API responses.", + "app": { + "enum": [ + "OTHER_APP", + "CHROME", + "FIREFOX", + "MSIE", + "SAFARI", + "OPERA", + "EDGE", + "MSIE_COMPATIBILITY", + "OTHER_BROWSER", + "SAMSUNG_BROWSER", + "UC_BROWSER", + "ANDROID_BROWSER", + "YANDEX_BROWSER", + "SILK_BROWSER", + "COC_COC_BROWSER", + "MAX_BROWSER_APP_VALUE", + "GMAIL_APP", + "GMAIL_INBOX_APP", + "ANDROID_EMAIL_APP", + "SAMSUNG_MAIL_APP", + "MOTO_EMAIL_APP", + "BOXER_APP", + "LIMILABS_MAIL_DLL", + "BIS_APP", + "OUTLOOK_MAIL_APP", + "APPLE_NATIVE_APP", + "CHROME_WEBVIEW_APP", + "SAFARI_WEBVIEW_APP", + "CHROME_SYNC_APP", + "GSA_APP", + "GMM_APP", + "CALENDAR_APP", + "PLUS_APP", + "HANGOUTS_APP", + "HANGOUTS_MEET_APP", + "JAMBOARD_APP", + "VOICE_APP", + "PHOTOS_APP", + "DRIVE_SYNC_APP", + "DRIVE_APP", + "DOCS_APP", + "SHEETS_APP", + "SLIDES_APP", + "KEEP_APP", + "WHATS_APP_IN_DRIVE_APP", + "TRANSLATE_APP", + "YOUTUBE_APP", + "YOUTUBE_MUSIC_APP", + "YOUTUBE_GAMING_APP", + "YOUTUBE_KIDS_APP", + "YOUTUBE_CAPTURE_APP", + "YOUTUBE_CREATOR_APP", + "YOUTUBE_GO_APP", + "YOUTUBE_TV_APP", + "YOUTUBE_VR_APP", + "PLAY_APP", + "PLAY_MUSIC_APP", + "PLAY_BOOKS_APP", + "PLAY_MOVIES_APP", + "PLAY_NEWSSTAND_APP", + "PLAY_GAMES_APP", + "POKEMON_GO_APP", + "ALLO_APP", + "DUO_APP", + "CLASSROOM_APP", + "TRIPS_APP", + "GOOGLE_PAY_APP", + "WAZE_APP", + "ASSISTANT_APP", + "GBOARD_APP", + "NEWS_APP", + "HOME_APP", + "EARTH_APP", + "STREET_VIEW_APP", + "TEZ_APP", + "GOOGLE_ANALYTICS_APP", + "ADSENSE_APP", + "ADWORDS_APP", + "EXPRESS_APP", + "WEAR_APP", + "GOOGLE_MY_BUSINESS_APP", + "FAMILY_LINK_APP", + "OPINION_REWARDS_APP", + "WALLET_APP", + "ARTS_AND_CULTURE_APP", + "ANDROID_DEVICE_MANAGER_APP", + "GOOGLE_GO_APP", + "FILES_GO_APP", + "DATALLY_APP", + "WIFI_APP", + "STADIA_APP", + "BATTLESTAR_APP", + "SMART_LOCK_APP", + "LOGDOG_APP", + "DEPRECATED_MAC_OSX_MAIL_APP", + "DEPRECATED_IOS_MAIL_APP" + ], + "enumDescriptions": [ + "Unknown", + "Browsers Google Chrome", + "Mozilla Firefox", + "Microsoft Internet Explorer", + "Apple Safari", + "Opera", + "Tag #7 used to be CHROME_WEBVIEW, which was deprecated and replaced by CHROME_WEBVIEW_APP. When adding a new browser, skip #7 for safety. Microsoft Edge", + "MSIE in Compatibility View. See b/22467241.", + "Browser not otherwise specified", + "Samsung browser on Android", + "UC Browser", + "Android's legacy default AOSP browser (distinct", + "from customized OEM flavours). Yandex Browser", + "Amazon Silk browser", + "Popoular browser in Vietnam", + "Tag for the maximum enum value that represents a browser. Enum values (strictly) between OTHER_APP and this value represent browsers. This should never appear in real data.", + "Email apps Gmail", + "Inbox by Gmail", + "Native Android email app", + "(replaced by Gmail in Lollipop) Samsung mail", + "Motorola email app", + "Boxer", + "Mail.dll by Limilabs", + "BlackBerry Internet Service", + "Microsoft Outlook", + "Apple apps (mail, contacts \u0026 calendar)", + "Chrome Webview", + "Safari Webview", + "Chrome Sync", + "Includes both Now and Search on GSA.", + "Maps", + "Calendar", + "Google+", + "Hangouts Classic", + "Hangouts Meet", + "Jamboard app (go/jamboard)", + "Google Voice", + "Photos", + "Drive Sync", + "Drive", + "Docs", + "Sheets", + "Slides", + "Keep", + "WhatsApp in Drive", + "Translate", + "YouTube", + "YouTube Music", + "YouTube Gaming", + "YouTube Kids", + "YouTube Capture", + "YouTube Creator Studio", + "YouTube Go", + "YouTube TV", + "YouTube VR", + "Google Play", + "Google Play Music", + "Google Play Books", + "Google Play Movies \u0026 TV", + "Google Play Newsstand", + "Google Play Games", + "Pokemon GO (uses Google to sign in)", + "Allo", + "Duo", + "Google Classroom", + "Google Trips", + "Google Pay (formerly Android Pay)", + "Waze", + "Google Assistant standalone app. iOS only,", + "since on Android OPA is integrated in GSA. Gboard - the Google Keyboard", + "Google News \u0026 Weather", + "Google Home app (rebranded from Chromecast app)", + "Google Earth", + "Google Street View", + "Tez payment app for India (go/paisa)", + "Google Analytics", + "AdSense", + "AdWords", + "Google Express (formerly Shopping Express)", + "Android Wear companion app", + "Google My Business", + "Google Family Link", + "Google Opinion Rewards", + "Google Wallet", + "Google Arts \u0026 Culture", + "Android Device Manager", + "Google Go", + "Files Go", + "Datally", + "Google Wifi (incl. OnHub)", + "Stadia (go/stadia)", + "Battlestar (go/battlestar)", + "SmartLock", + "Non-browser, non-mail, non-first-party apps LogDog (https://getlogdog.com/)", + "Do not remove this fields - remvoing them caused issues in the past (see cl/180425348 for reference).", + "" + ], "type": "string" }, - "initiatorId": { - "$ref": "UserId", - "description": "The user id of the user whose action triggered this system message. Used in Spanner storage, BE API responses and FE API responses." - }, - "initiatorProfile": { + "deviceType": { + "description": "User agent information", + "enum": [ + "UNKNOWN", + "PC", + "MOBILE", + "TABLET", + "PORTABLE_MEDIA_PLAYER", + "TV", + "GAME_CONSOLE", + "MEDIA_PLAYER", + "SMART_SPEAKER", + "SMART_DISPLAY", + "CONNECTED_HOME_OTHER", + "WEARABLE", + "GLASS", + "CAR", + "VR_HEADSET" + ], + "enumDescriptions": [ + "Unknown device type.", + "PCs (incl. Macs). Desktops, laptops and various niche form factors that typically run desktop-class OSes (all-in-ones, HTPCs etc.).", + "Primarily used for phones, but also set as default for OSes that are predominantly for phones (Android, iOS etc.) when we can't determine otherwise.", + "Tablets.", + "Mobile devices which are not phones, but are capable of storing and playing digital media such as audio, images, and video files. Example: iPod.", + "Smart TVs which interact with Google products without an external additional device. Includes TV sets which run Android TV directly. Refers to actual TV screens, rather than connected boxes or dongles.", + "Devices whose primary purpose is playing games. Examples: Xbox, Playstation.", + "Add-on devices (i.e. devices which require connecting to another device, such as screens/TVs/speakers) whose primary purpose is media consumption (excludes physical TV screens). Examples: Chromecast, Roku, Apple TV, Nexus Player.", + "Examples: Google Home, Amazon Echo.", + "Examples: Google Home Display (Quartz/Manhattan/Jasper/Dragonglass), Amazon Echo Spot, Amazon Echo Show.", + "Other connected home devices which do not fit in any of the above categories; that is, neither media- or gaming-focused, nor primarily a voice-enabled speaker.", + "Wearable devices such as smartwatches.", + "Google Glass.", + "Examples: Android Auto (Embedded mode, not mirrored from phone).", + "Standalone VR headsets, such as the Lenovo Mirage Solo. Does not include phone-based VR (such as Daydream View or Gear VR) or PC/Console-based such as Oculus Rift, HTC Vive and PSVR; in such cases, the form factor may be PHONE, PC or GAME_CONSOLE as applicable." + ], + "type": "string" + }, + "guidFingerprint": { + "description": "As agreed with Bond team, this holds the fingerprint of any \"aguid\" or \"guid\" provided by the ID command. The fingerprint should be calculated by fingerprint2011. Note that not all clients will provide aguid or guid through ID command.", + "format": "uint64", + "type": "string" + }, + "os": { + "enum": [ + "UNKNOWN_OS", + "ANDROID_OS", + "IOS_OS", + "BLACKBERRY_OS", + "WIN_PHONE_OS", + "FIRE_OS", + "MAX_MOBILE_OS_VALUE", + "WINDOWS_OS", + "LINUX_OS", + "MAC_OS", + "CHROME_OS", + "PLAYSTATION_OS", + "XBOX_OS", + "TIZEN_OS", + "APPLE_TV_OS", + "KAI_OS", + "ANDROID_THINGS_OS", + "CAST_OS", + "STADIA_OS" + ], + "enumDescriptions": [ + "", + "Mobile operating systems (1-99).", + "", + "", + "", + "Amazon Fire OS (for Kindle Fire devices or Fire TV).", + "Tag for the maximum enum value that represents a mobile OS. Enum values (strictly) between UNKNOWN_OS and this value represent mobile OSes. This should never appear in real data.", + "PC operating systems.", + "", + "", + "", + "The OS powering Playstation consoles. Ignores OS changes across console generations.", + "The Windows-derived OS used on Xbox consoles.", + "Tizen OS, popular in Samsung TVs, watches and more.", + "Apple tvOS (powering the Apple TV).", + "KaiOS, a fork from Firefox OS that is between a full smartphone and a feature phone. Notably, it supports the Google Assistant. go/kaiosama", + "Android optimized for IoT devices. go/things", + "Cast family devices, including Chromecast, Google Home, and third-party speaker with integrated Assistant.", + "Stadia on Cast devices. This is not truly an OS, but it's a temporary setting since Stadia uses a different sign-in flow (and is revoked differently) from Cast. See http://go/stadia-in-google-account. Do not use without discussing with id-devices-eng@." + ], + "type": "string" + }, + "osVersion": { + "$ref": "OsVersion" + }, + "possiblyTrimmedModel": { + "$ref": "PossiblyTrimmedModel" + } + }, + "type": "object" + }, + "ImapSyncDelete": { + "description": "Message delete history record extension that exports //imapsync/folder attribute of deleted messages which have ^is label.", + "id": "ImapSyncDelete", + "properties": { + "mappings": { + "$ref": "FolderAttribute", + "description": "Contains the value of //imapsync/folder attribute of deleted message." + }, + "msgId": { + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "ImapUidsReassign": { + "id": "ImapUidsReassign", + "properties": { + "labelId": { + "description": "Label", + "type": "string" + }, + "messageId": { + "description": "The message Ids", + "items": { + "format": "uint64", + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ImapUpdate": { + "description": "HistoryRecord for changes associated with IMAP, namely: IMAP_UIDS_REASSIGN", + "id": "ImapUpdate", + "properties": { + "imapUidsReassign": { + "$ref": "ImapUidsReassign" + } + }, + "type": "object" + }, + "ImapsyncFolderAttributeFolderMessage": { + "id": "ImapsyncFolderAttributeFolderMessage", + "properties": { + "flags": { + "$ref": "ImapsyncFolderAttributeFolderMessageFlags", + "description": "Flags of the message. Represents unseen and flagged state." + }, + "uid": { + "description": "UID of the message.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "ImapsyncFolderAttributeFolderMessageFlags": { + "id": "ImapsyncFolderAttributeFolderMessageFlags", + "properties": { + "flagged": { + "description": "Flagged state of the message.", + "type": "boolean" + }, + "seen": { + "description": "Seen state of the message.", + "type": "boolean" + } + }, + "type": "object" + }, + "IncomingWebhookChangedMetadata": { + "description": "Annotation metadata to display system messages for incoming webhook events. Next Tag: 7", + "id": "IncomingWebhookChangedMetadata", + "properties": { + "incomingWebhookName": { + "description": "The webhook name at the time of the change. Used in Spanner storage, BE API responses and FE API responses.", + "type": "string" + }, + "initiatorId": { + "$ref": "UserId", + "description": "The user id of the user whose action triggered this system message. Used in Spanner storage, BE API responses and FE API responses." + }, + "initiatorProfile": { "$ref": "User", "description": "Complete profile when ListTopicsRequest FetchOptions.USER is set. Otherwise, only the id will be filled in. Used in FE API responses." }, @@ -10468,6 +11212,21 @@ }, "type": "object" }, + "IntegerFacetingOptions": { + "description": "Used to specify integer faceting options.", + "id": "IntegerFacetingOptions", + "properties": { + "integerBuckets": { + "description": "Buckets for given integer values should be in strictly ascending order. For example, if values supplied are (1,5,10,100), the following facet buckets will be formed {\u003c1, [1,5), [5-10), [10-100), \u003e=100}.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "IntegerOperatorOptions": { "description": "Used to provide a search operator for integer properties. This is optional. Search operators let users restrict the query to specific fields relevant to the type of item being searched.", "id": "IntegerOperatorOptions", @@ -10491,6 +11250,10 @@ "description": "The options for integer properties.", "id": "IntegerPropertyOptions", "properties": { + "integerFacetingOptions": { + "$ref": "IntegerFacetingOptions", + "description": "If set, describes integer faceting options for the given integer property. The corresponding integer property should be marked isFacetable." + }, "maximumValue": { "description": "The maximum value of the property. The minimum and maximum values for the property are used to rank results according to the ordered ranking. Indexing requests with values greater than the maximum are accepted and ranked with the same weight as items indexed with the maximum value.", "format": "int64", @@ -10880,6 +11643,12 @@ }, "type": "object" }, + "ItemParts": { + "description": "Container for type-specific extensions of an Item. This protobuf is defined in a separate file to allow types to reference/extend the message without depending on other fusebox protobufs. See items.proto.", + "id": "ItemParts", + "properties": {}, + "type": "object" + }, "ItemStatus": { "description": "This contains item's status and any errors.", "id": "ItemStatus", @@ -10934,6 +11703,67 @@ }, "type": "object" }, + "ItemThread": { + "description": "An ItemThread is an ordered list of Items. An ItemThread corresponds to a \"conversation\" in the context of mail. An Item belongs to exactly one ItemThread.", + "id": "ItemThread", + "properties": { + "clusterInfo": { + "$ref": "ClusterInfo" + }, + "item": { + "description": "The Items in the ItemThread. In the context of a search, the list of Items may be a subset of those that logically belong to the ItemThread. The details of which items are included are available in the ItemThreadView returned in the overall rpc response.", + "items": { + "$ref": "FuseboxItem" + }, + "type": "array" + }, + "lastItemId": { + "description": "The server id of the last item returned in the ItemThread. This can be deduced from the [item] list but is provided for convenience. When manually constructing an ItemThreadViewSpec to perform operations on the ItemThread, this value can be used as the [high_item_id_watermark].", + "format": "uint64", + "type": "string" + }, + "matchInfo": { + "$ref": "FuseboxItemThreadMatchInfo" + }, + "snippet": { + "description": "A snippet summarizing the thread. This field is only populated for searches.", + "type": "string" + }, + "threadKey": { + "$ref": "MultiKey", + "description": "The MultiKey that identifies this thread. This value never changes, i.e. remains constant across modifications to the thread, including addition, relabeling, or deletion of contained Items. As such, the thread key may not necessarily correspond to the key of an contained Item. Legacy note: The \"server_id\" of the thread key is equivalent to the notion of the \"original thread id\" in the CSS API." + }, + "threadLocator": { + "description": "A base64 encoded and encrypted string generated from the Gaia Id and the thread id. Used to generate the permalink for this thread, exposed from Gmail API.", + "type": "string" + }, + "topicState": { + "$ref": "TopicState", + "description": "Next available id : 10" + }, + "version": { + "description": "The latest history operation id that resulted in a mutation of any item in the thread.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "JobsettedServerSpec": { + "description": "Identifies a jobsetted server as a target for Trigger dispatch.", + "id": "JobsettedServerSpec", + "properties": { + "portName": { + "description": "E.g. \"gateway\", \"stubby\" etc. Leave unset to use the default unnamed port.", + "type": "string" + }, + "serverName": { + "description": "E.g. \"satellite-server\", \"bigtop-sync\", etc.", + "type": "string" + } + }, + "type": "object" + }, "KeyValue": { "id": "KeyValue", "properties": { @@ -11071,6 +11901,129 @@ }, "type": "object" }, + "LabelAdded": { + "description": "A label was added to some (subset of the) messages in this thread.", + "id": "LabelAdded", + "properties": { + "labelId": { + "type": "string" + }, + "labelName": { + "type": "string" + }, + "messageKeys": { + "items": { + "$ref": "MultiKey" + }, + "type": "array" + }, + "syncId": { + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "LabelCreated": { + "description": "A label was created.", + "id": "LabelCreated", + "properties": {}, + "type": "object" + }, + "LabelDeleted": { + "description": "A label was deleted.", + "id": "LabelDeleted", + "properties": {}, + "type": "object" + }, + "LabelRemoved": { + "description": "A label was removed from some (subset of the) messages in this thread.", + "id": "LabelRemoved", + "properties": { + "labelId": { + "type": "string" + }, + "labelName": { + "type": "string" + }, + "messageKeys": { + "items": { + "$ref": "MultiKey" + }, + "type": "array" + }, + "syncId": { + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "LabelRenamed": { + "description": "A label was renamed.", + "id": "LabelRenamed", + "properties": { + "oldCanonicalName": { + "type": "string" + } + }, + "type": "object" + }, + "LabelUpdate": { + "description": "HistoryRecord for changes associated with a label, namely: LABEL_CREATED LABEL_DELETED LABEL_RENAMED LABEL_UPDATED", + "id": "LabelUpdate", + "properties": { + "canonicalName": { + "type": "string" + }, + "labelCreated": { + "$ref": "LabelCreated" + }, + "labelDeleted": { + "$ref": "LabelDeleted" + }, + "labelId": { + "type": "string" + }, + "labelRenamed": { + "$ref": "LabelRenamed" + }, + "labelUpdated": { + "$ref": "LabelUpdated" + }, + "syncId": { + "format": "uint32", + "type": "integer" + } + }, + "type": "object" + }, + "LabelUpdated": { + "description": "A label pref was updated outside of a rename, create, or delete.", + "id": "LabelUpdated", + "properties": {}, + "type": "object" + }, + "Labels": { + "id": "Labels", + "properties": { + "displayName": { + "description": "The display name of the labels. This is populated (instead of the id) when the request fetch_spec has LABEL_DISPLAY_NAMES.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "The ids of the labels attached to the Item, e.g. \"^i\", \"^x_1\"", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "LanguageConfig": { "description": "The language configuration for the session.", "id": "LanguageConfig", @@ -11281,6 +12234,19 @@ }, "type": "object" }, + "MatchInfo": { + "id": "MatchInfo", + "properties": { + "matchingImageReferenceKey": { + "description": "Reference keys for image attachments that matches search query.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "MatchRange": { "description": "Matched range of a snippet [start, end).", "id": "MatchRange", @@ -11704,6 +12670,7 @@ "SCAN_RULE_EVALUATION_SKIPPED_NO_APPLICABLE_RULES_FOR_TRIGGER", "SCAN_RULE_EVALUATION_SKIPPED_CHANGELING_PERMANENT_ERROR", "SCAN_RULE_EVALUATION_SKIPPED_CHANGELING_EMPTY_RESPONSE", + "SCAN_RULE_EVALUATION_SKIPPED_UNSUPPORTED_FILE_TYPE", "SCAN_SUCCEEDED_WITH_FAILURES_NO_VIOLATION", "SCAN_SUCCEEDED_WITH_FAILURES_BLOCK", "SCAN_SUCCEEDED_WITH_FAILURES_WARN", @@ -11730,6 +12697,7 @@ "Rule fetch happened, but rule evaluation is skipped because none of the rules are applicable to the given trigger.", "Rule fetch happened, but rule evaluation is skipped because Changeling returned permanent failure while converting the attachment to text.", "Rule fetch happened, but rule evaluation is skipped because Changeling returned an empty response while converting the attachment to text.", + "Rule fetch happened, but rule evaluation is skipped because file type is unsupported.", "Rules were fetched but some evaluations failed. No violation was found in the rules that were successfully evaluated.", "Rules were fetched but some evaluations failed. A blocking violation was found in the rules that were successfully evaluated. The message/attachment will be blocked, the user will be notified, and the violation will be logged to BIP. A blocking violation takes precedence over all other violation types.", "Rules were fetched but some evaluations failed. A warn violation was found in the rules that were successfully evaluated. The user will be warned, and the violation will be logged to BIP.", @@ -11924,6 +12892,36 @@ }, "type": "object" }, + "MessageAdded": { + "description": "A message was added. Specifying id and initial labels.", + "id": "MessageAdded", + "properties": { + "attributeIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "labelIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "messageKey": { + "$ref": "MultiKey" + }, + "syncIds": { + "description": "Note that there can be fewer sync ids than label ids.", + "items": { + "format": "uint32", + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, "MessageAttributes": { "description": "Stores tombstone message attributes: go/tombstone-message-attributes-overview", "id": "MessageAttributes", @@ -11935,6 +12933,26 @@ }, "type": "object" }, + "MessageDeleted": { + "description": "Some (subset of the) messages in this thread were deleted.", + "id": "MessageDeleted", + "properties": { + "imapSyncMappings": { + "description": "Value of coproc's message delete history record extension that exports /imapsync/folder attribute of deleted messages which have ^is label.", + "items": { + "$ref": "ImapSyncDelete" + }, + "type": "array" + }, + "messageKeys": { + "items": { + "$ref": "MultiKey" + }, + "type": "array" + } + }, + "type": "object" + }, "MessageId": { "description": "Primary key for Message resource.", "id": "MessageId", @@ -11999,6 +13017,12 @@ }, "type": "object" }, + "MessageSet": { + "description": "This is proto2's version of MessageSet.", + "id": "MessageSet", + "properties": {}, + "type": "object" + }, "Metadata": { "description": "Metadata of a matched search result.", "id": "Metadata", @@ -12061,6 +13085,22 @@ }, "type": "object" }, + "MultiKey": { + "description": "A union-like type for identifiying an object in storage. MultiKeys contain multiple key fields, each in a separate key space. At least one key field must be set. More than one key field may be set as long as all key values refer to the same object. All objects in storage have unique server_id keys. All MultiKeys returned from storage to storage clients will always have the server_id field set. When creating an object, if a MultiKey without a server_id is supplied to storage, the storage system will auto-assign a server ID to the new object. For all other storage requests (i.e. those not creating new objects), clients may omit server_id (as long as they supply another key). Instead of server ids, clients can specify string based client_assigned_perm_id keys. Mail message drafts are a prime example of these kinds of objects. Each time a user saves a new version of a draft, the storage system needs to create a new object with the updated draft content and needs to delete the object containing the old content. The new object gets a new SERVER_ID but should get the same CLIENT_ASSIGNED_PERM_ID as the now-deleted object containing the old content. Carrying forward the perm ID allows it to be used to consistently refer to the same logical object across revisions. These perm IDs save sync clients from having to deal with changing object IDs. For example, assume there's a mail message in storage with SERVER_ID = 123 and CLIENT_ASSIGNED_PERM_ID = \"foo\". The following are all valid ways of addressing the object using MultiKeys: 1) MultiKey { server_id = 123 } 2) MultiKey { server_id = 123, client_assigned_perm_id = \"foo\" } 3) MultiKey { client_assigned_perm_id = \"foo\" } Multikeys are never serialized in the storage. The individual keys are extracted and processed separately. Both the integer ids as well as string ids are indexed for efficient retrieval using the same fields in the backend. See go/tingle-multikeys for more information on background and motivation.", + "id": "MultiKey", + "properties": { + "clientAssignedPermId": { + "description": "A client-assigned string based key.", + "type": "string" + }, + "serverId": { + "description": "A server-assigned ID. This ID must be used only by Gmail and is constructed using millesecond ts \u003c\u003c 20 + randomness. The ID affects the sort order of the index.", + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, "Name": { "description": "A person's name.", "id": "Name", @@ -12329,6 +13369,24 @@ }, "type": "object" }, + "OsVersion": { + "id": "OsVersion", + "properties": { + "majorVersion": { + "format": "int32", + "type": "integer" + }, + "minorVersion": { + "format": "int32", + "type": "integer" + }, + "tertiaryVersion": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "OtrChatMessageEvent": { "id": "OtrChatMessageEvent", "properties": { @@ -12652,6 +13710,19 @@ }, "type": "object" }, + "PossiblyTrimmedModel": { + "description": "This message contains either the device model, or a prefix of the device model (AKA a trimmed device model). The \"is_trimmed\" field indicates which one it is.", + "id": "PossiblyTrimmedModel", + "properties": { + "isTrimmed": { + "type": "boolean" + }, + "model": { + "type": "string" + } + }, + "type": "object" + }, "PostiniUserProto": { "description": "See http://s/?fileprint=//depot/google3/security/authentication/postini/auth_token.proto", "id": "PostiniUserProto", @@ -12663,6 +13734,70 @@ }, "type": "object" }, + "PreState": { + "description": "State of the thread previous to the update. This really just describes the label state of all messages before the update.", + "id": "PreState", + "properties": { + "labelIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "messageKey": { + "$ref": "MultiKey" + }, + "syncIds": { + "description": "Note that there can be fewer sync ids than label ids.", + "items": { + "format": "uint32", + "type": "integer" + }, + "type": "array" + }, + "threadKey": { + "$ref": "MultiKey" + } + }, + "type": "object" + }, + "PrefDeleted": { + "description": "PREF_DELETED", + "id": "PrefDeleted", + "properties": {}, + "type": "object" + }, + "PrefUpdate": { + "description": "HistoryRecord for changes associated with prefs, namely: PREF_WRITTEN PREF_DELETED", + "id": "PrefUpdate", + "properties": { + "name": { + "description": "Name of the affected preference.", + "type": "string" + }, + "preState": { + "$ref": "FuseboxPrefUpdatePreState" + }, + "prefDeleted": { + "$ref": "PrefDeleted" + }, + "prefWritten": { + "$ref": "PrefWritten" + } + }, + "type": "object" + }, + "PrefWritten": { + "description": "PREF_WRITTEN", + "id": "PrefWritten", + "properties": { + "value": { + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, "Presenter": { "description": "Presenter contains information about which device is currently presenting as well as which device requested the presenter to be set.", "id": "Presenter", @@ -12880,7 +14015,7 @@ "type": "object" }, "PrivateMessageInfo": { - "description": "Private message information specific to a given user.", + "description": "Private message information specific to a given user. DEPRECATED: Use the privateMessageViewer field in CreateMessageInfo instead.", "id": "PrivateMessageInfo", "properties": { "annotations": { @@ -13446,6 +14581,23 @@ }, "type": "object" }, + "Rank": { + "description": "The rank contains a tuple of numbers which may be used as a general sort order. The rank should be treated as an ordered set of numbers, where the ordering is done in descending order of the most significant rank member. For example, given the following ranks described as (primary, secondary): (1,1), (1,2), (2,2) (2,1) The descending rank-order is: (2,2) \u003e (2,1) \u003e (1,2) \u003e (1,1)", + "id": "Rank", + "properties": { + "primary": { + "description": "The primary rank is the most significant rank member. This rank element should always be present. Items with higher primary rank are always considered of higher rank than those of lower primary rank.", + "format": "int64", + "type": "string" + }, + "secondary": { + "description": "The secondary rank may be used to rank items of identical primary rank. This rank element should always be present.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "RbacRoleProto": { "description": "Principal associated with a given RBAC role. This principal is used by Sphinx Provisioning Service for RBAC (go/cedi-auth) provisionable (go/sphinx-rbacz-design).", "id": "RbacRoleProto", @@ -13623,6 +14775,46 @@ }, "type": "object" }, + "Reference": { + "description": "All fields in this proto are now columns in spanner see google3/storage/slice/production/gmail/user_data_tables.pi for documentation.", + "id": "Reference", + "properties": { + "blobId": { + "type": "string" + }, + "contentType": { + "type": "string" + }, + "hash": { + "type": "string" + }, + "key": { + "description": "LINT.IfChange", + "type": "string" + }, + "name": { + "description": "LINT.ThenChange(//depot/google3/storage/slice/production/gmail/ user_data_tables.pi)", + "type": "string" + }, + "size": { + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "References": { + "id": "References", + "properties": { + "references": { + "items": { + "$ref": "Reference" + }, + "type": "array" + } + }, + "type": "object" + }, "RenameEvent": { "id": "RenameEvent", "properties": { @@ -13725,9 +14917,11 @@ "enum": [ "REQUIRED_FEATURE_UNSPECIFIED", "REQUIRED_FEATURE_MESSAGE_QUOTING", - "REQUIRED_FEATURE_TOMBSTONES_IN_DMS_AND_UFRS" + "REQUIRED_FEATURE_TOMBSTONES_IN_DMS_AND_UFRS", + "REQUIRED_FEATURE_CUSTOM_HYPERLINK" ], "enumDescriptions": [ + "", "", "", "" @@ -14013,6 +15207,17 @@ }, "type": "object" }, + "RpcOptions": { + "description": "Options for Triggers dispatched via RPC.", + "id": "RpcOptions", + "properties": { + "requestExtensions": { + "$ref": "MessageSet", + "description": "The RPC's request extensions (i.e. RPC::request_extensions(), a.k.a. the Stubby side channel) will be merged with the specified [request_extensions]. When Triggers are batched, the RPC's request extensions will be merged with all of the [request_extensions] of the Triggers in the batch. Note that merging of request extensions follows standard protocol buffer semantics; values of singular fields override previous values, and values of repeated fields are appended (In the case of Triggers, Triggers with later fire times will be merged after Triggers with earlier fire times in the same batch). It is not advised to specify extensions with repeated fields on batchable Triggers." + } + }, + "type": "object" + }, "SafeUrlProto": { "description": "Message containing a string that is safe to use in URL contexts in DOM APIs and HTML documents, where the URL context does not refer to a resource that loads code.", "id": "SafeUrlProto", @@ -14510,6 +15715,40 @@ }, "type": "object" }, + "SessionContext": { + "id": "SessionContext", + "properties": { + "authTime": { + "description": "Time at which this activity's session was authenticated, in seconds since the epoch.", + "format": "int64", + "type": "string" + }, + "delegateUserId": { + "description": "Gaia ID of the authenticated user when delegate access is active. In such sessions the main gaia ID is that of the delegator, i.e. the account being accessed.", + "format": "int64", + "type": "string" + }, + "dusi": { + "description": "Device User Session ID, see go/dusi.", + "type": "string" + }, + "imapSessionContext": { + "$ref": "ImapSessionContext", + "description": "Imap session context for Bond/Gmail integration" + }, + "oauthLoginId": { + "description": "OAuth login ID.", + "format": "int32", + "type": "integer" + }, + "oauthProjectId": { + "description": "The devconsole project ID of the developer who authenticated with OAuth.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "SessionEvent": { "description": "A session event is something that happens to the streaming session in a conference.", "id": "SessionEvent", @@ -15512,6 +16751,79 @@ }, "type": "object" }, + "ThreadKeySet": { + "description": "The ThreadKey was set on some (subset of the) messages in this thread.", + "id": "ThreadKeySet", + "properties": { + "messageKeys": { + "description": "Messages on which the thread_key was changed.", + "items": { + "$ref": "MultiKey" + }, + "type": "array" + }, + "newThreadKey": { + "$ref": "MultiKey", + "description": "The new thread_key for this thread" + } + }, + "type": "object" + }, + "ThreadUpdate": { + "description": "HistoryRecord for changes associated with a thread, namely: MESSAGE_ADDED MESSAGE_DELETED LABEL_ADDED LABEL_REMOVED ATTRIBUTE_SET ATTRIBUTE_REMOVED THREAD_KEY_SET All label_ids refer to the (unchanging) value as defined by the Label.id field in labels.proto. In particular, it is *not* the canonical_name.", + "id": "ThreadUpdate", + "properties": { + "attributeRemoved": { + "$ref": "AttributeRemoved" + }, + "attributeSet": { + "$ref": "AttributeSet" + }, + "labelAdded": { + "$ref": "LabelAdded" + }, + "labelRemoved": { + "$ref": "LabelRemoved" + }, + "lastHistoryRecordId": { + "description": "Indicates the record id of the last operation that modified this thread.", + "format": "uint64", + "type": "string" + }, + "messageAdded": { + "$ref": "MessageAdded" + }, + "messageDeleted": { + "$ref": "MessageDeleted" + }, + "originalThreadKey": { + "$ref": "MultiKey", + "description": "The first non-empty thread-key on any message in the thread (including deleted messages). This field has been introduced to maintain backward compatibility for clients that are not subthread aware." + }, + "preState": { + "description": "The PreStates of all messages before the transaction. These are suppressed if the client requested that prestates not be included in the output of the GetHistoryRequest.", + "items": { + "$ref": "PreState" + }, + "type": "array" + }, + "threadKey": { + "$ref": "MultiKey", + "description": "Affected thread" + }, + "threadKeySet": { + "$ref": "ThreadKeySet" + }, + "threadLocator": { + "description": "Thread PLID", + "type": "string" + }, + "topicStateUpdate": { + "$ref": "TopicStateUpdate" + } + }, + "type": "object" + }, "TimestampOperatorOptions": { "description": "Used to provide a search operator for timestamp properties. This is optional. Search operators let users restrict the query to specific fields relevant to the type of item being searched.", "id": "TimestampOperatorOptions", @@ -15616,6 +16928,63 @@ }, "type": "object" }, + "TopicState": { + "description": "State of an topic thread as maintained within Tingle.", + "id": "TopicState", + "properties": { + "labelIdMessageCount": { + "additionalProperties": { + "format": "int32", + "type": "integer" + }, + "description": "Map of label =\u003e count of topic constituent messages with label These only contain counts of labels that are relevant for topic normalization/denormalization. Eg. If a topic thread has 5 constituents, 4 of which are in inbox, this will contain ^i =\u003e 4. Some labels of interest are archive, inbox, trash, spam, etc.", + "type": "object" + }, + "numConstituents": { + "description": "Number of constituents for this entity.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "TopicStateUpdate": { + "id": "TopicStateUpdate", + "properties": { + "topicState": { + "$ref": "TopicState" + } + }, + "type": "object" + }, + "TransactionContext": { + "description": "Storage information pertaining to the transaction with which a HistoryRecord is associated.", + "id": "TransactionContext", + "properties": { + "endingRecordId": { + "description": "The last HistoryRecord of the transaction. Note that this may correspond to a record that is filtered by Tingle (and thus not returned to the client). See http://b/9513464.", + "format": "uint64", + "type": "string" + }, + "startingRecordId": { + "description": "The first HistoryRecord of the transaction. Note that this may be a record of type INTERNAL.", + "format": "uint64", + "type": "string" + }, + "writeTimestampUs": { + "description": "The microsecond timestamp of the transaction.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "TransactionDebugInfo": { + "description": "HistoryRecord for debug info associated with the transaction, namely: TXN_DEBUG_INFO TODO(b/143845917) This is a short-term workaround for unblocking fusebox writes migration. Clean up the code or land a long-term solution after the rollout. go/diff-to-historyrecord", + "id": "TransactionDebugInfo", + "properties": {}, + "type": "object" + }, "TranscriptionSessionInfo": { "description": "Information about a transcription session.", "id": "TranscriptionSessionInfo", @@ -15637,6 +17006,200 @@ "properties": {}, "type": "object" }, + "Trigger": { + "id": "Trigger", + "properties": { + "actionType": { + "description": "Each dispatcher should use an enum to for the actions that it supports. If a dispatcher has only one action, this does not need to be set. (It can be expanded later, defining the default behaviour as type 0.) For purposes such as batching, the type of a trigger is (dispatcher, action_type).", + "format": "uint32", + "type": "integer" + }, + "batchTimeUs": { + "description": "Maximum possible delay in micros that can be tolerated so triggers can be batched, which makes processing more efficient compared to firing triggers individually. Note that the actual fire time will be somewhere in the timerange interval [fire_time_us, fire_time_us + batch_time_us).", + "format": "int64", + "type": "string" + }, + "dispatchId": { + "description": "Must be set for DISPATCHER_STUBBY_DISPATCHER.", + "format": "uint32", + "type": "integer" + }, + "dispatcher": { + "description": "Which server should interpret action_type.", + "enum": [ + "DISPATCHER_COPROC", + "DISPATCHER_JOBSETTED_PRIMARY", + "DISPATCHER_STRATUS", + "DISPATCHER_TASKS_SERVER", + "DISPATCHER_STUBBY_DISPATCHER", + "DISPATCHER_CS" + ], + "enumDescriptions": [ + "Replace ACTION_INVOKE_X; the CS and Stratus are no longer limited to a single type of action. Each additional remote client should be defined here.", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "fireTimeUs": { + "description": "Earliest time to fire at in microseconds. The actual time that the trigger will fire will be in the timerange: [fire_time_us, fire_time_us + batch_time_us).", + "format": "int64", + "type": "string" + }, + "jobsettedServerSpec": { + "$ref": "JobsettedServerSpec", + "description": "Must be set for DISPATCHER_JOBSETTED_PRIMARY." + }, + "key": { + "description": "The trigger key, if applicable.", + "type": "string" + }, + "rpcOptions": { + "$ref": "RpcOptions" + }, + "sliceFireTimeUs": { + "description": "The slice_fire_time_us is automatically computed and stored as part of the trigger write. It represents the exact fire time at which the trigger will be queued to fire and will satisfy fire_time_us \u003c slice_fire_time_us \u003c= fire_time_us + batch_time_us Triggers have an index row in the slice trigger index with the row prefix matching this time. Note that this field is internal to gmail_cp and is ignored if set by external clients when adding / updating triggers.", + "format": "int64", + "type": "string" + }, + "triggerAction": { + "$ref": "TriggerAction", + "description": "Trigger action to perform. This should always be set." + }, + "triggerKey": { + "$ref": "TriggerKey", + "description": "The TriggerKey will uniquely determine a trigger within a given context. A context is a single message for message triggers or a single account for account triggers." + } + }, + "type": "object" + }, + "TriggerAction": { + "id": "TriggerAction", + "properties": { + "action": { + "enum": [ + "ACTION_NONE", + "ACTION_DELETE", + "ACTION_CREATE_NEW_TRIGGER", + "ACTION_MESSAGE_EXPUNGE", + "ACTION_RETENTION_POLICY_UPDATE", + "ACTION_UPDATE_ICEBOX_MODEL", + "ACTION_INVOKE_CS", + "ACTION_INVOKE_STRATUS", + "ACTION_PDH_EXPUNGE", + "ACTION_QUERY_RETENTION", + "ACTION_INVOKE_JOBSETTED_PRIMARY", + "ACTION_INVOKE_TASKS_SERVER", + "ACTION_INVOKE_PUBLISHER", + "ACTION_INVOKE_OBSERVER", + "ACTION_PUSH_HISTORY_TO_PDH", + "ACTION_INVOKE_STUBBY_DISPATCHER", + "ACTION_PDH_BACKFILL", + "ACTION_MESSAGE_UNDELETE", + "ACTION_VAULT_END_USER_ACCESS", + "ACTION_INVOKE_GROUPS", + "ACTION_ACCOUNT_INITIALIZATION", + "ACTION_INVOKE_OBSERVER_WIPEOUT", + "ACTION_SERVICE_REMOVED_MESSAGE_EXPUNGE", + "ACTION_EVERCLEAR_EXPUNGE", + "ACTION_INVOKE_SMIME_CERTIFICATE_ISSUER", + "ACTION_GROUPS_QUERY_RETENTION", + "ACTION_INVOKE_SATELLITE_BACKUP", + "ACTION_INVOKE_DEBUG_LOG", + "ACTION_PREFERENCE_CLEANUP", + "ACTION_CARIBOU_DATA_RETENTION", + "ACTION_HISTORY_CLEANUP", + "ACTION_ITEM_BULK_RELABEL", + "ACTION_INVOKE_SATELLITE_IMAGE_PROCESSING", + "ACTION_CARIBOU_DATA_RETENTION_DIFF", + "ACTION_RELEVANCY_SCORE_BACKFILL", + "ACTION_PDH_PUSH_NOTIFICATION_BACKFILL", + "ACTION_AUTO_SAVE_DRAFT_EXPUNGE" + ], + "enumDescriptions": [ + "", + "No-op", + "No-op", + "This action begins the message expunge process. It will trigger a purge attempt for all messages that have this trigger.", + "When this trigger fires, the current retention policy will be loaded from the policy management system and stored into the preference cache (if necessary). This will also create new expunge triggers if necessary.", + "When this trigger fires, the message should be used to update the user's importance model. See http://go/io-tingle for more details.", + "Sends the trigger to the master Caribou server via the Stubby TriggerHandlerService interface (defined in caribou/coproc/proto/trigger_handler.proto). The trigger is handled at fire time in the account's primary replica, and only in non-primary replicas after a delay.", + "Similar to ACTION_INVOKE_CS, but instead of sending the trigger to the master Caribou server, sends it to a Stratus server that also implements the TriggerHandlerService. This Stratus server is specified via FLAGS_triggers_stratus_server_address. The trigger is handled at fire time in the account's primary replica, and only in non-primary replicas after a delay.", + "This action begins the message's PDH expunge. It will trigger a expunge (from pdh) attempt for all messages that have this trigger.", + "When this trigger fires, based on the latest retention policy: 1. messages that need to be deleted will be deleted through the CS trigger handler 2. ^deleted messages that need to be expunged will be expunged", + "Similar to ACTION_INVOKE_CS, but instead of sending the trigger to the master Caribou server, sends it to a jobsetted server in the user's master jobset using the consistent-hash homing algorithm. The jobsetted_server_spec must be specified when using this TriggerAction.", + "Send the trigger to a Tasks server that implements the TriggerHandlerService. Dispatched via GSLB target specified by FLAGS_triggers_tasks_server_address.", + "Send the trigger to a SmartMail Publisher server that implements the TriggerHandlerService. Dispatched via GSLB target specified by FLAGS_triggers_publisher_server_address.", + "Send the trigger to an Observer server that implements the TriggerHandlerService. Dispatched via GSLB target specified by FLAGS_triggers_observer_server_address.", + "Push a set of history records to PDH.", + "Send the trigger to the stubby dispatcher, which routes the RPC using the value of Trigger.dispatch_id as the RoutingInfo.extension_tag field. Dispatched via the GSLB target specified by FLAGS_triggers_stubby_dispatcher_address.", + "Backfills a set of records from an account and pushes them to PDH.", + "Move messages from ^deleted to ^all. This trigger will only undelete messages that were deleted before the fire time of the trigger. Also, messages whose blobs are already deleted will not be undeleted. This is an account trigger.", + "This trigger will undelete messages that were ^deleted arbitrarily long in the past and a trash label will be applied to these undeleted messages. This is an account trigger that will be written when the Vault admin enables end user access for the Vault customer. This trigger shares its implementation with the ACTION_MESSAGE_UNDELETE trigger.", + "Send the trigger to a groups server that implements the TriggerHandlerService. Dispatched via GSLB target specified by FLAGS_triggers_groups_server_address.", + "This trigger will be executed once per newly created account. It will be created as part of the first transaction written to the account. The trigger can also be written as part of an SVF in case we want to re-initialize every account.", + "Send the trigger to an Observer server that implements the TriggerHandlerService for wipeout purpose. Dispatched via GSLB target specified by FLAGS_triggers_observer_server_address. It behaves differently from the invoke observer trigger (ACTION_INVOKE_OBSERVER) and should be batched separately. Tingle always fires this kind of action trigger for ^deleted messages.", + "Begins the message expunge similar to ACTION_MESSAGE_EXPUNGE but doesn't check if the message was deleted at least 30 days back. To be used ONLY for service removal. See go/gmail-service-removal for more details.", + "Sends RPC to everclear for the message expunge.", + "Send the trigger to the S/MIME certificate issuer server. Dispatched via the GSLB target specified by FLAGS_triggers_smime_certificate_issuer_server_address.", + "The retention trigger that will be written to implement Groups retention.", + "Dispatches the permanent backup trigger to Satellite through Stubby dispatcher.", + "Process the debug log trigger by adding message body before dispatching to the Caribou Server through Stubby Dispatcher.", + "This trigger deletes expired temporary preferences. See go/tingle-temp-prefs for more details.", + "Similar to ACTION_QUERY_RETENTION but uses the MessageRetention policies to trash/delete the messages: cs/caribou/base/lib/proto/data_retention.proto .", + "This trigger deletes expired HistoryRecords. See go/history-record-cleanup for more details.", + "This trigger relabels messages asynchronously. See go/fusebox-bulk-api for more details.", + "Dispatches the image processing trigger to Satellite through Stubby dispatcher. See go/gmail-photo-sharing for details.", + "Trigger for executing comparison logic between the output of ApplyDataRetention idle task and CaribouDataRetention trigger.", + "Trigger for backfill relevancy score. see go/gmail-relevancy-scoring-write for detail.", + "Trigger to backfill gaps left by pdh pushed via push notification. see go/tingle-moonshine-push-v2", + "Begins the message expunge similar to ACTION_MESSAGE_EXPUNGE but fires within one day. To be used ONLY for auto save drafts. See go/faster-auto-save-draft-deletion for more details." + ], + "type": "string" + }, + "data": { + "description": "Clients should use extensions on the Trigger message instead.", + "format": "byte", + "type": "string" + }, + "dataInt": { + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "TriggerKey": { + "description": "A TriggerKey (type + instance_id) uniquely identifies a trigger within a message for a message-trigger and within an account for an account-trigger.", + "id": "TriggerKey", + "properties": { + "instanceId": { + "description": "Identifier to distinguish multiple Triggers of the same type (per message or per account).", + "type": "string" + }, + "type": { + "description": "A non-empty string that identifies the type of Trigger. Triggers of the same type may be batched together. The universe of values for the type field should be finite as it is used as a stats key.", + "type": "string" + } + }, + "type": "object" + }, + "Triggers": { + "id": "Triggers", + "properties": { + "triggers": { + "description": "A list of triggers.", + "items": { + "$ref": "Trigger" + }, + "type": "array" + } + }, + "type": "object" + }, "TrustedResourceUrlProto": { "description": "Message containing a string that is safe to use in all URL contexts in DOM APIs and HTML documents; even where the referred-to resource is interpreted as code, e.g., as the src of a script element.", "id": "TrustedResourceUrlProto", @@ -15920,6 +17483,11 @@ "$ref": "AppsDynamiteSharedDlpMetricsMetadata", "description": "The metrics metadata of the Data Loss Prevention attachment scan." }, + "latestVirusScanTimestamp": { + "description": "The timestamp of the most recent virus scan completed (in microseconds).", + "format": "int64", + "type": "string" + }, "localId": { "description": "A copy of the LocalId in Annotation. This field is supposed to be filled by server only.", "type": "string" diff --git a/cloudsearch/v1/cloudsearch-gen.go b/cloudsearch/v1/cloudsearch-gen.go index 952d02e9228..b240c7c4aa7 100644 --- a/cloudsearch/v1/cloudsearch-gen.go +++ b/cloudsearch/v1/cloudsearch-gen.go @@ -1653,6 +1653,9 @@ type AppsDynamiteSharedBackendUploadMetadata struct { // "SCAN_RULE_EVALUATION_SKIPPED_CHANGELING_EMPTY_RESPONSE" - Rule // fetch happened, but rule evaluation is skipped because Changeling // returned an empty response while converting the attachment to text. + // "SCAN_RULE_EVALUATION_SKIPPED_UNSUPPORTED_FILE_TYPE" - Rule fetch + // happened, but rule evaluation is skipped because file type is + // unsupported. // "SCAN_SUCCEEDED_WITH_FAILURES_NO_VIOLATION" - Rules were fetched // but some evaluations failed. No violation was found in the rules that // were successfully evaluated. @@ -5405,6 +5408,130 @@ func (s *Attachment) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Attribute: An Attribute is a piece of data attached an Item. +// Attributes are opaque to the Starbox and have no effect on, nor are +// they effected by, message storage, indexing, or search. +type Attribute struct { + // Name: The name of the attribute. Required - If a write is attempted + // with an empty string, the server will return an error. + Name string `json:"name,omitempty"` + + Value *CaribouAttributeValue `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Attribute) MarshalJSON() ([]byte, error) { + type NoMethod Attribute + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AttributeRemoved: An attribute was deleted from some (subset of the) +// messages in this thread. +type AttributeRemoved struct { + AttributeId string `json:"attributeId,omitempty"` + + MessageKeys []*MultiKey `json:"messageKeys,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AttributeId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AttributeId") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AttributeRemoved) MarshalJSON() ([]byte, error) { + type NoMethod AttributeRemoved + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AttributeSet: An attribute was added to some (subset of the) messages +// in this thread. +type AttributeSet struct { + AttributeId string `json:"attributeId,omitempty"` + + // AttributeValue: The serialized attribute_value as persisted in the + // storage layer. The application is responsible for deserializing it to + // an Attribute.Value if appropriate. + AttributeValue string `json:"attributeValue,omitempty"` + + MessageKeys []*MultiKey `json:"messageKeys,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AttributeId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AttributeId") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AttributeSet) MarshalJSON() ([]byte, error) { + type NoMethod AttributeSet + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type Attributes struct { + Attribute []*Attribute `json:"attribute,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Attribute") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Attribute") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Attributes) MarshalJSON() ([]byte, error) { + type NoMethod Attributes + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // AuditLoggingSettings: Represents the settings for Cloud audit logging type AuditLoggingSettings struct { // LogAdminReadActions: Indicates whether audit logging is on/off for @@ -6087,9 +6214,6 @@ type CallInfo struct { // server. CalendarEventId string `json:"calendarEventId,omitempty"` - // ChatConfig: Configuration for the chat for this conference. - ChatConfig *ChatConfig `json:"chatConfig,omitempty"` - // CoActivity: The current co-activity session, or unset if there is // none in progress. A co-activity session can be initiated by devices // in JOINED state . Initiator of the co-activity is expected to @@ -6124,7 +6248,8 @@ type CallInfo struct { // supposed to present the information. The information should be // displayed in a debug panel and is only intended for internal // debugging purposes. If the string is empty nothing should be - // displayed about the media backend. + // displayed about the media backend. Deprecated because media backend + // is always MEDIA_ROUTER since Dec 2018. MediaBackendInfo string `json:"mediaBackendInfo,omitempty"` // OrganizationName: Output only. The name or description of the @@ -6480,24 +6605,27 @@ func (s *CardHeader) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// ChatClientActionMarkup: Actions handled by Chat Clients. -type ChatClientActionMarkup struct { -} +type CaribouAttributeValue struct { + // BooleanValue: Tags 1 through 15 are reserved for the most commonly + // used fields. + BooleanValue bool `json:"booleanValue,omitempty"` -// ChatConfig: Configuration of the in meeting chat. -type ChatConfig struct { - // ChatType: The Type of chat this Conference is currently using. - // - // Possible values: - // "CHAT_TYPE_UNSPECIFIED" - Chat Type has not been specified. - // "MEET_CHAT" - Meets native chat. - // "GOOGLE_CHAT" - Google Chat. - ChatType string `json:"chatType,omitempty"` + IntValue int64 `json:"intValue,omitempty"` + + LongValue int64 `json:"longValue,omitempty,string"` + + // RawByteValue: Generally, applications should avoid storing raw bytes + // and instead store structured data as protocol buffer extensions. This + // both reduces the amount of ad-hoc attribute parsing code as well as + // eliminates an intermediate copy of the data when deserializing the + // value. The rawByteValue field is mainly provided for compatibility + // with attributes stored before the introduction of the + // Attribute.Value. + RawByteValue string `json:"rawByteValue,omitempty"` - // GoogleChatConfig: The configuration of Google Chat when selected. - GoogleChatConfig *GoogleChatConfig `json:"googleChatConfig,omitempty"` + StringValue string `json:"stringValue,omitempty"` - // ForceSendFields is a list of field names (e.g. "ChatType") to + // ForceSendFields is a list of field names (e.g. "BooleanValue") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -6505,21 +6633,25 @@ type ChatConfig struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "ChatType") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "BooleanValue") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } -func (s *ChatConfig) MarshalJSON() ([]byte, error) { - type NoMethod ChatConfig +func (s *CaribouAttributeValue) MarshalJSON() ([]byte, error) { + type NoMethod CaribouAttributeValue raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ChatClientActionMarkup: Actions handled by Chat Clients. +type ChatClientActionMarkup struct { +} + // ChatConserverDynamitePlaceholderMetadata: Metadata used as inputs to // the localization that is performed on Dynamite-originated messages // that are incompatible with Hangouts clients. See @@ -6869,6 +7001,54 @@ func (s *CircleProto) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ClientContext: Represents the context of the client on behalf of +// which a HistoryRecord is produced. The ClientContext message can be +// used to hold context about the service client (e.g. the internal +// server making fusebox requests) or the user client (e.g. the IP +// address of the end user). +type ClientContext struct { + // ClientOperationId: The client operation to which this history record + // belongs. The notion of a client operation is provided to keep track + // of client operations which might span multiple transactions in the + // lower level. + ClientOperationId string `json:"clientOperationId,omitempty"` + + // ClientType: E.g. "pinto", "imap", "bigtop", "upload" + ClientType string `json:"clientType,omitempty"` + + // SessionContext: Contains information about the session which created + // this history record. This will be empty if the history record was + // generated by an internal request. + SessionContext *SessionContext `json:"sessionContext,omitempty"` + + // UserIp: Textual representation of the user's IP address, if + // available. + UserIp string `json:"userIp,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClientOperationId") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ClientOperationId") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ClientContext) MarshalJSON() ([]byte, error) { + type NoMethod ClientContext + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // CloudPrincipalProto: Principal associated with a Cloud Principal // representing third party user. type CloudPrincipalProto struct { @@ -6899,6 +7079,45 @@ func (s *CloudPrincipalProto) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ClusterInfo: ClusterInfo contains clustering related information for +// a particular thread that would be sent as part of the conversation +// view. Today, this information would be used by iOS notification +// server to identify whether the thread belongs to a cluster. If the +// thread belongs to a grouped cluster, it would identify whether the +// cluster is throttled. +type ClusterInfo struct { + // ClusterId: IDs of the highest priority clusters to which the thread + // belongs to. If this field is not present, the thread does not belong + // to any cluster and would be shown in the inbox, unclustered. + ClusterId []string `json:"clusterId,omitempty"` + + // Throttled: If the thread belongs to a grouped cluster and all of + // those clusters are throttled, then this field is set to true. + Throttled bool `json:"throttled,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ClusterId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ClusterInfo) MarshalJSON() ([]byte, error) { + type NoMethod ClusterInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // CoActivity: Metadata about a co-activity session. type CoActivity struct { // ActivityTitle: The title of the activity in this co-activity session. @@ -6917,6 +7136,7 @@ type CoActivity struct { // "CO_ACTIVITY_APP_HEADSUP" - HeadsUp game. // "CO_ACTIVITY_APP_KAHOOT" - Kahoot! educational software. // "CO_ACTIVITY_APP_GQUEUES" - GQueues task manager. + // "CO_ACTIVITY_APP_YOU_TUBE_MUSIC" - YouTube Music CoActivityApp string `json:"coActivityApp,omitempty"` // ForceSendFields is a list of field names (e.g. "ActivityTitle") to @@ -8464,6 +8684,9 @@ type DlpScanSummary struct { // "SCAN_RULE_EVALUATION_SKIPPED_CHANGELING_EMPTY_RESPONSE" - Rule // fetch happened, but rule evaluation is skipped because Changeling // returned an empty response while converting the attachment to text. + // "SCAN_RULE_EVALUATION_SKIPPED_UNSUPPORTED_FILE_TYPE" - Rule fetch + // happened, but rule evaluation is skipped because file type is + // unsupported. // "SCAN_SUCCEEDED_WITH_FAILURES_NO_VIOLATION" - Rules were fetched // but some evaluations failed. No violation was found in the rules that // were successfully evaluated. @@ -10018,6 +10241,10 @@ type FacetBucket struct { // percentages which are always returned. Count int64 `json:"count,omitempty"` + // Filter: Filter to be passed in the search request if the + // corresponding bucket is selected. + Filter *Filter `json:"filter,omitempty"` + // Percentage: Percent of results that match the bucket value. The // returned value is between (0-100], and is rounded down to an integer // if fractional. If the value is not explicitly returned, it represents @@ -10055,6 +10282,12 @@ func (s *FacetBucket) MarshalJSON() ([]byte, error) { // will be one FacetResult for every // source_name/object_type/operator_name combination. type FacetOptions struct { + // IntegerFacetingOptions: If set, describes integer faceting options + // for the given integer property. The corresponding integer property in + // the schema should be marked isFacetable. The number of buckets + // returned would be minimum of this and num_facet_buckets. + IntegerFacetingOptions *IntegerFacetingOptions `json:"integerFacetingOptions,omitempty"` + // NumFacetBuckets: Maximum number of facet buckets that should be // returned for this facet. Defaults to 10. Maximum value is 100. NumFacetBuckets int64 `json:"numFacetBuckets,omitempty"` @@ -10072,18 +10305,19 @@ type FacetOptions struct { // If empty, all data sources will be used. SourceName string `json:"sourceName,omitempty"` - // ForceSendFields is a list of field names (e.g. "NumFacetBuckets") to - // unconditionally include in API requests. By default, fields with - // empty or default values are omitted from API requests. However, any - // non-pointer, non-interface field appearing in ForceSendFields will be - // sent to the server regardless of whether the field is empty or not. - // This may be used to include empty fields in Patch requests. + // ForceSendFields is a list of field names (e.g. + // "IntegerFacetingOptions") to unconditionally include in API requests. + // By default, fields with empty or default values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "NumFacetBuckets") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the + // NullFields is a list of field names (e.g. "IntegerFacetingOptions") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the // server as null. It is an error if a field in this list has a // non-empty value. This may be used to include null fields in Patch // requests. @@ -10203,6 +10437,14 @@ func (s *Filter) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// FilterCreated: A filter was created. +type FilterCreated struct { +} + +// FilterDeleted: A filter was deleted. +type FilterDeleted struct { +} + // FilterOptions: Filter options to be applied on query. type FilterOptions struct { // Filter: Generic filter to restrict the search, such as `lang:en`, @@ -10238,6 +10480,38 @@ func (s *FilterOptions) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// FilterUpdate: HistoryRecord for changes associated with a filter, +// namely: FILTER_CREATED FILTER_DELETED +type FilterUpdate struct { + FilterCreated *FilterCreated `json:"filterCreated,omitempty"` + + FilterDeleted *FilterDeleted `json:"filterDeleted,omitempty"` + + FilterId string `json:"filterId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FilterCreated") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FilterCreated") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FilterUpdate) MarshalJSON() ([]byte, error) { + type NoMethod FilterUpdate + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // FixedFooter: A persistent (sticky) footer that is added to the bottom // of the card. type FixedFooter struct { @@ -10270,6 +10544,64 @@ func (s *FixedFooter) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type Folder struct { + // Id: Folder mapping id. + Id uint64 `json:"id,omitempty,string"` + + // Message: One for each copy of the message in the IMAP folder. + Message []*ImapsyncFolderAttributeFolderMessage `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Id") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Id") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Folder) MarshalJSON() ([]byte, error) { + type NoMethod Folder + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FolderAttribute: This is the content of //imapsync/folder attribute. +type FolderAttribute struct { + // Folder: List of all IMAP folders where the message presents. + Folder []*Folder `json:"folder,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Folder") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Folder") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FolderAttribute) MarshalJSON() ([]byte, error) { + type NoMethod FolderAttribute + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type FormAction struct { // ActionMethodName: Apps script function that should be invoked in the // developer's apps script when the containing element is @@ -10479,21 +10811,201 @@ func (s *FreshnessOptions) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -type GSuitePrincipal struct { - // GsuiteDomain: This principal represents all users of the Google - // Workspace domain of the customer. - GsuiteDomain bool `json:"gsuiteDomain,omitempty"` +// FuseboxItem: The Item message is the read interface for user data +// (traditionally referred to as a "message", such as a mail message or +// a chat message, but generalized to encompass other types such as +// tasks) and stored in Tingle. Each Item is associated with a single +// Thread. An Item contains three classes of data. (1): Item "fields" +// are common to items of all message types (e.g. mail, chat, task, +// etc.) and are identified by the ItemFieldSpec.FetchType enum when +// fetching Items. (2): Item "attributes" represent data associated with +// an Item that is stored on behalf of the client but to which the +// fusebox and storage layers are otherwise agnostic. (3): Item "parts" +// are application-defined protocol buffers that affect how the Item is +// indexed. Item parts are referenced as extensions to the ItemParts +// message. By default the application specifies the index terms +// associated with an Item part. For performance sensitive applications, +// the storage layer can be modified to understand and index data types +// natively. +type FuseboxItem struct { + Attributes *Attributes `json:"attributes,omitempty"` - // GsuiteGroupEmail: This principal references a Google Workspace group - // name. - GsuiteGroupEmail string `json:"gsuiteGroupEmail,omitempty"` + // CreationTimeMicroseconds: The creation time of the Item in micro + // seconds. + CreationTimeMicroseconds uint64 `json:"creationTimeMicroseconds,omitempty,string"` - // GsuiteUserEmail: This principal references a Google Workspace user - // account. - GsuiteUserEmail string `json:"gsuiteUserEmail,omitempty"` + History *History `json:"history,omitempty"` - // ForceSendFields is a list of field names (e.g. "GsuiteDomain") to - // unconditionally include in API requests. By default, fields with + // ItemKey: The key is used to refer to an item. Note that every field + // of the MultiKey is unique to the Item, and thus the Item can be + // looked up by any of the fields. + ItemKey *MultiKey `json:"itemKey,omitempty"` + + Labels *Labels `json:"labels,omitempty"` + + // LastModificationTimeUs: The modification time of the Item in micro + // seconds. Modifications to the message include label addition, + // deletion, etc. + LastModificationTimeUs uint64 `json:"lastModificationTimeUs,omitempty,string"` + + // LockerReferences: go/lockpicker Locker counterpart of references. + LockerReferences *References `json:"lockerReferences,omitempty"` + + MatchInfo *MatchInfo `json:"matchInfo,omitempty"` + + // Parts: Type-specific data are represented as extensions to the + // ItemParts message. + Parts *ItemParts `json:"parts,omitempty"` + + // ReadTs: The read timestamp at which this item was read. This is a + // temporary field used to check if two items streamed during dual + // reading were read at the same timestamp. This will be populated by + // Fusebox RPCs. "DO NOT USE UNLESS YOU TALK TO FUSEBOX TEAM + // (gmail-fusebox@)". + ReadTs int64 `json:"readTs,omitempty,string"` + + // References: References to attachments, video attachments in Youtube + // and Hangout messages. + References *References `json:"references,omitempty"` + + // Snippet: The snippet is a brief bit of text describing this item. + Snippet string `json:"snippet,omitempty"` + + // ThreadKey: The key of the Thread with which this Item is associated. + ThreadKey *MultiKey `json:"threadKey,omitempty"` + + // ThreadLocator: A base64 encoded and encrypted string generated from + // the Gaia Id and the thread id. Used to generate the permalink for + // this thread, exposed from Gmail API. + ThreadLocator string `json:"threadLocator,omitempty"` + + Triggers *Triggers `json:"triggers,omitempty"` + + // Version: The latest history operation id that resulted in a mutation + // of the item. + Version uint64 `json:"version,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "Attributes") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Attributes") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FuseboxItem) MarshalJSON() ([]byte, error) { + type NoMethod FuseboxItem + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FuseboxItemThreadMatchInfo: In the context of a search, the MatchInfo +// contains information about which Items matched the query. +type FuseboxItemThreadMatchInfo struct { + // ClusterId: If SearchQuery.Options.Clustering is present, the query + // will be treated as a cluster query, and this field may be populated + // with the cluster ID of the cluster to which this thread belongs, if + // any. The cluster ID will be a label on the message. + ClusterId string `json:"clusterId,omitempty"` + + // LastMatchingItemId: The server id of the last item that matched the + // query. This is always set, regardless of the + // compute_matching_items_per_thread option. This is the value by which + // search results are sorted, in descending (i.e. newest first) order. + LastMatchingItemId uint64 `json:"lastMatchingItemId,omitempty,string"` + + // LastMatchingItemKey: The MultiKey of the last item that matched the + // query. This is always set, regardless of the + // compute_matching_items_per_thread option. This is the value by which + // search results are sorted, in descending (i.e. newest first) order. + LastMatchingItemKey *MultiKey `json:"lastMatchingItemKey,omitempty"` + + // MatchingItemKey: If + // SearchQuery.Options.compute_matching_items_per_thread, this field + // will contain the keys of all items that matched the query, in + // ascending order. Note that this option requires extra computation. + MatchingItemKey []*MultiKey `json:"matchingItemKey,omitempty"` + + // Rank: The rank of this ItemThread in the result set of the query. + // This rank may be used to sort ItemThreads in proper order. Ranks are + // specific to a query, and stable for a given query at a specific time. + Rank *Rank `json:"rank,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClusterId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ClusterId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FuseboxItemThreadMatchInfo) MarshalJSON() ([]byte, error) { + type NoMethod FuseboxItemThreadMatchInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FuseboxPrefUpdatePreState: If the Value field is not set this means +// the pref did not exist. +type FuseboxPrefUpdatePreState struct { + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Value") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Value") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FuseboxPrefUpdatePreState) MarshalJSON() ([]byte, error) { + type NoMethod FuseboxPrefUpdatePreState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type GSuitePrincipal struct { + // GsuiteDomain: This principal represents all users of the Google + // Workspace domain of the customer. + GsuiteDomain bool `json:"gsuiteDomain,omitempty"` + + // GsuiteGroupEmail: This principal references a Google Workspace group + // name. + GsuiteGroupEmail string `json:"gsuiteGroupEmail,omitempty"` + + // GsuiteUserEmail: This principal references a Google Workspace user + // account. + GsuiteUserEmail string `json:"gsuiteUserEmail,omitempty"` + + // ForceSendFields is a list of field names (e.g. "GsuiteDomain") to + // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be // sent to the server regardless of whether the field is empty or not. @@ -10978,34 +11490,6 @@ func (s *GmailClientActionMarkup) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleChatConfig: Configuration of the Google Chat in Meet. -type GoogleChatConfig struct { - // ChatGroupId: ID of the Chat group. - ChatGroupId string `json:"chatGroupId,omitempty"` - - // ForceSendFields is a list of field names (e.g. "ChatGroupId") to - // unconditionally include in API requests. By default, fields with - // empty or default values are omitted from API requests. However, any - // non-pointer, non-interface field appearing in ForceSendFields will be - // sent to the server regardless of whether the field is empty or not. - // This may be used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "ChatGroupId") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *GoogleChatConfig) MarshalJSON() ([]byte, error) { - type NoMethod GoogleChatConfig - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // GoogleChatV1ContextualAddOnMarkup: The markup for developers to // specify the contents of a contextual AddOn. type GoogleChatV1ContextualAddOnMarkup struct { @@ -12190,6 +12674,115 @@ func (s *HashtagData) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// History: The most recent history records associated with the item. +type History struct { + Record []*HistoryRecord `json:"record,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Record") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Record") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *History) MarshalJSON() ([]byte, error) { + type NoMethod History + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type HistoryRecord struct { + // ClientContext: This will almost always be set, but there are corner + // cases in which the information is not available, and thus + // applications must handle its absence appropriately. + ClientContext *ClientContext `json:"clientContext,omitempty"` + + FilterUpdate *FilterUpdate `json:"filterUpdate,omitempty"` + + ImapUpdate *ImapUpdate `json:"imapUpdate,omitempty"` + + LabelUpdate *LabelUpdate `json:"labelUpdate,omitempty"` + + PrefUpdate *PrefUpdate `json:"prefUpdate,omitempty"` + + // RecordId: Each HistoryRecord has a unique id. Ids are monotonically + // increasing, and not necessarily contiguous. + RecordId uint64 `json:"recordId,omitempty,string"` + + ThreadUpdate *ThreadUpdate `json:"threadUpdate,omitempty"` + + // TransactionContext: This will almost always be set, but there are + // corner cases in which the information is not available, and thus + // applications must handle its absence appropriately. + TransactionContext *TransactionContext `json:"transactionContext,omitempty"` + + TxnDebugInfo *TransactionDebugInfo `json:"txnDebugInfo,omitempty"` + + // Possible values: + // "UNKNOWN" - Represents a type that is deprecated or not known by + // the executing code. Even if Fusebox sends a HistoryRecord with Type + // not UNKNOWN, it may send Type values that are not yet defined on the + // client-side, in which case they will be appear as Type.UNKNOWN on the + // client. + // "INTERNAL" - Represents a change internal to the Fusebox. + // HistoryRecords for Fusebox internal changes contribute to the user's + // version, which is defined as the latest HistoryRecord's record_id. + // INTERNAL HistoryRecords exist to allow a client to update its notion + // of the latest record_id it has processed, but do not necessarily + // contain any other information. + // "MESSAGE_ADDED" - ThreadUpdate: + // "MESSAGE_DELETED" + // "LABEL_ADDED" + // "LABEL_REMOVED" + // "ATTRIBUTE_SET" + // "ATTRIBUTE_REMOVED" + // "THREAD_KEY_SET" + // "LABEL_CREATED" - LabelUpdate: + // "LABEL_DELETED" + // "LABEL_RENAMED" + // "LABEL_UPDATED" + // "PREF_WRITTEN" - PrefUpdate: + // "PREF_DELETED" + // "FILTER_CREATED" - FilterUpdate: + // "FILTER_DELETED" + // "IMAP_UIDS_REASSIGN" - IMAP + // "TOPIC_STATE_UPDATED" - EAI + // "TXN_DEBUG_INFO" - TXN_DEBUG_INFO + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ClientContext") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ClientContext") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *HistoryRecord) MarshalJSON() ([]byte, error) { + type NoMethod HistoryRecord + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // HostAppActionMarkup: Actions handled by individual host apps. type HostAppActionMarkup struct { // CalendarAction: Actions handled by Calendar. @@ -12778,89 +13371,456 @@ func (s *ImageKeyValue) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// IncomingWebhookChangedMetadata: Annotation metadata to display system -// messages for incoming webhook events. Next Tag: 7 -type IncomingWebhookChangedMetadata struct { - // IncomingWebhookName: The webhook name at the time of the change. Used - // in Spanner storage, BE API responses and FE API responses. - IncomingWebhookName string `json:"incomingWebhookName,omitempty"` - - // InitiatorId: The user id of the user whose action triggered this - // system message. Used in Spanner storage, BE API responses and FE API - // responses. - InitiatorId *UserId `json:"initiatorId,omitempty"` +type ImapSessionContext struct { + // Possible values: + // "OTHER_APP" - Unknown + // "CHROME" - Browsers Google Chrome + // "FIREFOX" - Mozilla Firefox + // "MSIE" - Microsoft Internet Explorer + // "SAFARI" - Apple Safari + // "OPERA" - Opera + // "EDGE" - Tag #7 used to be CHROME_WEBVIEW, which was deprecated and + // replaced by CHROME_WEBVIEW_APP. When adding a new browser, skip #7 + // for safety. Microsoft Edge + // "MSIE_COMPATIBILITY" - MSIE in Compatibility View. See b/22467241. + // "OTHER_BROWSER" - Browser not otherwise specified + // "SAMSUNG_BROWSER" - Samsung browser on Android + // "UC_BROWSER" - UC Browser + // "ANDROID_BROWSER" - Android's legacy default AOSP browser (distinct + // "YANDEX_BROWSER" - from customized OEM flavours). Yandex Browser + // "SILK_BROWSER" - Amazon Silk browser + // "COC_COC_BROWSER" - Popoular browser in Vietnam + // "MAX_BROWSER_APP_VALUE" - Tag for the maximum enum value that + // represents a browser. Enum values (strictly) between OTHER_APP and + // this value represent browsers. This should never appear in real data. + // "GMAIL_APP" - Email apps Gmail + // "GMAIL_INBOX_APP" - Inbox by Gmail + // "ANDROID_EMAIL_APP" - Native Android email app + // "SAMSUNG_MAIL_APP" - (replaced by Gmail in Lollipop) Samsung mail + // "MOTO_EMAIL_APP" - Motorola email app + // "BOXER_APP" - Boxer + // "LIMILABS_MAIL_DLL" - Mail.dll by Limilabs + // "BIS_APP" - BlackBerry Internet Service + // "OUTLOOK_MAIL_APP" - Microsoft Outlook + // "APPLE_NATIVE_APP" - Apple apps (mail, contacts & calendar) + // "CHROME_WEBVIEW_APP" - Chrome Webview + // "SAFARI_WEBVIEW_APP" - Safari Webview + // "CHROME_SYNC_APP" - Chrome Sync + // "GSA_APP" - Includes both Now and Search on GSA. + // "GMM_APP" - Maps + // "CALENDAR_APP" - Calendar + // "PLUS_APP" - Google+ + // "HANGOUTS_APP" - Hangouts Classic + // "HANGOUTS_MEET_APP" - Hangouts Meet + // "JAMBOARD_APP" - Jamboard app (go/jamboard) + // "VOICE_APP" - Google Voice + // "PHOTOS_APP" - Photos + // "DRIVE_SYNC_APP" - Drive Sync + // "DRIVE_APP" - Drive + // "DOCS_APP" - Docs + // "SHEETS_APP" - Sheets + // "SLIDES_APP" - Slides + // "KEEP_APP" - Keep + // "WHATS_APP_IN_DRIVE_APP" - WhatsApp in Drive + // "TRANSLATE_APP" - Translate + // "YOUTUBE_APP" - YouTube + // "YOUTUBE_MUSIC_APP" - YouTube Music + // "YOUTUBE_GAMING_APP" - YouTube Gaming + // "YOUTUBE_KIDS_APP" - YouTube Kids + // "YOUTUBE_CAPTURE_APP" - YouTube Capture + // "YOUTUBE_CREATOR_APP" - YouTube Creator Studio + // "YOUTUBE_GO_APP" - YouTube Go + // "YOUTUBE_TV_APP" - YouTube TV + // "YOUTUBE_VR_APP" - YouTube VR + // "PLAY_APP" - Google Play + // "PLAY_MUSIC_APP" - Google Play Music + // "PLAY_BOOKS_APP" - Google Play Books + // "PLAY_MOVIES_APP" - Google Play Movies & TV + // "PLAY_NEWSSTAND_APP" - Google Play Newsstand + // "PLAY_GAMES_APP" - Google Play Games + // "POKEMON_GO_APP" - Pokemon GO (uses Google to sign in) + // "ALLO_APP" - Allo + // "DUO_APP" - Duo + // "CLASSROOM_APP" - Google Classroom + // "TRIPS_APP" - Google Trips + // "GOOGLE_PAY_APP" - Google Pay (formerly Android Pay) + // "WAZE_APP" - Waze + // "ASSISTANT_APP" - Google Assistant standalone app. iOS only, + // "GBOARD_APP" - since on Android OPA is integrated in GSA. Gboard - + // the Google Keyboard + // "NEWS_APP" - Google News & Weather + // "HOME_APP" - Google Home app (rebranded from Chromecast app) + // "EARTH_APP" - Google Earth + // "STREET_VIEW_APP" - Google Street View + // "TEZ_APP" - Tez payment app for India (go/paisa) + // "GOOGLE_ANALYTICS_APP" - Google Analytics + // "ADSENSE_APP" - AdSense + // "ADWORDS_APP" - AdWords + // "EXPRESS_APP" - Google Express (formerly Shopping Express) + // "WEAR_APP" - Android Wear companion app + // "GOOGLE_MY_BUSINESS_APP" - Google My Business + // "FAMILY_LINK_APP" - Google Family Link + // "OPINION_REWARDS_APP" - Google Opinion Rewards + // "WALLET_APP" - Google Wallet + // "ARTS_AND_CULTURE_APP" - Google Arts & Culture + // "ANDROID_DEVICE_MANAGER_APP" - Android Device Manager + // "GOOGLE_GO_APP" - Google Go + // "FILES_GO_APP" - Files Go + // "DATALLY_APP" - Datally + // "WIFI_APP" - Google Wifi (incl. OnHub) + // "STADIA_APP" - Stadia (go/stadia) + // "BATTLESTAR_APP" - Battlestar (go/battlestar) + // "SMART_LOCK_APP" - SmartLock + // "LOGDOG_APP" - Non-browser, non-mail, non-first-party apps LogDog + // (https://getlogdog.com/) + // "DEPRECATED_MAC_OSX_MAIL_APP" - Do not remove this fields - + // remvoing them caused issues in the past (see cl/180425348 for + // reference). + // "DEPRECATED_IOS_MAIL_APP" + App string `json:"app,omitempty"` + + // DeviceType: User agent information + // + // Possible values: + // "UNKNOWN" - Unknown device type. + // "PC" - PCs (incl. Macs). Desktops, laptops and various niche form + // factors that typically run desktop-class OSes (all-in-ones, HTPCs + // etc.). + // "MOBILE" - Primarily used for phones, but also set as default for + // OSes that are predominantly for phones (Android, iOS etc.) when we + // can't determine otherwise. + // "TABLET" - Tablets. + // "PORTABLE_MEDIA_PLAYER" - Mobile devices which are not phones, but + // are capable of storing and playing digital media such as audio, + // images, and video files. Example: iPod. + // "TV" - Smart TVs which interact with Google products without an + // external additional device. Includes TV sets which run Android TV + // directly. Refers to actual TV screens, rather than connected boxes or + // dongles. + // "GAME_CONSOLE" - Devices whose primary purpose is playing games. + // Examples: Xbox, Playstation. + // "MEDIA_PLAYER" - Add-on devices (i.e. devices which require + // connecting to another device, such as screens/TVs/speakers) whose + // primary purpose is media consumption (excludes physical TV screens). + // Examples: Chromecast, Roku, Apple TV, Nexus Player. + // "SMART_SPEAKER" - Examples: Google Home, Amazon Echo. + // "SMART_DISPLAY" - Examples: Google Home Display + // (Quartz/Manhattan/Jasper/Dragonglass), Amazon Echo Spot, Amazon Echo + // Show. + // "CONNECTED_HOME_OTHER" - Other connected home devices which do not + // fit in any of the above categories; that is, neither media- or + // gaming-focused, nor primarily a voice-enabled speaker. + // "WEARABLE" - Wearable devices such as smartwatches. + // "GLASS" - Google Glass. + // "CAR" - Examples: Android Auto (Embedded mode, not mirrored from + // phone). + // "VR_HEADSET" - Standalone VR headsets, such as the Lenovo Mirage + // Solo. Does not include phone-based VR (such as Daydream View or Gear + // VR) or PC/Console-based such as Oculus Rift, HTC Vive and PSVR; in + // such cases, the form factor may be PHONE, PC or GAME_CONSOLE as + // applicable. + DeviceType string `json:"deviceType,omitempty"` + + // GuidFingerprint: As agreed with Bond team, this holds the fingerprint + // of any "aguid" or "guid" provided by the ID command. The fingerprint + // should be calculated by fingerprint2011. Note that not all clients + // will provide aguid or guid through ID command. + GuidFingerprint uint64 `json:"guidFingerprint,omitempty,string"` - // InitiatorProfile: Complete profile when ListTopicsRequest - // FetchOptions.USER is set. Otherwise, only the id will be filled in. - // Used in FE API responses. - InitiatorProfile *User `json:"initiatorProfile,omitempty"` + // Possible values: + // "UNKNOWN_OS" + // "ANDROID_OS" - Mobile operating systems (1-99). + // "IOS_OS" + // "BLACKBERRY_OS" + // "WIN_PHONE_OS" + // "FIRE_OS" - Amazon Fire OS (for Kindle Fire devices or Fire TV). + // "MAX_MOBILE_OS_VALUE" - Tag for the maximum enum value that + // represents a mobile OS. Enum values (strictly) between UNKNOWN_OS and + // this value represent mobile OSes. This should never appear in real + // data. + // "WINDOWS_OS" - PC operating systems. + // "LINUX_OS" + // "MAC_OS" + // "CHROME_OS" + // "PLAYSTATION_OS" - The OS powering Playstation consoles. Ignores OS + // changes across console generations. + // "XBOX_OS" - The Windows-derived OS used on Xbox consoles. + // "TIZEN_OS" - Tizen OS, popular in Samsung TVs, watches and more. + // "APPLE_TV_OS" - Apple tvOS (powering the Apple TV). + // "KAI_OS" - KaiOS, a fork from Firefox OS that is between a full + // smartphone and a feature phone. Notably, it supports the Google + // Assistant. go/kaiosama + // "ANDROID_THINGS_OS" - Android optimized for IoT devices. go/things + // "CAST_OS" - Cast family devices, including Chromecast, Google Home, + // and third-party speaker with integrated Assistant. + // "STADIA_OS" - Stadia on Cast devices. This is not truly an OS, but + // it's a temporary setting since Stadia uses a different sign-in flow + // (and is revoked differently) from Cast. See + // http://go/stadia-in-google-account. Do not use without discussing + // with id-devices-eng@. + Os string `json:"os,omitempty"` + + OsVersion *OsVersion `json:"osVersion,omitempty"` + + PossiblyTrimmedModel *PossiblyTrimmedModel `json:"possiblyTrimmedModel,omitempty"` + + // ForceSendFields is a list of field names (e.g. "App") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "App") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} - // ObfuscatedIncomingWebhookId: The webhook id of the incoming webhook - // in question. This field should not be used to load webhook - // information dynamically and is only present for debugging purposes. - // Used in Spanner storage, BE API responses and FE API responses. - ObfuscatedIncomingWebhookId string `json:"obfuscatedIncomingWebhookId,omitempty"` +func (s *ImapSessionContext) MarshalJSON() ([]byte, error) { + type NoMethod ImapSessionContext + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} - // OldIncomingWebhookName: Only populated for UPDATED_NAME and - // UPDATED_NAME_AND_AVATAR events, where the webhook name was changed. - // Used in Spanner storage, BE API responses and FE API responses. - OldIncomingWebhookName string `json:"oldIncomingWebhookName,omitempty"` +// ImapSyncDelete: Message delete history record extension that exports +// //imapsync/folder attribute of deleted messages which have ^is label. +type ImapSyncDelete struct { + // Mappings: Contains the value of //imapsync/folder attribute of + // deleted message. + Mappings *FolderAttribute `json:"mappings,omitempty"` - // Type: Used in Spanner storage, BE API responses and FE API responses. - // - // Possible values: - // "UNSPECIFIED" - // "ADDED" - // "UPDATED" - TODO (b/154857280): remove UPDATED field. - // "REMOVED" - // "UPDATED_NAME" - // "UPDATED_AVATAR" - // "UPDATED_NAME_AND_AVATAR" - Type string `json:"type,omitempty"` + MsgId uint64 `json:"msgId,omitempty,string"` - // ForceSendFields is a list of field names (e.g. "IncomingWebhookName") - // to unconditionally include in API requests. By default, fields with + // ForceSendFields is a list of field names (e.g. "Mappings") to + // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be // sent to the server regardless of whether the field is empty or not. // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "IncomingWebhookName") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. + // NullFields is a list of field names (e.g. "Mappings") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } -func (s *IncomingWebhookChangedMetadata) MarshalJSON() ([]byte, error) { - type NoMethod IncomingWebhookChangedMetadata +func (s *ImapSyncDelete) MarshalJSON() ([]byte, error) { + type NoMethod ImapSyncDelete raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -type IndexItemOptions struct { - // AllowUnknownGsuitePrincipals: Specifies if the index request should - // allow Google Workspace principals that do not exist or are deleted. - AllowUnknownGsuitePrincipals bool `json:"allowUnknownGsuitePrincipals,omitempty"` +type ImapUidsReassign struct { + // LabelId: Label + LabelId string `json:"labelId,omitempty"` - // ForceSendFields is a list of field names (e.g. - // "AllowUnknownGsuitePrincipals") to unconditionally include in API - // requests. By default, fields with empty or default values are omitted - // from API requests. However, any non-pointer, non-interface field - // appearing in ForceSendFields will be sent to the server regardless of - // whether the field is empty or not. This may be used to include empty - // fields in Patch requests. + // MessageId: The message Ids + MessageId googleapi.Uint64s `json:"messageId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LabelId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. - // "AllowUnknownGsuitePrincipals") to include in API requests with the - // JSON null value. By default, fields with empty values are omitted - // from API requests. However, any field with an empty value appearing - // in NullFields will be sent to the server as null. It is an error if a + // NullFields is a list of field names (e.g. "LabelId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ImapUidsReassign) MarshalJSON() ([]byte, error) { + type NoMethod ImapUidsReassign + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ImapUpdate: HistoryRecord for changes associated with IMAP, namely: +// IMAP_UIDS_REASSIGN +type ImapUpdate struct { + ImapUidsReassign *ImapUidsReassign `json:"imapUidsReassign,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ImapUidsReassign") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ImapUidsReassign") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ImapUpdate) MarshalJSON() ([]byte, error) { + type NoMethod ImapUpdate + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type ImapsyncFolderAttributeFolderMessage struct { + // Flags: Flags of the message. Represents unseen and flagged state. + Flags *ImapsyncFolderAttributeFolderMessageFlags `json:"flags,omitempty"` + + // Uid: UID of the message. + Uid uint64 `json:"uid,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "Flags") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Flags") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ImapsyncFolderAttributeFolderMessage) MarshalJSON() ([]byte, error) { + type NoMethod ImapsyncFolderAttributeFolderMessage + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type ImapsyncFolderAttributeFolderMessageFlags struct { + // Flagged: Flagged state of the message. + Flagged bool `json:"flagged,omitempty"` + + // Seen: Seen state of the message. + Seen bool `json:"seen,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Flagged") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Flagged") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ImapsyncFolderAttributeFolderMessageFlags) MarshalJSON() ([]byte, error) { + type NoMethod ImapsyncFolderAttributeFolderMessageFlags + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// IncomingWebhookChangedMetadata: Annotation metadata to display system +// messages for incoming webhook events. Next Tag: 7 +type IncomingWebhookChangedMetadata struct { + // IncomingWebhookName: The webhook name at the time of the change. Used + // in Spanner storage, BE API responses and FE API responses. + IncomingWebhookName string `json:"incomingWebhookName,omitempty"` + + // InitiatorId: The user id of the user whose action triggered this + // system message. Used in Spanner storage, BE API responses and FE API + // responses. + InitiatorId *UserId `json:"initiatorId,omitempty"` + + // InitiatorProfile: Complete profile when ListTopicsRequest + // FetchOptions.USER is set. Otherwise, only the id will be filled in. + // Used in FE API responses. + InitiatorProfile *User `json:"initiatorProfile,omitempty"` + + // ObfuscatedIncomingWebhookId: The webhook id of the incoming webhook + // in question. This field should not be used to load webhook + // information dynamically and is only present for debugging purposes. + // Used in Spanner storage, BE API responses and FE API responses. + ObfuscatedIncomingWebhookId string `json:"obfuscatedIncomingWebhookId,omitempty"` + + // OldIncomingWebhookName: Only populated for UPDATED_NAME and + // UPDATED_NAME_AND_AVATAR events, where the webhook name was changed. + // Used in Spanner storage, BE API responses and FE API responses. + OldIncomingWebhookName string `json:"oldIncomingWebhookName,omitempty"` + + // Type: Used in Spanner storage, BE API responses and FE API responses. + // + // Possible values: + // "UNSPECIFIED" + // "ADDED" + // "UPDATED" - TODO (b/154857280): remove UPDATED field. + // "REMOVED" + // "UPDATED_NAME" + // "UPDATED_AVATAR" + // "UPDATED_NAME_AND_AVATAR" + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IncomingWebhookName") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "IncomingWebhookName") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *IncomingWebhookChangedMetadata) MarshalJSON() ([]byte, error) { + type NoMethod IncomingWebhookChangedMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type IndexItemOptions struct { + // AllowUnknownGsuitePrincipals: Specifies if the index request should + // allow Google Workspace principals that do not exist or are deleted. + AllowUnknownGsuitePrincipals bool `json:"allowUnknownGsuitePrincipals,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "AllowUnknownGsuitePrincipals") to unconditionally include in API + // requests. By default, fields with empty or default values are omitted + // from API requests. However, any non-pointer, non-interface field + // appearing in ForceSendFields will be sent to the server regardless of + // whether the field is empty or not. This may be used to include empty + // fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "AllowUnknownGsuitePrincipals") to include in API requests with the + // JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a // field in this list has a non-empty value. This may be used to include // null fields in Patch requests. NullFields []string `json:"-"` @@ -12971,6 +13931,38 @@ func (s *InsertContent) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// IntegerFacetingOptions: Used to specify integer faceting options. +type IntegerFacetingOptions struct { + // IntegerBuckets: Buckets for given integer values should be in + // strictly ascending order. For example, if values supplied are + // (1,5,10,100), the following facet buckets will be formed {<1, [1,5), + // [5-10), [10-100), >=100}. + IntegerBuckets googleapi.Int64s `json:"integerBuckets,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IntegerBuckets") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "IntegerBuckets") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *IntegerFacetingOptions) MarshalJSON() ([]byte, error) { + type NoMethod IntegerFacetingOptions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // IntegerOperatorOptions: Used to provide a search operator for integer // properties. This is optional. Search operators let users restrict the // query to specific fields relevant to the type of item being searched. @@ -13033,6 +14025,11 @@ func (s *IntegerOperatorOptions) MarshalJSON() ([]byte, error) { // IntegerPropertyOptions: The options for integer properties. type IntegerPropertyOptions struct { + // IntegerFacetingOptions: If set, describes integer faceting options + // for the given integer property. The corresponding integer property + // should be marked isFacetable. + IntegerFacetingOptions *IntegerFacetingOptions `json:"integerFacetingOptions,omitempty"` + // MaximumValue: The maximum value of the property. The minimum and // maximum values for the property are used to rank results according to // the ordered ranking. Indexing requests with values greater than the @@ -13063,20 +14060,22 @@ type IntegerPropertyOptions struct { // values indicate higher ranking. OrderedRanking string `json:"orderedRanking,omitempty"` - // ForceSendFields is a list of field names (e.g. "MaximumValue") to - // unconditionally include in API requests. By default, fields with - // empty or default values are omitted from API requests. However, any - // non-pointer, non-interface field appearing in ForceSendFields will be - // sent to the server regardless of whether the field is empty or not. - // This may be used to include empty fields in Patch requests. + // ForceSendFields is a list of field names (e.g. + // "IntegerFacetingOptions") to unconditionally include in API requests. + // By default, fields with empty or default values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "MaximumValue") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "IntegerFacetingOptions") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -13632,6 +14631,13 @@ func (s *ItemMetadata) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ItemParts: Container for type-specific extensions of an Item. This +// protobuf is defined in a separate file to allow types to +// reference/extend the message without depending on other fusebox +// protobufs. See items.proto. +type ItemParts struct { +} + // ItemStatus: This contains item's status and any errors. type ItemStatus struct { // Code: Status code. @@ -13713,6 +14719,107 @@ func (s *ItemStructuredData) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ItemThread: An ItemThread is an ordered list of Items. An ItemThread +// corresponds to a "conversation" in the context of mail. An Item +// belongs to exactly one ItemThread. +type ItemThread struct { + ClusterInfo *ClusterInfo `json:"clusterInfo,omitempty"` + + // Item: The Items in the ItemThread. In the context of a search, the + // list of Items may be a subset of those that logically belong to the + // ItemThread. The details of which items are included are available in + // the ItemThreadView returned in the overall rpc response. + Item []*FuseboxItem `json:"item,omitempty"` + + // LastItemId: The server id of the last item returned in the + // ItemThread. This can be deduced from the [item] list but is provided + // for convenience. When manually constructing an ItemThreadViewSpec to + // perform operations on the ItemThread, this value can be used as the + // [high_item_id_watermark]. + LastItemId uint64 `json:"lastItemId,omitempty,string"` + + MatchInfo *FuseboxItemThreadMatchInfo `json:"matchInfo,omitempty"` + + // Snippet: A snippet summarizing the thread. This field is only + // populated for searches. + Snippet string `json:"snippet,omitempty"` + + // ThreadKey: The MultiKey that identifies this thread. This value never + // changes, i.e. remains constant across modifications to the thread, + // including addition, relabeling, or deletion of contained Items. As + // such, the thread key may not necessarily correspond to the key of an + // contained Item. Legacy note: The "server_id" of the thread key is + // equivalent to the notion of the "original thread id" in the CSS API. + ThreadKey *MultiKey `json:"threadKey,omitempty"` + + // ThreadLocator: A base64 encoded and encrypted string generated from + // the Gaia Id and the thread id. Used to generate the permalink for + // this thread, exposed from Gmail API. + ThreadLocator string `json:"threadLocator,omitempty"` + + // TopicState: Next available id : 10 + TopicState *TopicState `json:"topicState,omitempty"` + + // Version: The latest history operation id that resulted in a mutation + // of any item in the thread. + Version uint64 `json:"version,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "ClusterInfo") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ClusterInfo") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ItemThread) MarshalJSON() ([]byte, error) { + type NoMethod ItemThread + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// JobsettedServerSpec: Identifies a jobsetted server as a target for +// Trigger dispatch. +type JobsettedServerSpec struct { + // PortName: E.g. "gateway", "stubby" etc. Leave unset to use the + // default unnamed port. + PortName string `json:"portName,omitempty"` + + // ServerName: E.g. "satellite-server", "bigtop-sync", etc. + ServerName string `json:"serverName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "PortName") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "PortName") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *JobsettedServerSpec) MarshalJSON() ([]byte, error) { + type NoMethod JobsettedServerSpec + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type KeyValue struct { // BottomLabel: Formatted text supported. BottomLabel string `json:"bottomLabel,omitempty"` @@ -13814,6 +14921,187 @@ func (s *KeyValue) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// LabelAdded: A label was added to some (subset of the) messages in +// this thread. +type LabelAdded struct { + LabelId string `json:"labelId,omitempty"` + + LabelName string `json:"labelName,omitempty"` + + MessageKeys []*MultiKey `json:"messageKeys,omitempty"` + + SyncId int64 `json:"syncId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LabelId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "LabelId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LabelAdded) MarshalJSON() ([]byte, error) { + type NoMethod LabelAdded + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// LabelCreated: A label was created. +type LabelCreated struct { +} + +// LabelDeleted: A label was deleted. +type LabelDeleted struct { +} + +// LabelRemoved: A label was removed from some (subset of the) messages +// in this thread. +type LabelRemoved struct { + LabelId string `json:"labelId,omitempty"` + + LabelName string `json:"labelName,omitempty"` + + MessageKeys []*MultiKey `json:"messageKeys,omitempty"` + + SyncId int64 `json:"syncId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LabelId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "LabelId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LabelRemoved) MarshalJSON() ([]byte, error) { + type NoMethod LabelRemoved + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// LabelRenamed: A label was renamed. +type LabelRenamed struct { + OldCanonicalName string `json:"oldCanonicalName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OldCanonicalName") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "OldCanonicalName") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *LabelRenamed) MarshalJSON() ([]byte, error) { + type NoMethod LabelRenamed + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// LabelUpdate: HistoryRecord for changes associated with a label, +// namely: LABEL_CREATED LABEL_DELETED LABEL_RENAMED LABEL_UPDATED +type LabelUpdate struct { + CanonicalName string `json:"canonicalName,omitempty"` + + LabelCreated *LabelCreated `json:"labelCreated,omitempty"` + + LabelDeleted *LabelDeleted `json:"labelDeleted,omitempty"` + + LabelId string `json:"labelId,omitempty"` + + LabelRenamed *LabelRenamed `json:"labelRenamed,omitempty"` + + LabelUpdated *LabelUpdated `json:"labelUpdated,omitempty"` + + SyncId int64 `json:"syncId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CanonicalName") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CanonicalName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *LabelUpdate) MarshalJSON() ([]byte, error) { + type NoMethod LabelUpdate + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// LabelUpdated: A label pref was updated outside of a rename, create, +// or delete. +type LabelUpdated struct { +} + +type Labels struct { + // DisplayName: The display name of the labels. This is populated + // (instead of the id) when the request fetch_spec has + // LABEL_DISPLAY_NAMES. + DisplayName []string `json:"displayName,omitempty"` + + // Id: The ids of the labels attached to the Item, e.g. "^i", "^x_1" + Id []string `json:"id,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DisplayName") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DisplayName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Labels) MarshalJSON() ([]byte, error) { + type NoMethod Labels + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // LanguageConfig: The language configuration for the session. type LanguageConfig struct { // SpokenLanguages: The spoken language(s) in BCP47 language code. @@ -14275,6 +15563,36 @@ func (s *ListUnmappedIdentitiesResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type MatchInfo struct { + // MatchingImageReferenceKey: Reference keys for image attachments that + // matches search query. + MatchingImageReferenceKey []string `json:"matchingImageReferenceKey,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "MatchingImageReferenceKey") to unconditionally include in API + // requests. By default, fields with empty or default values are omitted + // from API requests. However, any non-pointer, non-interface field + // appearing in ForceSendFields will be sent to the server regardless of + // whether the field is empty or not. This may be used to include empty + // fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "MatchingImageReferenceKey") to include in API requests with the JSON + // null value. By default, fields with empty values are omitted from API + // requests. However, any field with an empty value appearing in + // NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *MatchInfo) MarshalJSON() ([]byte, error) { + type NoMethod MatchInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // MatchRange: Matched range of a snippet [start, end). type MatchRange struct { // End: End of the match in the snippet. @@ -14884,6 +16202,9 @@ type Message struct { // "SCAN_RULE_EVALUATION_SKIPPED_CHANGELING_EMPTY_RESPONSE" - Rule // fetch happened, but rule evaluation is skipped because Changeling // returned an empty response while converting the attachment to text. + // "SCAN_RULE_EVALUATION_SKIPPED_UNSUPPORTED_FILE_TYPE" - Rule fetch + // happened, but rule evaluation is skipped because file type is + // unsupported. // "SCAN_SUCCEEDED_WITH_FAILURES_NO_VIOLATION" - Rules were fetched // but some evaluations failed. No violation was found in the rules that // were successfully evaluated. @@ -15071,7 +16392,41 @@ type Message struct { // only be saved in this field. UploadMetadata []*UploadMetadata `json:"uploadMetadata,omitempty"` - // ForceSendFields is a list of field names (e.g. "Annotations") to + // ForceSendFields is a list of field names (e.g. "Annotations") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Annotations") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Message) MarshalJSON() ([]byte, error) { + type NoMethod Message + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// MessageAdded: A message was added. Specifying id and initial labels. +type MessageAdded struct { + AttributeIds []string `json:"attributeIds,omitempty"` + + LabelIds []string `json:"labelIds,omitempty"` + + MessageKey *MultiKey `json:"messageKey,omitempty"` + + // SyncIds: Note that there can be fewer sync ids than label ids. + SyncIds []int64 `json:"syncIds,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AttributeIds") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -15079,7 +16434,7 @@ type Message struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Annotations") to include + // NullFields is a list of field names (e.g. "AttributeIds") to include // in API requests with the JSON null value. By default, fields with // empty values are omitted from API requests. However, any field with // an empty value appearing in NullFields will be sent to the server as @@ -15088,8 +16443,8 @@ type Message struct { NullFields []string `json:"-"` } -func (s *Message) MarshalJSON() ([]byte, error) { - type NoMethod Message +func (s *MessageAdded) MarshalJSON() ([]byte, error) { + type NoMethod MessageAdded raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -15124,6 +16479,40 @@ func (s *MessageAttributes) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// MessageDeleted: Some (subset of the) messages in this thread were +// deleted. +type MessageDeleted struct { + // ImapSyncMappings: Value of coproc's message delete history record + // extension that exports /imapsync/folder attribute of deleted messages + // which have ^is label. + ImapSyncMappings []*ImapSyncDelete `json:"imapSyncMappings,omitempty"` + + MessageKeys []*MultiKey `json:"messageKeys,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ImapSyncMappings") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ImapSyncMappings") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *MessageDeleted) MarshalJSON() ([]byte, error) { + type NoMethod MessageDeleted + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // MessageId: Primary key for Message resource. type MessageId struct { // MessageId: Opaque, server-assigned ID of the Message. While this ID @@ -15258,6 +16647,10 @@ func (s *MessageProps) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// MessageSet: This is proto2's version of MessageSet. +type MessageSet struct { +} + // Metadata: Metadata of a matched search result. type Metadata struct { // CreateTime: The creation time for this document or object in the @@ -15347,6 +16740,71 @@ func (s *Metaline) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// MultiKey: A union-like type for identifiying an object in storage. +// MultiKeys contain multiple key fields, each in a separate key space. +// At least one key field must be set. More than one key field may be +// set as long as all key values refer to the same object. All objects +// in storage have unique server_id keys. All MultiKeys returned from +// storage to storage clients will always have the server_id field set. +// When creating an object, if a MultiKey without a server_id is +// supplied to storage, the storage system will auto-assign a server ID +// to the new object. For all other storage requests (i.e. those not +// creating new objects), clients may omit server_id (as long as they +// supply another key). Instead of server ids, clients can specify +// string based client_assigned_perm_id keys. Mail message drafts are a +// prime example of these kinds of objects. Each time a user saves a new +// version of a draft, the storage system needs to create a new object +// with the updated draft content and needs to delete the object +// containing the old content. The new object gets a new SERVER_ID but +// should get the same CLIENT_ASSIGNED_PERM_ID as the now-deleted object +// containing the old content. Carrying forward the perm ID allows it to +// be used to consistently refer to the same logical object across +// revisions. These perm IDs save sync clients from having to deal with +// changing object IDs. For example, assume there's a mail message in +// storage with SERVER_ID = 123 and CLIENT_ASSIGNED_PERM_ID = "foo". The +// following are all valid ways of addressing the object using +// MultiKeys: 1) MultiKey { server_id = 123 } 2) MultiKey { server_id = +// 123, client_assigned_perm_id = "foo" } 3) MultiKey { +// client_assigned_perm_id = "foo" } Multikeys are never serialized in +// the storage. The individual keys are extracted and processed +// separately. Both the integer ids as well as string ids are indexed +// for efficient retrieval using the same fields in the backend. See +// go/tingle-multikeys for more information on background and +// motivation. +type MultiKey struct { + // ClientAssignedPermId: A client-assigned string based key. + ClientAssignedPermId string `json:"clientAssignedPermId,omitempty"` + + // ServerId: A server-assigned ID. This ID must be used only by Gmail + // and is constructed using millesecond ts << 20 + randomness. The ID + // affects the sort order of the index. + ServerId uint64 `json:"serverId,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. + // "ClientAssignedPermId") to unconditionally include in API requests. + // By default, fields with empty or default values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ClientAssignedPermId") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *MultiKey) MarshalJSON() ([]byte, error) { + type NoMethod MultiKey + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Name: A person's name. type Name struct { // DisplayName: The read-only display name formatted according to the @@ -15830,6 +17288,36 @@ func (s *Operation) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type OsVersion struct { + MajorVersion int64 `json:"majorVersion,omitempty"` + + MinorVersion int64 `json:"minorVersion,omitempty"` + + TertiaryVersion int64 `json:"tertiaryVersion,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MajorVersion") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MajorVersion") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *OsVersion) MarshalJSON() ([]byte, error) { + type NoMethod OsVersion + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type OtrChatMessageEvent struct { ExpirationTimestampUsec int64 `json:"expirationTimestampUsec,omitempty,string"` @@ -16338,6 +17826,37 @@ func (s *PollItemsResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// PossiblyTrimmedModel: This message contains either the device model, +// or a prefix of the device model (AKA a trimmed device model). The +// "is_trimmed" field indicates which one it is. +type PossiblyTrimmedModel struct { + IsTrimmed bool `json:"isTrimmed,omitempty"` + + Model string `json:"model,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IsTrimmed") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "IsTrimmed") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PossiblyTrimmedModel) MarshalJSON() ([]byte, error) { + type NoMethod PossiblyTrimmedModel + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // PostiniUserProto: See // http://s/?fileprint=//depot/google3/security/authentication/postini/auth_token.proto type PostiniUserProto struct { @@ -16366,6 +17885,107 @@ func (s *PostiniUserProto) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// PreState: State of the thread previous to the update. This really +// just describes the label state of all messages before the update. +type PreState struct { + LabelIds []string `json:"labelIds,omitempty"` + + MessageKey *MultiKey `json:"messageKey,omitempty"` + + // SyncIds: Note that there can be fewer sync ids than label ids. + SyncIds []int64 `json:"syncIds,omitempty"` + + ThreadKey *MultiKey `json:"threadKey,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LabelIds") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "LabelIds") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PreState) MarshalJSON() ([]byte, error) { + type NoMethod PreState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PrefDeleted: PREF_DELETED +type PrefDeleted struct { +} + +// PrefUpdate: HistoryRecord for changes associated with prefs, namely: +// PREF_WRITTEN PREF_DELETED +type PrefUpdate struct { + // Name: Name of the affected preference. + Name string `json:"name,omitempty"` + + PreState *FuseboxPrefUpdatePreState `json:"preState,omitempty"` + + PrefDeleted *PrefDeleted `json:"prefDeleted,omitempty"` + + PrefWritten *PrefWritten `json:"prefWritten,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PrefUpdate) MarshalJSON() ([]byte, error) { + type NoMethod PrefUpdate + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PrefWritten: PREF_WRITTEN +type PrefWritten struct { + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Value") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Value") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PrefWritten) MarshalJSON() ([]byte, error) { + type NoMethod PrefWritten + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Presenter: Presenter contains information about which device is // currently presenting as well as which device requested the presenter // to be set. @@ -16594,7 +18214,8 @@ func (s *PrincipalProto) MarshalJSON() ([]byte, error) { } // PrivateMessageInfo: Private message information specific to a given -// user. +// user. DEPRECATED: Use the privateMessageViewer field in +// CreateMessageInfo instead. type PrivateMessageInfo struct { // Annotations: Annotations private to {@code userId}. Annotations []*Annotation `json:"annotations,omitempty"` @@ -17438,6 +19059,46 @@ func (s *QuotedMessageMetadata) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Rank: The rank contains a tuple of numbers which may be used as a +// general sort order. The rank should be treated as an ordered set of +// numbers, where the ordering is done in descending order of the most +// significant rank member. For example, given the following ranks +// described as (primary, secondary): (1,1), (1,2), (2,2) (2,1) The +// descending rank-order is: (2,2) > (2,1) > (1,2) > (1,1) +type Rank struct { + // Primary: The primary rank is the most significant rank member. This + // rank element should always be present. Items with higher primary rank + // are always considered of higher rank than those of lower primary + // rank. + Primary int64 `json:"primary,omitempty,string"` + + // Secondary: The secondary rank may be used to rank items of identical + // primary rank. This rank element should always be present. + Secondary int64 `json:"secondary,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "Primary") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Primary") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Rank) MarshalJSON() ([]byte, error) { + type NoMethod Rank + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // RbacRoleProto: Principal associated with a given RBAC role. This // principal is used by Sphinx Provisioning Service for RBAC // (go/cedi-auth) provisionable (go/sphinx-rbacz-design). @@ -17761,6 +19422,74 @@ func (s *RecordingSessionInfo) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Reference: All fields in this proto are now columns in spanner see +// google3/storage/slice/production/gmail/user_data_tables.pi for +// documentation. +type Reference struct { + BlobId string `json:"blobId,omitempty"` + + ContentType string `json:"contentType,omitempty"` + + Hash string `json:"hash,omitempty"` + + // Key: LINT.IfChange + Key string `json:"key,omitempty"` + + // Name: LINT.ThenChange(//depot/google3/storage/slice/production/gmail/ + // user_data_tables.pi) + Name string `json:"name,omitempty"` + + Size int64 `json:"size,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "BlobId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BlobId") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Reference) MarshalJSON() ([]byte, error) { + type NoMethod Reference + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type References struct { + References []*Reference `json:"references,omitempty"` + + // ForceSendFields is a list of field names (e.g. "References") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "References") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *References) MarshalJSON() ([]byte, error) { + type NoMethod References + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type RenameEvent struct { NewName string `json:"newName,omitempty"` @@ -17931,6 +19660,7 @@ type RequiredMessageFeaturesMetadata struct { // "REQUIRED_FEATURE_UNSPECIFIED" // "REQUIRED_FEATURE_MESSAGE_QUOTING" // "REQUIRED_FEATURE_TOMBSTONES_IN_DMS_AND_UFRS" + // "REQUIRED_FEATURE_CUSTOM_HYPERLINK" RequiredFeatures []string `json:"requiredFeatures,omitempty"` // ForceSendFields is a list of field names (e.g. "RequiredFeatures") to @@ -18438,8 +20168,47 @@ type RosterId struct { NullFields []string `json:"-"` } -func (s *RosterId) MarshalJSON() ([]byte, error) { - type NoMethod RosterId +func (s *RosterId) MarshalJSON() ([]byte, error) { + type NoMethod RosterId + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// RpcOptions: Options for Triggers dispatched via RPC. +type RpcOptions struct { + // RequestExtensions: The RPC's request extensions (i.e. + // RPC::request_extensions(), a.k.a. the Stubby side channel) will be + // merged with the specified [request_extensions]. When Triggers are + // batched, the RPC's request extensions will be merged with all of the + // [request_extensions] of the Triggers in the batch. Note that merging + // of request extensions follows standard protocol buffer semantics; + // values of singular fields override previous values, and values of + // repeated fields are appended (In the case of Triggers, Triggers with + // later fire times will be merged after Triggers with earlier fire + // times in the same batch). It is not advised to specify extensions + // with repeated fields on batchable Triggers. + RequestExtensions *MessageSet `json:"requestExtensions,omitempty"` + + // ForceSendFields is a list of field names (e.g. "RequestExtensions") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "RequestExtensions") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *RpcOptions) MarshalJSON() ([]byte, error) { + type NoMethod RpcOptions raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -19241,6 +21010,52 @@ func (s *SelectionItem) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type SessionContext struct { + // AuthTime: Time at which this activity's session was authenticated, in + // seconds since the epoch. + AuthTime int64 `json:"authTime,omitempty,string"` + + // DelegateUserId: Gaia ID of the authenticated user when delegate + // access is active. In such sessions the main gaia ID is that of the + // delegator, i.e. the account being accessed. + DelegateUserId int64 `json:"delegateUserId,omitempty,string"` + + // Dusi: Device User Session ID, see go/dusi. + Dusi string `json:"dusi,omitempty"` + + // ImapSessionContext: Imap session context for Bond/Gmail integration + ImapSessionContext *ImapSessionContext `json:"imapSessionContext,omitempty"` + + // OauthLoginId: OAuth login ID. + OauthLoginId int64 `json:"oauthLoginId,omitempty"` + + // OauthProjectId: The devconsole project ID of the developer who + // authenticated with OAuth. + OauthProjectId int64 `json:"oauthProjectId,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "AuthTime") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AuthTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SessionContext) MarshalJSON() ([]byte, error) { + type NoMethod SessionContext + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // SessionEvent: A session event is something that happens to the // streaming session in a conference. type SessionEvent struct { @@ -20967,6 +22782,105 @@ func (s *TextValues) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ThreadKeySet: The ThreadKey was set on some (subset of the) messages +// in this thread. +type ThreadKeySet struct { + // MessageKeys: Messages on which the thread_key was changed. + MessageKeys []*MultiKey `json:"messageKeys,omitempty"` + + // NewThreadKey: The new thread_key for this thread + NewThreadKey *MultiKey `json:"newThreadKey,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MessageKeys") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MessageKeys") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ThreadKeySet) MarshalJSON() ([]byte, error) { + type NoMethod ThreadKeySet + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ThreadUpdate: HistoryRecord for changes associated with a thread, +// namely: MESSAGE_ADDED MESSAGE_DELETED LABEL_ADDED LABEL_REMOVED +// ATTRIBUTE_SET ATTRIBUTE_REMOVED THREAD_KEY_SET All label_ids refer to +// the (unchanging) value as defined by the Label.id field in +// labels.proto. In particular, it is *not* the canonical_name. +type ThreadUpdate struct { + AttributeRemoved *AttributeRemoved `json:"attributeRemoved,omitempty"` + + AttributeSet *AttributeSet `json:"attributeSet,omitempty"` + + LabelAdded *LabelAdded `json:"labelAdded,omitempty"` + + LabelRemoved *LabelRemoved `json:"labelRemoved,omitempty"` + + // LastHistoryRecordId: Indicates the record id of the last operation + // that modified this thread. + LastHistoryRecordId uint64 `json:"lastHistoryRecordId,omitempty,string"` + + MessageAdded *MessageAdded `json:"messageAdded,omitempty"` + + MessageDeleted *MessageDeleted `json:"messageDeleted,omitempty"` + + // OriginalThreadKey: The first non-empty thread-key on any message in + // the thread (including deleted messages). This field has been + // introduced to maintain backward compatibility for clients that are + // not subthread aware. + OriginalThreadKey *MultiKey `json:"originalThreadKey,omitempty"` + + // PreState: The PreStates of all messages before the transaction. These + // are suppressed if the client requested that prestates not be included + // in the output of the GetHistoryRequest. + PreState []*PreState `json:"preState,omitempty"` + + // ThreadKey: Affected thread + ThreadKey *MultiKey `json:"threadKey,omitempty"` + + ThreadKeySet *ThreadKeySet `json:"threadKeySet,omitempty"` + + // ThreadLocator: Thread PLID + ThreadLocator string `json:"threadLocator,omitempty"` + + TopicStateUpdate *TopicStateUpdate `json:"topicStateUpdate,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AttributeRemoved") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AttributeRemoved") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ThreadUpdate) MarshalJSON() ([]byte, error) { + type NoMethod ThreadUpdate + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // TimestampOperatorOptions: Used to provide a search operator for // timestamp properties. This is optional. Search operators let users // restrict the query to specific fields relevant to the type of item @@ -21195,6 +23109,116 @@ func (s *TopicId) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// TopicState: State of an topic thread as maintained within Tingle. +type TopicState struct { + // LabelIdMessageCount: Map of label => count of topic constituent + // messages with label These only contain counts of labels that are + // relevant for topic normalization/denormalization. Eg. If a topic + // thread has 5 constituents, 4 of which are in inbox, this will contain + // ^i => 4. Some labels of interest are archive, inbox, trash, spam, + // etc. + LabelIdMessageCount map[string]int64 `json:"labelIdMessageCount,omitempty"` + + // NumConstituents: Number of constituents for this entity. + NumConstituents int64 `json:"numConstituents,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LabelIdMessageCount") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "LabelIdMessageCount") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *TopicState) MarshalJSON() ([]byte, error) { + type NoMethod TopicState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type TopicStateUpdate struct { + TopicState *TopicState `json:"topicState,omitempty"` + + // ForceSendFields is a list of field names (e.g. "TopicState") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "TopicState") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TopicStateUpdate) MarshalJSON() ([]byte, error) { + type NoMethod TopicStateUpdate + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// TransactionContext: Storage information pertaining to the transaction +// with which a HistoryRecord is associated. +type TransactionContext struct { + // EndingRecordId: The last HistoryRecord of the transaction. Note that + // this may correspond to a record that is filtered by Tingle (and thus + // not returned to the client). See http://b/9513464. + EndingRecordId uint64 `json:"endingRecordId,omitempty,string"` + + // StartingRecordId: The first HistoryRecord of the transaction. Note + // that this may be a record of type INTERNAL. + StartingRecordId uint64 `json:"startingRecordId,omitempty,string"` + + // WriteTimestampUs: The microsecond timestamp of the transaction. + WriteTimestampUs int64 `json:"writeTimestampUs,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "EndingRecordId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EndingRecordId") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *TransactionContext) MarshalJSON() ([]byte, error) { + type NoMethod TransactionContext + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// TransactionDebugInfo: HistoryRecord for debug info associated with +// the transaction, namely: TXN_DEBUG_INFO TODO(b/143845917) This is a +// short-term workaround for unblocking fusebox writes migration. Clean +// up the code or land a long-term solution after the rollout. +// go/diff-to-historyrecord +type TransactionDebugInfo struct { +} + // TranscriptionSessionInfo: Information about a transcription session. type TranscriptionSessionInfo struct { // SessionStateInfo: Transcription session's state information. @@ -21233,6 +23257,308 @@ func (s *TranscriptionSessionInfo) MarshalJSON() ([]byte, error) { type TransientData struct { } +type Trigger struct { + // ActionType: Each dispatcher should use an enum to for the actions + // that it supports. If a dispatcher has only one action, this does not + // need to be set. (It can be expanded later, defining the default + // behaviour as type 0.) For purposes such as batching, the type of a + // trigger is (dispatcher, action_type). + ActionType int64 `json:"actionType,omitempty"` + + // BatchTimeUs: Maximum possible delay in micros that can be tolerated + // so triggers can be batched, which makes processing more efficient + // compared to firing triggers individually. Note that the actual fire + // time will be somewhere in the timerange interval [fire_time_us, + // fire_time_us + batch_time_us). + BatchTimeUs int64 `json:"batchTimeUs,omitempty,string"` + + // DispatchId: Must be set for DISPATCHER_STUBBY_DISPATCHER. + DispatchId int64 `json:"dispatchId,omitempty"` + + // Dispatcher: Which server should interpret action_type. + // + // Possible values: + // "DISPATCHER_COPROC" - Replace ACTION_INVOKE_X; the CS and Stratus + // are no longer limited to a single type of action. Each additional + // remote client should be defined here. + // "DISPATCHER_JOBSETTED_PRIMARY" + // "DISPATCHER_STRATUS" + // "DISPATCHER_TASKS_SERVER" + // "DISPATCHER_STUBBY_DISPATCHER" + // "DISPATCHER_CS" + Dispatcher string `json:"dispatcher,omitempty"` + + // FireTimeUs: Earliest time to fire at in microseconds. The actual time + // that the trigger will fire will be in the timerange: [fire_time_us, + // fire_time_us + batch_time_us). + FireTimeUs int64 `json:"fireTimeUs,omitempty,string"` + + // JobsettedServerSpec: Must be set for DISPATCHER_JOBSETTED_PRIMARY. + JobsettedServerSpec *JobsettedServerSpec `json:"jobsettedServerSpec,omitempty"` + + // Key: The trigger key, if applicable. + Key string `json:"key,omitempty"` + + RpcOptions *RpcOptions `json:"rpcOptions,omitempty"` + + // SliceFireTimeUs: The slice_fire_time_us is automatically computed and + // stored as part of the trigger write. It represents the exact fire + // time at which the trigger will be queued to fire and will satisfy + // fire_time_us < slice_fire_time_us <= fire_time_us + batch_time_us + // Triggers have an index row in the slice trigger index with the row + // prefix matching this time. Note that this field is internal to + // gmail_cp and is ignored if set by external clients when adding / + // updating triggers. + SliceFireTimeUs int64 `json:"sliceFireTimeUs,omitempty,string"` + + // TriggerAction: Trigger action to perform. This should always be set. + TriggerAction *TriggerAction `json:"triggerAction,omitempty"` + + // TriggerKey: The TriggerKey will uniquely determine a trigger within a + // given context. A context is a single message for message triggers or + // a single account for account triggers. + TriggerKey *TriggerKey `json:"triggerKey,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActionType") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ActionType") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Trigger) MarshalJSON() ([]byte, error) { + type NoMethod Trigger + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type TriggerAction struct { + // Possible values: + // "ACTION_NONE" + // "ACTION_DELETE" - No-op + // "ACTION_CREATE_NEW_TRIGGER" - No-op + // "ACTION_MESSAGE_EXPUNGE" - This action begins the message expunge + // process. It will trigger a purge attempt for all messages that have + // this trigger. + // "ACTION_RETENTION_POLICY_UPDATE" - When this trigger fires, the + // current retention policy will be loaded from the policy management + // system and stored into the preference cache (if necessary). This will + // also create new expunge triggers if necessary. + // "ACTION_UPDATE_ICEBOX_MODEL" - When this trigger fires, the message + // should be used to update the user's importance model. See + // http://go/io-tingle for more details. + // "ACTION_INVOKE_CS" - Sends the trigger to the master Caribou server + // via the Stubby TriggerHandlerService interface (defined in + // caribou/coproc/proto/trigger_handler.proto). The trigger is handled + // at fire time in the account's primary replica, and only in + // non-primary replicas after a delay. + // "ACTION_INVOKE_STRATUS" - Similar to ACTION_INVOKE_CS, but instead + // of sending the trigger to the master Caribou server, sends it to a + // Stratus server that also implements the TriggerHandlerService. This + // Stratus server is specified via + // FLAGS_triggers_stratus_server_address. The trigger is handled at fire + // time in the account's primary replica, and only in non-primary + // replicas after a delay. + // "ACTION_PDH_EXPUNGE" - This action begins the message's PDH + // expunge. It will trigger a expunge (from pdh) attempt for all + // messages that have this trigger. + // "ACTION_QUERY_RETENTION" - When this trigger fires, based on the + // latest retention policy: 1. messages that need to be deleted will be + // deleted through the CS trigger handler 2. ^deleted messages that need + // to be expunged will be expunged + // "ACTION_INVOKE_JOBSETTED_PRIMARY" - Similar to ACTION_INVOKE_CS, + // but instead of sending the trigger to the master Caribou server, + // sends it to a jobsetted server in the user's master jobset using the + // consistent-hash homing algorithm. The jobsetted_server_spec must be + // specified when using this TriggerAction. + // "ACTION_INVOKE_TASKS_SERVER" - Send the trigger to a Tasks server + // that implements the TriggerHandlerService. Dispatched via GSLB target + // specified by FLAGS_triggers_tasks_server_address. + // "ACTION_INVOKE_PUBLISHER" - Send the trigger to a SmartMail + // Publisher server that implements the TriggerHandlerService. + // Dispatched via GSLB target specified by + // FLAGS_triggers_publisher_server_address. + // "ACTION_INVOKE_OBSERVER" - Send the trigger to an Observer server + // that implements the TriggerHandlerService. Dispatched via GSLB target + // specified by FLAGS_triggers_observer_server_address. + // "ACTION_PUSH_HISTORY_TO_PDH" - Push a set of history records to + // PDH. + // "ACTION_INVOKE_STUBBY_DISPATCHER" - Send the trigger to the stubby + // dispatcher, which routes the RPC using the value of + // Trigger.dispatch_id as the RoutingInfo.extension_tag field. + // Dispatched via the GSLB target specified by + // FLAGS_triggers_stubby_dispatcher_address. + // "ACTION_PDH_BACKFILL" - Backfills a set of records from an account + // and pushes them to PDH. + // "ACTION_MESSAGE_UNDELETE" - Move messages from ^deleted to ^all. + // This trigger will only undelete messages that were deleted before the + // fire time of the trigger. Also, messages whose blobs are already + // deleted will not be undeleted. This is an account trigger. + // "ACTION_VAULT_END_USER_ACCESS" - This trigger will undelete + // messages that were ^deleted arbitrarily long in the past and a trash + // label will be applied to these undeleted messages. This is an account + // trigger that will be written when the Vault admin enables end user + // access for the Vault customer. This trigger shares its implementation + // with the ACTION_MESSAGE_UNDELETE trigger. + // "ACTION_INVOKE_GROUPS" - Send the trigger to a groups server that + // implements the TriggerHandlerService. Dispatched via GSLB target + // specified by FLAGS_triggers_groups_server_address. + // "ACTION_ACCOUNT_INITIALIZATION" - This trigger will be executed + // once per newly created account. It will be created as part of the + // first transaction written to the account. The trigger can also be + // written as part of an SVF in case we want to re-initialize every + // account. + // "ACTION_INVOKE_OBSERVER_WIPEOUT" - Send the trigger to an Observer + // server that implements the TriggerHandlerService for wipeout purpose. + // Dispatched via GSLB target specified by + // FLAGS_triggers_observer_server_address. It behaves differently from + // the invoke observer trigger (ACTION_INVOKE_OBSERVER) and should be + // batched separately. Tingle always fires this kind of action trigger + // for ^deleted messages. + // "ACTION_SERVICE_REMOVED_MESSAGE_EXPUNGE" - Begins the message + // expunge similar to ACTION_MESSAGE_EXPUNGE but doesn't check if the + // message was deleted at least 30 days back. To be used ONLY for + // service removal. See go/gmail-service-removal for more details. + // "ACTION_EVERCLEAR_EXPUNGE" - Sends RPC to everclear for the message + // expunge. + // "ACTION_INVOKE_SMIME_CERTIFICATE_ISSUER" - Send the trigger to the + // S/MIME certificate issuer server. Dispatched via the GSLB target + // specified by FLAGS_triggers_smime_certificate_issuer_server_address. + // "ACTION_GROUPS_QUERY_RETENTION" - The retention trigger that will + // be written to implement Groups retention. + // "ACTION_INVOKE_SATELLITE_BACKUP" - Dispatches the permanent backup + // trigger to Satellite through Stubby dispatcher. + // "ACTION_INVOKE_DEBUG_LOG" - Process the debug log trigger by adding + // message body before dispatching to the Caribou Server through Stubby + // Dispatcher. + // "ACTION_PREFERENCE_CLEANUP" - This trigger deletes expired + // temporary preferences. See go/tingle-temp-prefs for more details. + // "ACTION_CARIBOU_DATA_RETENTION" - Similar to ACTION_QUERY_RETENTION + // but uses the MessageRetention policies to trash/delete the messages: + // cs/caribou/base/lib/proto/data_retention.proto . + // "ACTION_HISTORY_CLEANUP" - This trigger deletes expired + // HistoryRecords. See go/history-record-cleanup for more details. + // "ACTION_ITEM_BULK_RELABEL" - This trigger relabels messages + // asynchronously. See go/fusebox-bulk-api for more details. + // "ACTION_INVOKE_SATELLITE_IMAGE_PROCESSING" - Dispatches the image + // processing trigger to Satellite through Stubby dispatcher. See + // go/gmail-photo-sharing for details. + // "ACTION_CARIBOU_DATA_RETENTION_DIFF" - Trigger for executing + // comparison logic between the output of ApplyDataRetention idle task + // and CaribouDataRetention trigger. + // "ACTION_RELEVANCY_SCORE_BACKFILL" - Trigger for backfill relevancy + // score. see go/gmail-relevancy-scoring-write for detail. + // "ACTION_PDH_PUSH_NOTIFICATION_BACKFILL" - Trigger to backfill gaps + // left by pdh pushed via push notification. see + // go/tingle-moonshine-push-v2 + // "ACTION_AUTO_SAVE_DRAFT_EXPUNGE" - Begins the message expunge + // similar to ACTION_MESSAGE_EXPUNGE but fires within one day. To be + // used ONLY for auto save drafts. See + // go/faster-auto-save-draft-deletion for more details. + Action string `json:"action,omitempty"` + + // Data: Clients should use extensions on the Trigger message instead. + Data string `json:"data,omitempty"` + + DataInt int64 `json:"dataInt,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "Action") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Action") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TriggerAction) MarshalJSON() ([]byte, error) { + type NoMethod TriggerAction + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// TriggerKey: A TriggerKey (type + instance_id) uniquely identifies a +// trigger within a message for a message-trigger and within an account +// for an account-trigger. +type TriggerKey struct { + // InstanceId: Identifier to distinguish multiple Triggers of the same + // type (per message or per account). + InstanceId string `json:"instanceId,omitempty"` + + // Type: A non-empty string that identifies the type of Trigger. + // Triggers of the same type may be batched together. The universe of + // values for the type field should be finite as it is used as a stats + // key. + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InstanceId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InstanceId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TriggerKey) MarshalJSON() ([]byte, error) { + type NoMethod TriggerKey + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type Triggers struct { + // Triggers: A list of triggers. + Triggers []*Trigger `json:"triggers,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Triggers") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Triggers") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Triggers) MarshalJSON() ([]byte, error) { + type NoMethod Triggers + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // TrustedResourceUrlProto: Message containing a string that is safe to // use in all URL contexts in DOM APIs and HTML documents; even where // the referred-to resource is interpreted as code, e.g., as the src of @@ -21773,6 +24099,10 @@ type UploadMetadata struct { // attachment scan. DlpMetricsMetadata *AppsDynamiteSharedDlpMetricsMetadata `json:"dlpMetricsMetadata,omitempty"` + // LatestVirusScanTimestamp: The timestamp of the most recent virus scan + // completed (in microseconds). + LatestVirusScanTimestamp int64 `json:"latestVirusScanTimestamp,omitempty,string"` + // LocalId: A copy of the LocalId in Annotation. This field is supposed // to be filled by server only. LocalId string `json:"localId,omitempty"` diff --git a/cloudsupport/v2beta/cloudsupport-api.json b/cloudsupport/v2beta/cloudsupport-api.json index 8233dc8813a..7e17def9cae 100644 --- a/cloudsupport/v2beta/cloudsupport-api.json +++ b/cloudsupport/v2beta/cloudsupport-api.json @@ -108,7 +108,7 @@ "attachments": { "methods": { "create": { - "description": "Create a file attachment on a case or Cloud resource.", + "description": "Create a file attachment on a case or Cloud resource. The attachment object must have the following fields set: filename.", "flatPath": "v2beta/{v2betaId}/{v2betaId1}/attachments", "httpMethod": "POST", "id": "cloudsupport.attachments.create", @@ -204,7 +204,7 @@ ] }, "create": { - "description": "Create a new case and associate it with the given Cloud resource.", + "description": "Create a new case and associate it with the given Cloud resource. The case object must have the following fields set: display_name, description, classification, and severity.", "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases", "httpMethod": "POST", "id": "cloudsupport.cases.create", @@ -436,7 +436,7 @@ "comments": { "methods": { "create": { - "description": "Add a new comment to the specified Case.", + "description": "Add a new comment to the specified Case. The comment object must have the following fields set: body.", "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases/{casesId}/comments", "httpMethod": "POST", "id": "cloudsupport.cases.comments.create", @@ -533,7 +533,7 @@ "useMediaDownloadService": true }, "upload": { - "description": "Create a file attachment on a case or Cloud resource.", + "description": "Create a file attachment on a case or Cloud resource. The attachment object must have the following fields set: filename.", "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases/{casesId}/attachments", "httpMethod": "POST", "id": "cloudsupport.media.upload", @@ -575,7 +575,7 @@ } } }, - "revision": "20220921", + "revision": "20221114", "rootUrl": "https://cloudsupport.googleapis.com/", "schemas": { "Actor": { diff --git a/cloudsupport/v2beta/cloudsupport-gen.go b/cloudsupport/v2beta/cloudsupport-gen.go index 26999541c27..506977a422a 100644 --- a/cloudsupport/v2beta/cloudsupport-gen.go +++ b/cloudsupport/v2beta/cloudsupport-gen.go @@ -1425,7 +1425,8 @@ type AttachmentsCreateCall struct { header_ http.Header } -// Create: Create a file attachment on a case or Cloud resource. +// Create: Create a file attachment on a case or Cloud resource. The +// attachment object must have the following fields set: filename. // // - parent: The resource name of the case to which attachment should be // attached. @@ -1527,7 +1528,7 @@ func (c *AttachmentsCreateCall) Do(opts ...googleapi.CallOption) (*Attachment, e } return ret, nil // { - // "description": "Create a file attachment on a case or Cloud resource.", + // "description": "Create a file attachment on a case or Cloud resource. The attachment object must have the following fields set: filename.", // "flatPath": "v2beta/{v2betaId}/{v2betaId1}/attachments", // "httpMethod": "POST", // "id": "cloudsupport.attachments.create", @@ -1906,7 +1907,8 @@ type CasesCreateCall struct { } // Create: Create a new case and associate it with the given Cloud -// resource. +// resource. The case object must have the following fields set: +// display_name, description, classification, and severity. // // - parent: The name of the Cloud resource under which the case should // be created. @@ -2008,7 +2010,7 @@ func (c *CasesCreateCall) Do(opts ...googleapi.CallOption) (*Case, error) { } return ret, nil // { - // "description": "Create a new case and associate it with the given Cloud resource.", + // "description": "Create a new case and associate it with the given Cloud resource. The case object must have the following fields set: display_name, description, classification, and severity.", // "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases", // "httpMethod": "POST", // "id": "cloudsupport.cases.create", @@ -3135,7 +3137,8 @@ type CasesCommentsCreateCall struct { header_ http.Header } -// Create: Add a new comment to the specified Case. +// Create: Add a new comment to the specified Case. The comment object +// must have the following fields set: body. // // - parent: The resource name of Case to which this comment should be // added. @@ -3237,7 +3240,7 @@ func (c *CasesCommentsCreateCall) Do(opts ...googleapi.CallOption) (*Comment, er } return ret, nil // { - // "description": "Add a new comment to the specified Case.", + // "description": "Add a new comment to the specified Case. The comment object must have the following fields set: body.", // "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases/{casesId}/comments", // "httpMethod": "POST", // "id": "cloudsupport.cases.comments.create", @@ -3638,7 +3641,8 @@ type MediaUploadCall struct { header_ http.Header } -// Upload: Create a file attachment on a case or Cloud resource. +// Upload: Create a file attachment on a case or Cloud resource. The +// attachment object must have the following fields set: filename. // // - parent: The resource name of the case to which attachment should be // attached. @@ -3807,7 +3811,7 @@ func (c *MediaUploadCall) Do(opts ...googleapi.CallOption) (*Attachment, error) } return ret, nil // { - // "description": "Create a file attachment on a case or Cloud resource.", + // "description": "Create a file attachment on a case or Cloud resource. The attachment object must have the following fields set: filename.", // "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases/{casesId}/attachments", // "httpMethod": "POST", // "id": "cloudsupport.media.upload", diff --git a/composer/v1beta1/composer-api.json b/composer/v1beta1/composer-api.json index 9c40c2521ef..6fa338b0566 100644 --- a/composer/v1beta1/composer-api.json +++ b/composer/v1beta1/composer-api.json @@ -518,7 +518,7 @@ } } }, - "revision": "20221028", + "revision": "20221104", "rootUrl": "https://composer.googleapis.com/", "schemas": { "AllowedIpRange": { @@ -808,6 +808,45 @@ }, "type": "object" }, + "ExecuteAirflowCommandResponse": { + "description": "Response to ExecuteAirflowCommandRequest.", + "id": "ExecuteAirflowCommandResponse", + "properties": { + "error": { + "description": "Error message. Empty if there was no error.", + "type": "string" + }, + "executionId": { + "description": "The unique ID of the command execution for polling.", + "type": "string" + }, + "pod": { + "description": "The name of the pod where the command is executed.", + "type": "string" + }, + "podNamespace": { + "description": "The namespace of the pod where the command is executed.", + "type": "string" + } + }, + "type": "object" + }, + "ExitInfo": { + "description": "Information about how a command ended.", + "id": "ExitInfo", + "properties": { + "error": { + "description": "Error message. Empty if there was no error.", + "type": "string" + }, + "exitCode": { + "description": "The exit code from the command execution.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "IPAllocationPolicy": { "description": "Configuration for controlling how IPs are allocated in the GKE cluster.", "id": "IPAllocationPolicy", @@ -869,6 +908,22 @@ }, "type": "object" }, + "Line": { + "description": "Contains information about a single line from logs.", + "id": "Line", + "properties": { + "content": { + "description": "Text content of the log line.", + "type": "string" + }, + "lineNumber": { + "description": "Number of the line.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "ListEnvironmentsResponse": { "description": "The environments in a project and location.", "id": "ListEnvironmentsResponse", @@ -1175,6 +1230,28 @@ }, "type": "object" }, + "PollAirflowCommandResponse": { + "description": "Response to PollAirflowCommandRequest.", + "id": "PollAirflowCommandResponse", + "properties": { + "exitInfo": { + "$ref": "ExitInfo", + "description": "The result exit status of the command." + }, + "output": { + "description": "Output from the command execution. It may not contain the full output and the caller may need to poll for more lines.", + "items": { + "$ref": "Line" + }, + "type": "array" + }, + "outputEnd": { + "description": "Whether the command execution has finished and there is no more output.", + "type": "boolean" + } + }, + "type": "object" + }, "PrivateClusterConfig": { "description": "Configuration options for the private GKE cluster in a Cloud Composer environment.", "id": "PrivateClusterConfig", @@ -1371,6 +1448,28 @@ }, "type": "object" }, + "TriggererResource": { + "description": "Configuration for resources used by Airflow triggerers.", + "id": "TriggererResource", + "properties": { + "count": { + "description": "Optional. The number of triggerers.", + "format": "int32", + "type": "integer" + }, + "cpu": { + "description": "Optional. CPU request and limit for a single Airflow triggerer replica.", + "format": "float", + "type": "number" + }, + "memoryGb": { + "description": "Optional. Memory (GB) request and limit for a single Airflow triggerer replica.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, "WebServerConfig": { "description": "The configuration settings for the Airflow web server App Engine instance. Supported for Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*.", "id": "WebServerConfig", @@ -1458,6 +1557,10 @@ "$ref": "SchedulerResource", "description": "Optional. Resources used by Airflow schedulers." }, + "triggerer": { + "$ref": "TriggererResource", + "description": "Optional. Resources used by Airflow triggerers." + }, "webServer": { "$ref": "WebServerResource", "description": "Optional. Resources used by Airflow web server." diff --git a/composer/v1beta1/composer-gen.go b/composer/v1beta1/composer-gen.go index 8cd5206819d..28fa4df4000 100644 --- a/composer/v1beta1/composer-gen.go +++ b/composer/v1beta1/composer-gen.go @@ -706,6 +706,75 @@ func (s *EnvironmentConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ExecuteAirflowCommandResponse: Response to +// ExecuteAirflowCommandRequest. +type ExecuteAirflowCommandResponse struct { + // Error: Error message. Empty if there was no error. + Error string `json:"error,omitempty"` + + // ExecutionId: The unique ID of the command execution for polling. + ExecutionId string `json:"executionId,omitempty"` + + // Pod: The name of the pod where the command is executed. + Pod string `json:"pod,omitempty"` + + // PodNamespace: The namespace of the pod where the command is executed. + PodNamespace string `json:"podNamespace,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Error") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Error") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ExecuteAirflowCommandResponse) MarshalJSON() ([]byte, error) { + type NoMethod ExecuteAirflowCommandResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ExitInfo: Information about how a command ended. +type ExitInfo struct { + // Error: Error message. Empty if there was no error. + Error string `json:"error,omitempty"` + + // ExitCode: The exit code from the command execution. + ExitCode int64 `json:"exitCode,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Error") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Error") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ExitInfo) MarshalJSON() ([]byte, error) { + type NoMethod ExitInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // IPAllocationPolicy: Configuration for controlling how IPs are // allocated in the GKE cluster. type IPAllocationPolicy struct { @@ -831,6 +900,37 @@ func (s *ImageVersion) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Line: Contains information about a single line from logs. +type Line struct { + // Content: Text content of the log line. + Content string `json:"content,omitempty"` + + // LineNumber: Number of the line. + LineNumber int64 `json:"lineNumber,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Content") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Content") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Line) MarshalJSON() ([]byte, error) { + type NoMethod Line + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ListEnvironmentsResponse: The environments in a project and location. type ListEnvironmentsResponse struct { // Environments: The list of environments returned by a @@ -1378,6 +1478,42 @@ func (s *OperationMetadata) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// PollAirflowCommandResponse: Response to PollAirflowCommandRequest. +type PollAirflowCommandResponse struct { + // ExitInfo: The result exit status of the command. + ExitInfo *ExitInfo `json:"exitInfo,omitempty"` + + // Output: Output from the command execution. It may not contain the + // full output and the caller may need to poll for more lines. + Output []*Line `json:"output,omitempty"` + + // OutputEnd: Whether the command execution has finished and there is no + // more output. + OutputEnd bool `json:"outputEnd,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ExitInfo") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ExitInfo") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PollAirflowCommandResponse) MarshalJSON() ([]byte, error) { + type NoMethod PollAirflowCommandResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // PrivateClusterConfig: Configuration options for the private GKE // cluster in a Cloud Composer environment. type PrivateClusterConfig struct { @@ -1782,6 +1918,59 @@ func (s *Status) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// TriggererResource: Configuration for resources used by Airflow +// triggerers. +type TriggererResource struct { + // Count: Optional. The number of triggerers. + Count int64 `json:"count,omitempty"` + + // Cpu: Optional. CPU request and limit for a single Airflow triggerer + // replica. + Cpu float64 `json:"cpu,omitempty"` + + // MemoryGb: Optional. Memory (GB) request and limit for a single + // Airflow triggerer replica. + MemoryGb float64 `json:"memoryGb,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Count") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Count") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TriggererResource) MarshalJSON() ([]byte, error) { + type NoMethod TriggererResource + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *TriggererResource) UnmarshalJSON(data []byte) error { + type NoMethod TriggererResource + var s1 struct { + Cpu gensupport.JSONFloat64 `json:"cpu"` + MemoryGb gensupport.JSONFloat64 `json:"memoryGb"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Cpu = float64(s1.Cpu) + s.MemoryGb = float64(s1.MemoryGb) + return nil +} + // WebServerConfig: The configuration settings for the Airflow web // server App Engine instance. Supported for Cloud Composer environments // in versions composer-1.*.*-airflow-*.*.*. @@ -1971,6 +2160,9 @@ type WorkloadsConfig struct { // Scheduler: Optional. Resources used by Airflow schedulers. Scheduler *SchedulerResource `json:"scheduler,omitempty"` + // Triggerer: Optional. Resources used by Airflow triggerers. + Triggerer *TriggererResource `json:"triggerer,omitempty"` + // WebServer: Optional. Resources used by Airflow web server. WebServer *WebServerResource `json:"webServer,omitempty"` diff --git a/compute/v0.alpha/compute-api.json b/compute/v0.alpha/compute-api.json index f02015dd83a..27875271774 100644 --- a/compute/v0.alpha/compute-api.json +++ b/compute/v0.alpha/compute-api.json @@ -40082,7 +40082,7 @@ } } }, - "revision": "20221026", + "revision": "20221101", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -69928,6 +69928,11 @@ ], "type": "string" }, + "maxDistance": { + "description": "Specifies the number of max logical switches.", + "format": "int32", + "type": "integer" + }, "scope": { "description": "Scope specifies the availability domain to which the VMs should be spread.", "enum": [ @@ -74282,6 +74287,10 @@ "format": "uint32", "type": "integer" }, + "networkUrl": { + "description": "The network URL for the network to set the limit for.", + "type": "string" + }, "projectIdOrNum": { "description": "The project id or number for the project to set the limit for.", "type": "string" diff --git a/compute/v0.alpha/compute-gen.go b/compute/v0.alpha/compute-gen.go index 855c6930d51..1ac8674f7c6 100644 --- a/compute/v0.alpha/compute-gen.go +++ b/compute/v0.alpha/compute-gen.go @@ -48619,6 +48619,9 @@ type ResourcePolicyGroupPlacementPolicy struct { // "UNSPECIFIED_LOCALITY" Locality string `json:"locality,omitempty"` + // MaxDistance: Specifies the number of max logical switches. + MaxDistance int64 `json:"maxDistance,omitempty"` + // Scope: Scope specifies the availability domain to which the VMs // should be spread. // @@ -55057,6 +55060,9 @@ type ServiceAttachmentConsumerProjectLimit struct { // ConnectionLimit: The value of the limit to set. ConnectionLimit int64 `json:"connectionLimit,omitempty"` + // NetworkUrl: The network URL for the network to set the limit for. + NetworkUrl string `json:"networkUrl,omitempty"` + // ProjectIdOrNum: The project id or number for the project to set the // limit for. ProjectIdOrNum string `json:"projectIdOrNum,omitempty"` diff --git a/compute/v0.beta/compute-api.json b/compute/v0.beta/compute-api.json index c9b71d5ef97..01b58881f53 100644 --- a/compute/v0.beta/compute-api.json +++ b/compute/v0.beta/compute-api.json @@ -35517,9 +35517,32 @@ } } }, - "revision": "20221026", + "revision": "20221101", "rootUrl": "https://compute.googleapis.com/", "schemas": { + "AWSV4Signature": { + "description": "Contains the configurations necessary to generate a signature for access to private storage buckets that support Signature Version 4 for authentication. The service name for generating the authentication header will always default to 's3'.", + "id": "AWSV4Signature", + "properties": { + "accessKey": { + "description": "The access key used for s3 bucket authentication. Required for updating or creating a backend that uses AWS v4 signature authentication, but will not be returned as part of the configuration when queried with a REST API GET request. @InputOnly", + "type": "string" + }, + "accessKeyId": { + "description": "The identifier of an access key used for s3 bucket authentication.", + "type": "string" + }, + "accessKeyVersion": { + "description": "The optional version identifier for the access key. You can use this to keep track of different iterations of your access key.", + "type": "string" + }, + "originRegion": { + "description": "The name of the cloud region of your origin. This is a free-form field with the name of the region your cloud uses to host your origin. For example, \"us-east-1\" for AWS or \"us-ashburn-1\" for OCI.", + "type": "string" + } + }, + "type": "object" + }, "AcceleratorConfig": { "description": "A specification of the type and number of accelerator cards attached to the instance.", "id": "AcceleratorConfig", @@ -45001,6 +45024,10 @@ }, "type": "array" }, + "pathTemplateMatch": { + "description": "If specified, the route is a pattern match expression that must match the :path header once the query string is removed. A pattern match allows you to match - The value must be between 1 and 1024 characters - The pattern must start with a leading slash (\"/\") - There may be no more than 5 operators in pattern Precisely one of prefix_match, full_path_match, regex_match or path_template_match must be set.", + "type": "string" + }, "prefixMatch": { "description": "For satisfying the matchRule condition, the request's path must begin with the specified prefixMatch. prefixMatch must begin with a /. The value must be from 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified.", "type": "string" @@ -60620,6 +60647,19 @@ "physicalHost": { "description": "[Output Only] An opaque ID of the host on which the VM is running.", "type": "string" + }, + "scheduling": { + "$ref": "ResourceStatusScheduling" + } + }, + "type": "object" + }, + "ResourceStatusScheduling": { + "id": "ResourceStatusScheduling", + "properties": { + "terminationTimestamp": { + "description": "Time in future when the instance will be terminated in RFC3339 text format.", + "type": "string" } }, "type": "object" @@ -63729,6 +63769,10 @@ "description": "[Deprecated] Use clientTlsPolicy instead.", "type": "string" }, + "awsV4Authentication": { + "$ref": "AWSV4Signature", + "description": "The configuration needed to generate a signature for access to private storage buckets that support AWS's Signature Version 4 for authentication. Allowed only for INTERNET_IP_PORT and INTERNET_FQDN_PORT NEG backends." + }, "clientTlsPolicy": { "description": "Optional. A URL referring to a networksecurity.ClientTlsPolicy resource that describes how clients should authenticate with this service's backends. clientTlsPolicy only applies to a global BackendService with the loadBalancingScheme set to INTERNAL_SELF_MANAGED. If left blank, communications are not encrypted. Note: This field currently has no impact.", "type": "string" @@ -70569,6 +70613,10 @@ "pathPrefixRewrite": { "description": "Before forwarding the request to the selected backend service, the matching portion of the request's path is replaced by pathPrefixRewrite. The value must be from 1 to 1024 characters.", "type": "string" + }, + "pathTemplateRewrite": { + "description": " If specified, the pattern rewrites the URL path (based on the :path header) using the HTTP template syntax. A corresponding path_template_match must be specified. Any template variables must exist in the path_template_match field. - -At least one variable must be specified in the path_template_match field - You can omit variables from the rewritten URL - The * and ** operators cannot be matched unless they have a corresponding variable name - e.g. {format=*} or {var=**}. For example, a path_template_match of /static/{format=**} could be rewritten as /static/content/{format} to prefix /content to the URL. Variables can also be re-ordered in a rewrite, so that /{country}/{format}/{suffix=**} can be rewritten as /content/{format}/{country}/{suffix}. At least one non-empty routeRules[].matchRules[].path_template_match is required. Only one of path_prefix_rewrite or path_template_rewrite may be specified.", + "type": "string" } }, "type": "object" diff --git a/compute/v0.beta/compute-gen.go b/compute/v0.beta/compute-gen.go index 5d8232bf00b..f202a6a49cf 100644 --- a/compute/v0.beta/compute-gen.go +++ b/compute/v0.beta/compute-gen.go @@ -1240,6 +1240,55 @@ type ZonesService struct { s *Service } +// AWSV4Signature: Contains the configurations necessary to generate a +// signature for access to private storage buckets that support +// Signature Version 4 for authentication. The service name for +// generating the authentication header will always default to 's3'. +type AWSV4Signature struct { + // AccessKey: The access key used for s3 bucket authentication. Required + // for updating or creating a backend that uses AWS v4 signature + // authentication, but will not be returned as part of the configuration + // when queried with a REST API GET request. @InputOnly + AccessKey string `json:"accessKey,omitempty"` + + // AccessKeyId: The identifier of an access key used for s3 bucket + // authentication. + AccessKeyId string `json:"accessKeyId,omitempty"` + + // AccessKeyVersion: The optional version identifier for the access key. + // You can use this to keep track of different iterations of your access + // key. + AccessKeyVersion string `json:"accessKeyVersion,omitempty"` + + // OriginRegion: The name of the cloud region of your origin. This is a + // free-form field with the name of the region your cloud uses to host + // your origin. For example, "us-east-1" for AWS or "us-ashburn-1" for + // OCI. + OriginRegion string `json:"originRegion,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AccessKey") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AccessKey") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AWSV4Signature) MarshalJSON() ([]byte, error) { + type NoMethod AWSV4Signature + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // AcceleratorConfig: A specification of the type and number of // accelerator cards attached to the instance. type AcceleratorConfig struct { @@ -16631,6 +16680,15 @@ type HttpRouteRuleMatch struct { // validateForProxyless field set to true. MetadataFilters []*MetadataFilter `json:"metadataFilters,omitempty"` + // PathTemplateMatch: If specified, the route is a pattern match + // expression that must match the :path header once the query string is + // removed. A pattern match allows you to match - The value must be + // between 1 and 1024 characters - The pattern must start with a leading + // slash ("/") - There may be no more than 5 operators in pattern + // Precisely one of prefix_match, full_path_match, regex_match or + // path_template_match must be set. + PathTemplateMatch string `json:"pathTemplateMatch,omitempty"` + // PrefixMatch: For satisfying the matchRule condition, the request's // path must begin with the specified prefixMatch. prefixMatch must // begin with a /. The value must be from 1 to 1024 characters. Only one @@ -41152,6 +41210,8 @@ type ResourceStatus struct { // is running. PhysicalHost string `json:"physicalHost,omitempty"` + Scheduling *ResourceStatusScheduling `json:"scheduling,omitempty"` + // ForceSendFields is a list of field names (e.g. "PhysicalHost") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -41175,6 +41235,36 @@ func (s *ResourceStatus) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type ResourceStatusScheduling struct { + // TerminationTimestamp: Time in future when the instance will be + // terminated in RFC3339 text format. + TerminationTimestamp string `json:"terminationTimestamp,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "TerminationTimestamp") to unconditionally include in API requests. + // By default, fields with empty or default values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "TerminationTimestamp") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ResourceStatusScheduling) MarshalJSON() ([]byte, error) { + type NoMethod ResourceStatusScheduling + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // RolloutPolicy: A rollout policy configuration. type RolloutPolicy struct { // DefaultRolloutTime: An optional RFC3339 timestamp on or after which @@ -45663,6 +45753,12 @@ type SecuritySettings struct { // Authentication: [Deprecated] Use clientTlsPolicy instead. Authentication string `json:"authentication,omitempty"` + // AwsV4Authentication: The configuration needed to generate a signature + // for access to private storage buckets that support AWS's Signature + // Version 4 for authentication. Allowed only for INTERNET_IP_PORT and + // INTERNET_FQDN_PORT NEG backends. + AwsV4Authentication *AWSV4Signature `json:"awsV4Authentication,omitempty"` + // ClientTlsPolicy: Optional. A URL referring to a // networksecurity.ClientTlsPolicy resource that describes how clients // should authenticate with this service's backends. clientTlsPolicy @@ -56610,6 +56706,22 @@ type UrlRewrite struct { // characters. PathPrefixRewrite string `json:"pathPrefixRewrite,omitempty"` + // PathTemplateRewrite: If specified, the pattern rewrites the URL path + // (based on the :path header) using the HTTP template syntax. A + // corresponding path_template_match must be specified. Any template + // variables must exist in the path_template_match field. - -At least + // one variable must be specified in the path_template_match field - You + // can omit variables from the rewritten URL - The * and ** operators + // cannot be matched unless they have a corresponding variable name - + // e.g. {format=*} or {var=**}. For example, a path_template_match of + // /static/{format=**} could be rewritten as /static/content/{format} to + // prefix /content to the URL. Variables can also be re-ordered in a + // rewrite, so that /{country}/{format}/{suffix=**} can be rewritten as + // /content/{format}/{country}/{suffix}. At least one non-empty + // routeRules[].matchRules[].path_template_match is required. Only one + // of path_prefix_rewrite or path_template_rewrite may be specified. + PathTemplateRewrite string `json:"pathTemplateRewrite,omitempty"` + // ForceSendFields is a list of field names (e.g. "HostRewrite") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any diff --git a/contactcenterinsights/v1/contactcenterinsights-api.json b/contactcenterinsights/v1/contactcenterinsights-api.json index b04307f9f10..b52175e4ec7 100644 --- a/contactcenterinsights/v1/contactcenterinsights-api.json +++ b/contactcenterinsights/v1/contactcenterinsights-api.json @@ -172,6 +172,34 @@ "resources": { "conversations": { "methods": { + "bulkAnalyze": { + "description": "Analyzes multiple conversations in a single request.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations:bulkAnalyze", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.conversations.bulkAnalyze", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource to create analyses in.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/conversations:bulkAnalyze", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "calculateStats": { "description": "Gets conversation statistics.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations:calculateStats", @@ -305,6 +333,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "ingest": { + "description": "Imports conversations and processes them according to the user's configuration.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations:ingest", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.conversations.ingest", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource for new conversations.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/conversations:ingest", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "list": { "description": "Lists conversations.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations", @@ -1275,7 +1331,7 @@ } } }, - "revision": "20220513", + "revision": "20221112", "rootUrl": "https://contactcenterinsights.googleapis.com/", "schemas": { "GoogleCloudContactcenterinsightsV1Analysis": { @@ -1451,6 +1507,79 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsMetadata": { + "description": "The metadata for a bulk analyze conversations operation.", + "id": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsMetadata", + "properties": { + "completedAnalysesCount": { + "description": "The number of requested analyses that have completed successfully so far.", + "format": "int32", + "type": "integer" + }, + "createTime": { + "description": "The time the operation was created.", + "format": "google-datetime", + "type": "string" + }, + "endTime": { + "description": "The time the operation finished running.", + "format": "google-datetime", + "type": "string" + }, + "failedAnalysesCount": { + "description": "The number of requested analyses that have failed so far.", + "format": "int32", + "type": "integer" + }, + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest", + "description": "The original request for bulk analyze." + }, + "totalRequestedAnalysesCount": { + "description": "Total number of analyses requested. Computed by the number of conversations returned by `filter` multiplied by `analysis_percentage` in the request.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest": { + "description": "The request to analyze conversations in bulk.", + "id": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest", + "properties": { + "analysisPercentage": { + "description": "Required. Percentage of selected conversation to analyze, between [0, 100].", + "format": "float", + "type": "number" + }, + "filter": { + "description": "Required. Filter used to select the subset of conversations to analyze.", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource to create analyses in.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsResponse": { + "description": "The response for a bulk analyze conversations operation.", + "id": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsResponse", + "properties": { + "failedAnalysisCount": { + "description": "Count of failed analyses.", + "format": "int32", + "type": "integer" + }, + "successfulAnalysisCount": { + "description": "Count of successful analyses.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1CalculateIssueModelStatsResponse": { "description": "Response of querying an issue model's statistics.", "id": "GoogleCloudContactcenterinsightsV1CalculateIssueModelStatsResponse", @@ -1588,6 +1717,10 @@ "$ref": "GoogleCloudContactcenterinsightsV1InterruptionData", "description": "Data specifying an interruption." }, + "issueMatchData": { + "$ref": "GoogleCloudContactcenterinsightsV1IssueMatchData", + "description": "Data specifying an issue match." + }, "phraseMatchData": { "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatchData", "description": "Data specifying a phrase match." @@ -2337,6 +2470,110 @@ "properties": {}, "type": "object" }, + "GoogleCloudContactcenterinsightsV1IngestConversationsMetadata": { + "description": "The metadata for an IngestConversations operation.", + "id": "GoogleCloudContactcenterinsightsV1IngestConversationsMetadata", + "properties": { + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "partialErrors": { + "description": "Output only. Partial errors during ingest operation that might cause the operation output to be incomplete.", + "items": { + "$ref": "GoogleRpcStatus" + }, + "readOnly": true, + "type": "array" + }, + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsRequest", + "description": "Output only. The original request for ingest.", + "readOnly": true + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1IngestConversationsRequest": { + "description": "The request to ingest conversations.", + "id": "GoogleCloudContactcenterinsightsV1IngestConversationsRequest", + "properties": { + "conversationConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig", + "description": "Configuration that applies to all conversations." + }, + "gcsSource": { + "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource", + "description": "A cloud storage bucket source." + }, + "parent": { + "description": "Required. The parent resource for new conversations.", + "type": "string" + }, + "transcriptObjectConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig", + "description": "Configuration for when `source` contains conversation transcripts." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig": { + "description": "Configuration that applies to all conversations.", + "id": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig", + "properties": { + "agentId": { + "description": "An opaque, user-specified string representing the human agent who handled the conversations.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource": { + "description": "Configuration for Cloud Storage bucket sources.", + "id": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource", + "properties": { + "bucketUri": { + "description": "Required. The Cloud Storage bucket containing source objects.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig": { + "description": "Configuration for processing transcript objects.", + "id": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig", + "properties": { + "medium": { + "description": "Required. The medium transcript objects represent.", + "enum": [ + "MEDIUM_UNSPECIFIED", + "PHONE_CALL", + "CHAT" + ], + "enumDescriptions": [ + "Default value, if unspecified will default to PHONE_CALL.", + "The format for conversations that took place over the phone.", + "The format for conversations that took place over chat." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1IngestConversationsResponse": { + "description": "The response to an IngestConversations operation.", + "id": "GoogleCloudContactcenterinsightsV1IngestConversationsResponse", + "properties": {}, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1Intent": { "description": "The data for an intent. Represents a detected intent in the conversation, for example MAKES_PROMISE.", "id": "GoogleCloudContactcenterinsightsV1Intent", @@ -2416,6 +2653,17 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1IssueMatchData": { + "description": "The data for an issue match annotation.", + "id": "GoogleCloudContactcenterinsightsV1IssueMatchData", + "properties": { + "issueAssignment": { + "$ref": "GoogleCloudContactcenterinsightsV1IssueAssignment", + "description": "Information about the issue's assignment." + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1IssueModel": { "description": "The issue model resource.", "id": "GoogleCloudContactcenterinsightsV1IssueModel", @@ -3075,6 +3323,79 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsMetadata": { + "description": "The metadata for a bulk analyze conversations operation.", + "id": "GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsMetadata", + "properties": { + "completedAnalysesCount": { + "description": "The number of requested analyses that have completed successfully so far.", + "format": "int32", + "type": "integer" + }, + "createTime": { + "description": "The time the operation was created.", + "format": "google-datetime", + "type": "string" + }, + "endTime": { + "description": "The time the operation finished running.", + "format": "google-datetime", + "type": "string" + }, + "failedAnalysesCount": { + "description": "The number of requested analyses that have failed so far.", + "format": "int32", + "type": "integer" + }, + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsRequest", + "description": "The original request for bulk analyze." + }, + "totalRequestedAnalysesCount": { + "description": "Total number of analyses requested. Computed by the number of conversations returned by `filter` multiplied by `analysis_percentage` in the request.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsRequest": { + "description": "The request to analyze conversations in bulk.", + "id": "GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsRequest", + "properties": { + "analysisPercentage": { + "description": "Required. Percentage of selected conversation to analyze, between [0, 100].", + "format": "float", + "type": "number" + }, + "filter": { + "description": "Required. Filter used to select the subset of conversations to analyze.", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource to create analyses in.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsResponse": { + "description": "The response for a bulk analyze conversations operation.", + "id": "GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsResponse", + "properties": { + "failedAnalysisCount": { + "description": "Count of failed analyses.", + "format": "int32", + "type": "integer" + }, + "successfulAnalysisCount": { + "description": "Count of successful analyses.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1alpha1CreateAnalysisOperationMetadata": { "description": "Metadata for a create analysis operation.", "id": "GoogleCloudContactcenterinsightsV1alpha1CreateAnalysisOperationMetadata", @@ -3303,6 +3624,110 @@ "properties": {}, "type": "object" }, + "GoogleCloudContactcenterinsightsV1alpha1IngestConversationsMetadata": { + "description": "The metadata for an IngestConversations operation.", + "id": "GoogleCloudContactcenterinsightsV1alpha1IngestConversationsMetadata", + "properties": { + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "partialErrors": { + "description": "Output only. Partial errors during ingest operation that might cause the operation output to be incomplete.", + "items": { + "$ref": "GoogleRpcStatus" + }, + "readOnly": true, + "type": "array" + }, + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequest", + "description": "Output only. The original request for ingest.", + "readOnly": true + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequest": { + "description": "The request to ingest conversations.", + "id": "GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequest", + "properties": { + "conversationConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestConversationConfig", + "description": "Configuration that applies to all conversations." + }, + "gcsSource": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestGcsSource", + "description": "A cloud storage bucket source." + }, + "parent": { + "description": "Required. The parent resource for new conversations.", + "type": "string" + }, + "transcriptObjectConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestTranscriptObjectConfig", + "description": "Configuration for when `source` contains conversation transcripts." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestConversationConfig": { + "description": "Configuration that applies to all conversations.", + "id": "GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestConversationConfig", + "properties": { + "agentId": { + "description": "An opaque, user-specified string representing the human agent who handled the conversations.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestGcsSource": { + "description": "Configuration for Cloud Storage bucket sources.", + "id": "GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestGcsSource", + "properties": { + "bucketUri": { + "description": "Required. The Cloud Storage bucket containing source objects.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestTranscriptObjectConfig": { + "description": "Configuration for processing transcript objects.", + "id": "GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestTranscriptObjectConfig", + "properties": { + "medium": { + "description": "Required. The medium transcript objects represent.", + "enum": [ + "MEDIUM_UNSPECIFIED", + "PHONE_CALL", + "CHAT" + ], + "enumDescriptions": [ + "Default value, if unspecified will default to PHONE_CALL.", + "The format for conversations that took place over the phone.", + "The format for conversations that took place over chat." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1IngestConversationsResponse": { + "description": "The response to an IngestConversations operation.", + "id": "GoogleCloudContactcenterinsightsV1alpha1IngestConversationsResponse", + "properties": {}, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1alpha1IssueModel": { "description": "The issue model resource.", "id": "GoogleCloudContactcenterinsightsV1alpha1IssueModel", diff --git a/contactcenterinsights/v1/contactcenterinsights-gen.go b/contactcenterinsights/v1/contactcenterinsights-gen.go index b4ec3ac9c4b..5da776c91b3 100644 --- a/contactcenterinsights/v1/contactcenterinsights-gen.go +++ b/contactcenterinsights/v1/contactcenterinsights-gen.go @@ -525,6 +525,141 @@ func (s *GoogleCloudContactcenterinsightsV1ArticleSuggestionData) UnmarshalJSON( return nil } +// GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsMetadata: +// The metadata for a bulk analyze conversations operation. +type GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsMetadata struct { + // CompletedAnalysesCount: The number of requested analyses that have + // completed successfully so far. + CompletedAnalysesCount int64 `json:"completedAnalysesCount,omitempty"` + + // CreateTime: The time the operation was created. + CreateTime string `json:"createTime,omitempty"` + + // EndTime: The time the operation finished running. + EndTime string `json:"endTime,omitempty"` + + // FailedAnalysesCount: The number of requested analyses that have + // failed so far. + FailedAnalysesCount int64 `json:"failedAnalysesCount,omitempty"` + + // Request: The original request for bulk analyze. + Request *GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest `json:"request,omitempty"` + + // TotalRequestedAnalysesCount: Total number of analyses requested. + // Computed by the number of conversations returned by `filter` + // multiplied by `analysis_percentage` in the request. + TotalRequestedAnalysesCount int64 `json:"totalRequestedAnalysesCount,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CompletedAnalysesCount") to unconditionally include in API requests. + // By default, fields with empty or default values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CompletedAnalysesCount") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest: +// The request to analyze conversations in bulk. +type GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest struct { + // AnalysisPercentage: Required. Percentage of selected conversation to + // analyze, between [0, 100]. + AnalysisPercentage float64 `json:"analysisPercentage,omitempty"` + + // Filter: Required. Filter used to select the subset of conversations + // to analyze. + Filter string `json:"filter,omitempty"` + + // Parent: Required. The parent resource to create analyses in. + Parent string `json:"parent,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AnalysisPercentage") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AnalysisPercentage") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest + var s1 struct { + AnalysisPercentage gensupport.JSONFloat64 `json:"analysisPercentage"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.AnalysisPercentage = float64(s1.AnalysisPercentage) + return nil +} + +// GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsResponse: +// The response for a bulk analyze conversations operation. +type GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsResponse struct { + // FailedAnalysisCount: Count of failed analyses. + FailedAnalysisCount int64 `json:"failedAnalysisCount,omitempty"` + + // SuccessfulAnalysisCount: Count of successful analyses. + SuccessfulAnalysisCount int64 `json:"successfulAnalysisCount,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FailedAnalysisCount") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FailedAnalysisCount") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudContactcenterinsightsV1CalculateIssueModelStatsResponse: // Response of querying an issue model's statistics. type GoogleCloudContactcenterinsightsV1CalculateIssueModelStatsResponse struct { @@ -724,6 +859,9 @@ type GoogleCloudContactcenterinsightsV1CallAnnotation struct { // InterruptionData: Data specifying an interruption. InterruptionData *GoogleCloudContactcenterinsightsV1InterruptionData `json:"interruptionData,omitempty"` + // IssueMatchData: Data specifying an issue match. + IssueMatchData *GoogleCloudContactcenterinsightsV1IssueMatchData `json:"issueMatchData,omitempty"` + // PhraseMatchData: Data specifying a phrase match. PhraseMatchData *GoogleCloudContactcenterinsightsV1PhraseMatchData `json:"phraseMatchData,omitempty"` @@ -1982,6 +2120,187 @@ func (s *GoogleCloudContactcenterinsightsV1GcsSource) MarshalJSON() ([]byte, err type GoogleCloudContactcenterinsightsV1HoldData struct { } +// GoogleCloudContactcenterinsightsV1IngestConversationsMetadata: The +// metadata for an IngestConversations operation. +type GoogleCloudContactcenterinsightsV1IngestConversationsMetadata struct { + // CreateTime: Output only. The time the operation was created. + CreateTime string `json:"createTime,omitempty"` + + // EndTime: Output only. The time the operation finished running. + EndTime string `json:"endTime,omitempty"` + + // PartialErrors: Output only. Partial errors during ingest operation + // that might cause the operation output to be incomplete. + PartialErrors []*GoogleRpcStatus `json:"partialErrors,omitempty"` + + // Request: Output only. The original request for ingest. + Request *GoogleCloudContactcenterinsightsV1IngestConversationsRequest `json:"request,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1IngestConversationsMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1IngestConversationsMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudContactcenterinsightsV1IngestConversationsRequest: The +// request to ingest conversations. +type GoogleCloudContactcenterinsightsV1IngestConversationsRequest struct { + // ConversationConfig: Configuration that applies to all conversations. + ConversationConfig *GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig `json:"conversationConfig,omitempty"` + + // GcsSource: A cloud storage bucket source. + GcsSource *GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource `json:"gcsSource,omitempty"` + + // Parent: Required. The parent resource for new conversations. + Parent string `json:"parent,omitempty"` + + // TranscriptObjectConfig: Configuration for when `source` contains + // conversation transcripts. + TranscriptObjectConfig *GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig `json:"transcriptObjectConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ConversationConfig") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ConversationConfig") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1IngestConversationsRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1IngestConversationsRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversati +// onConfig: Configuration that applies to all conversations. +type GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig struct { + // AgentId: An opaque, user-specified string representing the human + // agent who handled the conversations. + AgentId string `json:"agentId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AgentId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AgentId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource: +// +// Configuration for Cloud Storage bucket sources. +type GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource struct { + // BucketUri: Required. The Cloud Storage bucket containing source + // objects. + BucketUri string `json:"bucketUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BucketUri") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BucketUri") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscript +// ObjectConfig: Configuration for processing transcript objects. +type GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig struct { + // Medium: Required. The medium transcript objects represent. + // + // Possible values: + // "MEDIUM_UNSPECIFIED" - Default value, if unspecified will default + // to PHONE_CALL. + // "PHONE_CALL" - The format for conversations that took place over + // the phone. + // "CHAT" - The format for conversations that took place over chat. + Medium string `json:"medium,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Medium") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Medium") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudContactcenterinsightsV1IngestConversationsResponse: The +// response to an IngestConversations operation. +type GoogleCloudContactcenterinsightsV1IngestConversationsResponse struct { +} + // GoogleCloudContactcenterinsightsV1Intent: The data for an intent. // Represents a detected intent in the conversation, for example // MAKES_PROMISE. @@ -2148,6 +2467,36 @@ func (s *GoogleCloudContactcenterinsightsV1IssueAssignment) UnmarshalJSON(data [ return nil } +// GoogleCloudContactcenterinsightsV1IssueMatchData: The data for an +// issue match annotation. +type GoogleCloudContactcenterinsightsV1IssueMatchData struct { + // IssueAssignment: Information about the issue's assignment. + IssueAssignment *GoogleCloudContactcenterinsightsV1IssueAssignment `json:"issueAssignment,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IssueAssignment") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "IssueAssignment") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1IssueMatchData) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1IssueMatchData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudContactcenterinsightsV1IssueModel: The issue model // resource. type GoogleCloudContactcenterinsightsV1IssueModel struct { @@ -3285,34 +3634,169 @@ func (s *GoogleCloudContactcenterinsightsV1View) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleCloudContactcenterinsightsV1alpha1CreateAnalysisOperationMetadat -// a: Metadata for a create analysis operation. -type GoogleCloudContactcenterinsightsV1alpha1CreateAnalysisOperationMetadata struct { - // Conversation: Output only. The Conversation that this Analysis - // Operation belongs to. - Conversation string `json:"conversation,omitempty"` +// GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsMetada +// ta: The metadata for a bulk analyze conversations operation. +type GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsMetadata struct { + // CompletedAnalysesCount: The number of requested analyses that have + // completed successfully so far. + CompletedAnalysesCount int64 `json:"completedAnalysesCount,omitempty"` - // CreateTime: Output only. The time the operation was created. + // CreateTime: The time the operation was created. CreateTime string `json:"createTime,omitempty"` - // EndTime: Output only. The time the operation finished running. + // EndTime: The time the operation finished running. EndTime string `json:"endTime,omitempty"` - // ForceSendFields is a list of field names (e.g. "Conversation") to - // unconditionally include in API requests. By default, fields with - // empty or default values are omitted from API requests. However, any - // non-pointer, non-interface field appearing in ForceSendFields will be - // sent to the server regardless of whether the field is empty or not. - // This may be used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` + // FailedAnalysesCount: The number of requested analyses that have + // failed so far. + FailedAnalysesCount int64 `json:"failedAnalysesCount,omitempty"` - // NullFields is a list of field names (e.g. "Conversation") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. - NullFields []string `json:"-"` + // Request: The original request for bulk analyze. + Request *GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsRequest `json:"request,omitempty"` + + // TotalRequestedAnalysesCount: Total number of analyses requested. + // Computed by the number of conversations returned by `filter` + // multiplied by `analysis_percentage` in the request. + TotalRequestedAnalysesCount int64 `json:"totalRequestedAnalysesCount,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CompletedAnalysesCount") to unconditionally include in API requests. + // By default, fields with empty or default values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CompletedAnalysesCount") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsReques +// t: The request to analyze conversations in bulk. +type GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsRequest struct { + // AnalysisPercentage: Required. Percentage of selected conversation to + // analyze, between [0, 100]. + AnalysisPercentage float64 `json:"analysisPercentage,omitempty"` + + // Filter: Required. Filter used to select the subset of conversations + // to analyze. + Filter string `json:"filter,omitempty"` + + // Parent: Required. The parent resource to create analyses in. + Parent string `json:"parent,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AnalysisPercentage") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AnalysisPercentage") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsRequest) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsRequest + var s1 struct { + AnalysisPercentage gensupport.JSONFloat64 `json:"analysisPercentage"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.AnalysisPercentage = float64(s1.AnalysisPercentage) + return nil +} + +// GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsRespon +// se: The response for a bulk analyze conversations operation. +type GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsResponse struct { + // FailedAnalysisCount: Count of failed analyses. + FailedAnalysisCount int64 `json:"failedAnalysisCount,omitempty"` + + // SuccessfulAnalysisCount: Count of successful analyses. + SuccessfulAnalysisCount int64 `json:"successfulAnalysisCount,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FailedAnalysisCount") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FailedAnalysisCount") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudContactcenterinsightsV1alpha1CreateAnalysisOperationMetadat +// a: Metadata for a create analysis operation. +type GoogleCloudContactcenterinsightsV1alpha1CreateAnalysisOperationMetadata struct { + // Conversation: Output only. The Conversation that this Analysis + // Operation belongs to. + Conversation string `json:"conversation,omitempty"` + + // CreateTime: Output only. The time the operation was created. + CreateTime string `json:"createTime,omitempty"` + + // EndTime: Output only. The time the operation finished running. + EndTime string `json:"endTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Conversation") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Conversation") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` } func (s *GoogleCloudContactcenterinsightsV1alpha1CreateAnalysisOperationMetadata) MarshalJSON() ([]byte, error) { @@ -3661,6 +4145,186 @@ func (s *GoogleCloudContactcenterinsightsV1alpha1ExportInsightsDataRequestBigQue type GoogleCloudContactcenterinsightsV1alpha1ExportInsightsDataResponse struct { } +// GoogleCloudContactcenterinsightsV1alpha1IngestConversationsMetadata: +// The metadata for an IngestConversations operation. +type GoogleCloudContactcenterinsightsV1alpha1IngestConversationsMetadata struct { + // CreateTime: Output only. The time the operation was created. + CreateTime string `json:"createTime,omitempty"` + + // EndTime: Output only. The time the operation finished running. + EndTime string `json:"endTime,omitempty"` + + // PartialErrors: Output only. Partial errors during ingest operation + // that might cause the operation output to be incomplete. + PartialErrors []*GoogleRpcStatus `json:"partialErrors,omitempty"` + + // Request: Output only. The original request for ingest. + Request *GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequest `json:"request,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1alpha1IngestConversationsMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1alpha1IngestConversationsMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequest: +// The request to ingest conversations. +type GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequest struct { + // ConversationConfig: Configuration that applies to all conversations. + ConversationConfig *GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestConversationConfig `json:"conversationConfig,omitempty"` + + // GcsSource: A cloud storage bucket source. + GcsSource *GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestGcsSource `json:"gcsSource,omitempty"` + + // Parent: Required. The parent resource for new conversations. + Parent string `json:"parent,omitempty"` + + // TranscriptObjectConfig: Configuration for when `source` contains + // conversation transcripts. + TranscriptObjectConfig *GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestTranscriptObjectConfig `json:"transcriptObjectConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ConversationConfig") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ConversationConfig") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestConv +// ersationConfig: Configuration that applies to all conversations. +type GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestConversationConfig struct { + // AgentId: An opaque, user-specified string representing the human + // agent who handled the conversations. + AgentId string `json:"agentId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AgentId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AgentId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestConversationConfig) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestConversationConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestGcsS +// ource: Configuration for Cloud Storage bucket sources. +type GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestGcsSource struct { + // BucketUri: Required. The Cloud Storage bucket containing source + // objects. + BucketUri string `json:"bucketUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BucketUri") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BucketUri") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestGcsSource) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestGcsSource + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestTran +// scriptObjectConfig: Configuration for processing transcript objects. +type GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestTranscriptObjectConfig struct { + // Medium: Required. The medium transcript objects represent. + // + // Possible values: + // "MEDIUM_UNSPECIFIED" - Default value, if unspecified will default + // to PHONE_CALL. + // "PHONE_CALL" - The format for conversations that took place over + // the phone. + // "CHAT" - The format for conversations that took place over chat. + Medium string `json:"medium,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Medium") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Medium") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestTranscriptObjectConfig) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestTranscriptObjectConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudContactcenterinsightsV1alpha1IngestConversationsResponse: +// The response to an IngestConversations operation. +type GoogleCloudContactcenterinsightsV1alpha1IngestConversationsResponse struct { +} + // GoogleCloudContactcenterinsightsV1alpha1IssueModel: The issue model // resource. type GoogleCloudContactcenterinsightsV1alpha1IssueModel struct { @@ -4375,6 +5039,148 @@ func (c *ProjectsLocationsUpdateSettingsCall) Do(opts ...googleapi.CallOption) ( } +// method id "contactcenterinsights.projects.locations.conversations.bulkAnalyze": + +type ProjectsLocationsConversationsBulkAnalyzeCall struct { + s *Service + parent string + googlecloudcontactcenterinsightsv1bulkanalyzeconversationsrequest *GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// BulkAnalyze: Analyzes multiple conversations in a single request. +// +// - parent: The parent resource to create analyses in. +func (r *ProjectsLocationsConversationsService) BulkAnalyze(parent string, googlecloudcontactcenterinsightsv1bulkanalyzeconversationsrequest *GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest) *ProjectsLocationsConversationsBulkAnalyzeCall { + c := &ProjectsLocationsConversationsBulkAnalyzeCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googlecloudcontactcenterinsightsv1bulkanalyzeconversationsrequest = googlecloudcontactcenterinsightsv1bulkanalyzeconversationsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsConversationsBulkAnalyzeCall) Fields(s ...googleapi.Field) *ProjectsLocationsConversationsBulkAnalyzeCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsConversationsBulkAnalyzeCall) Context(ctx context.Context) *ProjectsLocationsConversationsBulkAnalyzeCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsConversationsBulkAnalyzeCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsConversationsBulkAnalyzeCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudcontactcenterinsightsv1bulkanalyzeconversationsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/conversations:bulkAnalyze") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "contactcenterinsights.projects.locations.conversations.bulkAnalyze" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsConversationsBulkAnalyzeCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Analyzes multiple conversations in a single request.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations:bulkAnalyze", + // "httpMethod": "POST", + // "id": "contactcenterinsights.projects.locations.conversations.bulkAnalyze", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The parent resource to create analyses in.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/conversations:bulkAnalyze", + // "request": { + // "$ref": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "contactcenterinsights.projects.locations.conversations.calculateStats": type ProjectsLocationsConversationsCalculateStatsCall struct { @@ -5024,6 +5830,149 @@ func (c *ProjectsLocationsConversationsGetCall) Do(opts ...googleapi.CallOption) } +// method id "contactcenterinsights.projects.locations.conversations.ingest": + +type ProjectsLocationsConversationsIngestCall struct { + s *Service + parent string + googlecloudcontactcenterinsightsv1ingestconversationsrequest *GoogleCloudContactcenterinsightsV1IngestConversationsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Ingest: Imports conversations and processes them according to the +// user's configuration. +// +// - parent: The parent resource for new conversations. +func (r *ProjectsLocationsConversationsService) Ingest(parent string, googlecloudcontactcenterinsightsv1ingestconversationsrequest *GoogleCloudContactcenterinsightsV1IngestConversationsRequest) *ProjectsLocationsConversationsIngestCall { + c := &ProjectsLocationsConversationsIngestCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googlecloudcontactcenterinsightsv1ingestconversationsrequest = googlecloudcontactcenterinsightsv1ingestconversationsrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsConversationsIngestCall) Fields(s ...googleapi.Field) *ProjectsLocationsConversationsIngestCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsConversationsIngestCall) Context(ctx context.Context) *ProjectsLocationsConversationsIngestCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsConversationsIngestCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsConversationsIngestCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudcontactcenterinsightsv1ingestconversationsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/conversations:ingest") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "contactcenterinsights.projects.locations.conversations.ingest" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsConversationsIngestCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Imports conversations and processes them according to the user's configuration.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations:ingest", + // "httpMethod": "POST", + // "id": "contactcenterinsights.projects.locations.conversations.ingest", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The parent resource for new conversations.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/conversations:ingest", + // "request": { + // "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "contactcenterinsights.projects.locations.conversations.list": type ProjectsLocationsConversationsListCall struct { diff --git a/container/v1/container-api.json b/container/v1/container-api.json index a88873efd92..50182a9df4f 100644 --- a/container/v1/container-api.json +++ b/container/v1/container-api.json @@ -2487,7 +2487,7 @@ } } }, - "revision": "20221017", + "revision": "20221024", "rootUrl": "https://container.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -4819,6 +4819,10 @@ "$ref": "NodeNetworkConfig", "description": "Networking configuration for this NodePool. If specified, it overrides the cluster-level defaults." }, + "placementPolicy": { + "$ref": "PlacementPolicy", + "description": "Specifies the node placement policy." + }, "podIpv4CidrSize": { "description": "[Output only] The pod CIDR block size per node in this node pool.", "format": "int32", @@ -5178,6 +5182,25 @@ }, "type": "object" }, + "PlacementPolicy": { + "description": "PlacementPolicy defines the placement policy used by the node pool.", + "id": "PlacementPolicy", + "properties": { + "type": { + "description": "The type of placement.", + "enum": [ + "TYPE_UNSPECIFIED", + "COMPACT" + ], + "enumDescriptions": [ + "TYPE_UNSPECIFIED specifies no requirements on nodes placement.", + "COMPACT specifies node placement in the same availability domain to ensure low communication latency." + ], + "type": "string" + } + }, + "type": "object" + }, "PrivateClusterConfig": { "description": "Configuration options for private clusters.", "id": "PrivateClusterConfig", diff --git a/container/v1/container-gen.go b/container/v1/container-gen.go index 93683cbd3a0..3a0127d7e0a 100644 --- a/container/v1/container-gen.go +++ b/container/v1/container-gen.go @@ -4228,6 +4228,9 @@ type NodePool struct { // specified, it overrides the cluster-level defaults. NetworkConfig *NodeNetworkConfig `json:"networkConfig,omitempty"` + // PlacementPolicy: Specifies the node placement policy. + PlacementPolicy *PlacementPolicy `json:"placementPolicy,omitempty"` + // PodIpv4CidrSize: [Output only] The pod CIDR block size per node in // this node pool. PodIpv4CidrSize int64 `json:"podIpv4CidrSize,omitempty"` @@ -4722,6 +4725,41 @@ func (s *OperationProgress) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// PlacementPolicy: PlacementPolicy defines the placement policy used by +// the node pool. +type PlacementPolicy struct { + // Type: The type of placement. + // + // Possible values: + // "TYPE_UNSPECIFIED" - TYPE_UNSPECIFIED specifies no requirements on + // nodes placement. + // "COMPACT" - COMPACT specifies node placement in the same + // availability domain to ensure low communication latency. + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Type") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Type") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PlacementPolicy) MarshalJSON() ([]byte, error) { + type NoMethod PlacementPolicy + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // PrivateClusterConfig: Configuration options for private clusters. type PrivateClusterConfig struct { // EnablePrivateEndpoint: Whether the master's internal IP address is diff --git a/containeranalysis/v1/containeranalysis-api.json b/containeranalysis/v1/containeranalysis-api.json index 3a370638583..0d4e5cf9cda 100644 --- a/containeranalysis/v1/containeranalysis-api.json +++ b/containeranalysis/v1/containeranalysis-api.json @@ -755,7 +755,7 @@ } } }, - "revision": "20221015", + "revision": "20221107", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { "AliasContext": { @@ -2069,7 +2069,7 @@ "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptions", "properties": { "diskSizeGb": { - "description": "Requested disk size for the VM that runs the build. Note that this is *NOT* \"disk free\"; some of the space will be used by the operating system and build utilities. Also note that this is the minimum disk size that will be allocated for the build -- the build may run with a larger disk than requested. At present, the maximum disk size is 1000GB; builds that request more than the maximum are rejected with an error.", + "description": "Requested disk size for the VM that runs the build. Note that this is *NOT* \"disk free\"; some of the space will be used by the operating system and build utilities. Also note that this is the minimum disk size that will be allocated for the build -- the build may run with a larger disk than requested. At present, the maximum disk size is 2000GB; builds that request more than the maximum are rejected with an error.", "format": "int64", "type": "string" }, diff --git a/containeranalysis/v1/containeranalysis-gen.go b/containeranalysis/v1/containeranalysis-gen.go index 62b4af3bcdc..43bd835c736 100644 --- a/containeranalysis/v1/containeranalysis-gen.go +++ b/containeranalysis/v1/containeranalysis-gen.go @@ -1987,7 +1987,7 @@ type ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptions struct { // operating system and build utilities. Also note that this is the // minimum disk size that will be allocated for the build -- the build // may run with a larger disk than requested. At present, the maximum - // disk size is 1000GB; builds that request more than the maximum are + // disk size is 2000GB; builds that request more than the maximum are // rejected with an error. DiskSizeGb int64 `json:"diskSizeGb,omitempty,string"` diff --git a/containeranalysis/v1alpha1/containeranalysis-api.json b/containeranalysis/v1alpha1/containeranalysis-api.json index 7351435e742..8eb89b7078e 100644 --- a/containeranalysis/v1alpha1/containeranalysis-api.json +++ b/containeranalysis/v1alpha1/containeranalysis-api.json @@ -1229,7 +1229,7 @@ } } }, - "revision": "20221015", + "revision": "20221107", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { "AnalysisCompleted": { @@ -2368,7 +2368,7 @@ "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptions", "properties": { "diskSizeGb": { - "description": "Requested disk size for the VM that runs the build. Note that this is *NOT* \"disk free\"; some of the space will be used by the operating system and build utilities. Also note that this is the minimum disk size that will be allocated for the build -- the build may run with a larger disk than requested. At present, the maximum disk size is 1000GB; builds that request more than the maximum are rejected with an error.", + "description": "Requested disk size for the VM that runs the build. Note that this is *NOT* \"disk free\"; some of the space will be used by the operating system and build utilities. Also note that this is the minimum disk size that will be allocated for the build -- the build may run with a larger disk than requested. At present, the maximum disk size is 2000GB; builds that request more than the maximum are rejected with an error.", "format": "int64", "type": "string" }, diff --git a/containeranalysis/v1alpha1/containeranalysis-gen.go b/containeranalysis/v1alpha1/containeranalysis-gen.go index 148d06f7b17..82ca96f10f7 100644 --- a/containeranalysis/v1alpha1/containeranalysis-gen.go +++ b/containeranalysis/v1alpha1/containeranalysis-gen.go @@ -1870,7 +1870,7 @@ type ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptions struct { // operating system and build utilities. Also note that this is the // minimum disk size that will be allocated for the build -- the build // may run with a larger disk than requested. At present, the maximum - // disk size is 1000GB; builds that request more than the maximum are + // disk size is 2000GB; builds that request more than the maximum are // rejected with an error. DiskSizeGb int64 `json:"diskSizeGb,omitempty,string"` diff --git a/containeranalysis/v1beta1/containeranalysis-api.json b/containeranalysis/v1beta1/containeranalysis-api.json index 4706915223c..908f62fd585 100644 --- a/containeranalysis/v1beta1/containeranalysis-api.json +++ b/containeranalysis/v1beta1/containeranalysis-api.json @@ -755,7 +755,7 @@ } } }, - "revision": "20221104", + "revision": "20221107", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { "AliasContext": { @@ -2000,7 +2000,7 @@ "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptions", "properties": { "diskSizeGb": { - "description": "Requested disk size for the VM that runs the build. Note that this is *NOT* \"disk free\"; some of the space will be used by the operating system and build utilities. Also note that this is the minimum disk size that will be allocated for the build -- the build may run with a larger disk than requested. At present, the maximum disk size is 1000GB; builds that request more than the maximum are rejected with an error.", + "description": "Requested disk size for the VM that runs the build. Note that this is *NOT* \"disk free\"; some of the space will be used by the operating system and build utilities. Also note that this is the minimum disk size that will be allocated for the build -- the build may run with a larger disk than requested. At present, the maximum disk size is 2000GB; builds that request more than the maximum are rejected with an error.", "format": "int64", "type": "string" }, diff --git a/containeranalysis/v1beta1/containeranalysis-gen.go b/containeranalysis/v1beta1/containeranalysis-gen.go index c7f41859f62..2b4d1835ebb 100644 --- a/containeranalysis/v1beta1/containeranalysis-gen.go +++ b/containeranalysis/v1beta1/containeranalysis-gen.go @@ -1878,7 +1878,7 @@ type ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptions struct { // operating system and build utilities. Also note that this is the // minimum disk size that will be allocated for the build -- the build // may run with a larger disk than requested. At present, the maximum - // disk size is 1000GB; builds that request more than the maximum are + // disk size is 2000GB; builds that request more than the maximum are // rejected with an error. DiskSizeGb int64 `json:"diskSizeGb,omitempty,string"` diff --git a/content/v2.1/content-api.json b/content/v2.1/content-api.json index 95230445ef0..6478b4cdf5c 100644 --- a/content/v2.1/content-api.json +++ b/content/v2.1/content-api.json @@ -1942,7 +1942,7 @@ "freelistingsprogram": { "methods": { "get": { - "description": "Retrieves the status and review eligibility for the free listing program.", + "description": "Retrieves the status and review eligibility for the free listing program. Returns errors and warnings if they require action to resolve, will become disapprovals, or impact impressions. Use `accountstatuses` to view all issues for an account.", "flatPath": "{merchantId}/freelistingsprogram", "httpMethod": "GET", "id": "content.freelistingsprogram.get", @@ -5901,7 +5901,7 @@ "shoppingadsprogram": { "methods": { "get": { - "description": "Retrieves the status and review eligibility for the Shopping Ads program.", + "description": "Retrieves the status and review eligibility for the Shopping Ads program. Returns errors and warnings if they require action to resolve, will become disapprovals, or impact impressions. Use `accountstatuses` to view all issues for an account.", "flatPath": "{merchantId}/shoppingadsprogram", "httpMethod": "GET", "id": "content.shoppingadsprogram.get", @@ -5953,7 +5953,7 @@ } } }, - "revision": "20221107", + "revision": "20221110", "rootUrl": "https://shoppingcontent.googleapis.com/", "schemas": { "Account": { @@ -7164,6 +7164,117 @@ }, "type": "object" }, + "BestSellers": { + "description": "Fields related to the [Best Sellers reports](https://support.google.com/merchants/answer/9488679).", + "id": "BestSellers", + "properties": { + "categoryId": { + "description": "Google product category ID to calculate the ranking for, represented in [Google's product taxonomy](https://support.google.com/merchants/answer/6324436).", + "format": "int64", + "type": "string" + }, + "countryCode": { + "description": "Country where the ranking is calculated.", + "type": "string" + }, + "previousRank": { + "description": "Popularity rank in the previous week or month.", + "format": "int64", + "type": "string" + }, + "previousRelativeDemand": { + "description": "Estimated demand in relation to the item with the highest popularity rank in the same category and country in the previous week or month.", + "enum": [ + "RELATIVE_DEMAND_UNSPECIFIED", + "VERY_LOW", + "LOW", + "MEDIUM", + "HIGH", + "VERY_HIGH" + ], + "enumDescriptions": [ + "Relative demand is unknown.", + "Demand is 0-5% of the demand of the highest ranked product clusters or brands.", + "Demand is 6-10% of the demand of the highest ranked product clusters or brands.", + "Demand is 11-20% of the demand of the highest ranked product clusters or brands.", + "Demand is 21-50% of the demand of the highest ranked product clusters or brands.", + "Demand is 51-100% of the demand of the highest ranked product clusters or brands." + ], + "type": "string" + }, + "rank": { + "description": "Popularity on Shopping ads and free listings, in the selected category and country, based on the estimated number of units sold.", + "format": "int64", + "type": "string" + }, + "relativeDemand": { + "description": "Estimated demand in relation to the item with the highest popularity rank in the same category and country.", + "enum": [ + "RELATIVE_DEMAND_UNSPECIFIED", + "VERY_LOW", + "LOW", + "MEDIUM", + "HIGH", + "VERY_HIGH" + ], + "enumDescriptions": [ + "Relative demand is unknown.", + "Demand is 0-5% of the demand of the highest ranked product clusters or brands.", + "Demand is 6-10% of the demand of the highest ranked product clusters or brands.", + "Demand is 11-20% of the demand of the highest ranked product clusters or brands.", + "Demand is 21-50% of the demand of the highest ranked product clusters or brands.", + "Demand is 51-100% of the demand of the highest ranked product clusters or brands." + ], + "type": "string" + }, + "relativeDemandChange": { + "description": "Change in the estimated demand. Whether it rose, sank or remained flat.", + "enum": [ + "RELATIVE_DEMAND_CHANGE_TYPE_UNSPECIFIED", + "SINKER", + "FLAT", + "RISER" + ], + "enumDescriptions": [ + "Relative demand change is unknown.", + "Relative demand is lower than previous time period.", + "Relative demand is equal to previous time period.", + "Relative demand is higher than the previous time period." + ], + "type": "string" + }, + "reportDate": { + "$ref": "Date", + "description": "Report date. The value of this field can only be one of the following: * The first day of the week (Monday) for weekly reports. * The first day of the month for monthly reports." + }, + "reportGranularity": { + "description": "Granularity of the report. The ranking can be done over a week or a month timeframe.", + "enum": [ + "REPORT_GRANULARITY_UNSPECIFIED", + "WEEKLY", + "MONTHLY" + ], + "enumDescriptions": [ + "Report granularity is unknown.", + "Ranking is done over a week timeframe.", + "Ranking is done over a month timeframe." + ], + "type": "string" + } + }, + "type": "object" + }, + "Brand": { + "description": "Brand fields. Values are only set for fields requested explicitly in the request's search query.", + "id": "Brand", + "properties": { + "name": { + "description": "Name of the brand.", + "type": "string" + } + }, + "type": "object" + }, "BusinessDayConfig": { "id": "BusinessDayConfig", "properties": { @@ -12561,6 +12672,71 @@ }, "type": "object" }, + "PriceCompetitiveness": { + "description": "Price Competitiveness fields requested by the merchant in the query. Field values are only set if the merchant queries `PriceCompetitivenessProductView`. https://support.google.com/merchants/answer/9626903", + "id": "PriceCompetitiveness", + "properties": { + "benchmarkPriceCurrencyCode": { + "description": "The price benchmark currency (ISO 4217 code).", + "type": "string" + }, + "benchmarkPriceMicros": { + "description": "The latest available price benchmark in micros for the product's catalog in the benchmark country.", + "format": "int64", + "type": "string" + }, + "countryCode": { + "description": "The country of the price benchmark (ISO 3166 code).", + "type": "string" + } + }, + "type": "object" + }, + "PriceInsights": { + "description": "Price Insights fields requested by the merchant in the query. Field values are only set if the merchant queries `PriceInsightsProductView`. https://support.google.com/merchants/answer/11916926", + "id": "PriceInsights", + "properties": { + "predictedClicksChangeFraction": { + "description": "The predicted change in clicks as a fraction after introducing the suggested price compared to current active price. For example, 0.05 is a 5% predicted increase in clicks.", + "format": "double", + "type": "number" + }, + "predictedConversionsChangeFraction": { + "description": "The predicted change in conversions as a fraction after introducing the suggested price compared to current active price. For example, 0.05 is a 5% predicted increase in conversions).", + "format": "double", + "type": "number" + }, + "predictedGrossProfitChangeFraction": { + "description": "The predicted change in gross profit as a fraction after introducing the suggested price compared to current active price. For example, 0.05 is a 5% predicted increase in gross profit.", + "format": "double", + "type": "number" + }, + "predictedImpressionsChangeFraction": { + "description": "The predicted change in impressions as a fraction after introducing the suggested price compared to current active price. For example, 0.05 is a 5% predicted increase in impressions.", + "format": "double", + "type": "number" + }, + "predictedMonthlyGrossProfitChangeCurrencyCode": { + "description": "The predicted monthly gross profit change currency (ISO 4217 code).", + "type": "string" + }, + "predictedMonthlyGrossProfitChangeMicros": { + "description": "The predicted change in gross profit in micros after introducing the suggested price for a month compared to current active price.", + "format": "int64", + "type": "string" + }, + "suggestedPriceCurrencyCode": { + "description": "The suggested price currency (ISO 4217 code).", + "type": "string" + }, + "suggestedPriceMicros": { + "description": "The latest suggested price in micros for the product.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "Product": { "description": " Required product attributes are primarily defined by the products data specification. See the Products Data Specification Help Center article for information. Product data. After inserting, updating, or deleting a product, it may take several minutes before changes take effect.", "id": "Product", @@ -13001,6 +13177,80 @@ }, "type": "object" }, + "ProductCluster": { + "description": "Product cluster fields. A product cluster is a grouping for different offers that represent the same product. Values are only set for fields requested explicitly in the request's search query.", + "id": "ProductCluster", + "properties": { + "brand": { + "description": "Brand of the product cluster.", + "type": "string" + }, + "brandInventoryStatus": { + "description": "Tells if there is at least one product of the brand currently `IN_STOCK` in your product feed across multiple countries, all products are `OUT_OF_STOCK` in your product feed, or `NOT_IN_INVENTORY`. The field doesn't take the Best Sellers report country filter into account.", + "enum": [ + "INVENTORY_STATUS_UNSPECIFIED", + "IN_STOCK", + "OUT_OF_STOCK", + "NOT_IN_INVENTORY" + ], + "enumDescriptions": [ + "Inventory status is unknown.", + "Merchant has a product for this product cluster or brand in stock.", + "Merchant has a product for this product cluster or brand in inventory but it is currently out of stock.", + "Merchant does not have a product for this product cluster or brand in inventory." + ], + "type": "string" + }, + "categoryL1": { + "description": "Product category (1st level) of the product cluster, represented in Google's product taxonomy.", + "type": "string" + }, + "categoryL2": { + "description": "Product category (2nd level) of the product cluster, represented in Google's product taxonomy.", + "type": "string" + }, + "categoryL3": { + "description": "Product category (3rd level) of the product cluster, represented in Google's product taxonomy.", + "type": "string" + }, + "categoryL4": { + "description": "Product category (4th level) of the product cluster, represented in Google's product taxonomy.", + "type": "string" + }, + "categoryL5": { + "description": "Product category (5th level) of the product cluster, represented in Google's product taxonomy.", + "type": "string" + }, + "inventoryStatus": { + "description": "Tells whether the product cluster is `IN_STOCK` in your product feed across multiple countries, `OUT_OF_STOCK` in your product feed, or `NOT_IN_INVENTORY` at all. The field doesn't take the Best Sellers report country filter into account.", + "enum": [ + "INVENTORY_STATUS_UNSPECIFIED", + "IN_STOCK", + "OUT_OF_STOCK", + "NOT_IN_INVENTORY" + ], + "enumDescriptions": [ + "Inventory status is unknown.", + "Merchant has a product for this product cluster or brand in stock.", + "Merchant has a product for this product cluster or brand in inventory but it is currently out of stock.", + "Merchant does not have a product for this product cluster or brand in inventory." + ], + "type": "string" + }, + "title": { + "description": "Title of the product cluster.", + "type": "string" + }, + "variantGtins": { + "description": "GTINs of example variants of the product cluster.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ProductDeliveryTime": { "description": "The estimated days to deliver a product after an order is placed. Only authorized shipping signals partners working with a merchant can use this resource. Merchants should use the [`products`](https://developers.google.com/shopping-content/reference/rest/v2.1/products#productshipping) resource instead.", "id": "ProductDeliveryTime", @@ -14410,10 +14660,30 @@ "description": "Result row returned from the search query.", "id": "ReportRow", "properties": { + "bestSellers": { + "$ref": "BestSellers", + "description": "Best Sellers fields requested by the merchant in the query. Field values are only set if the merchant queries `BestSellersProductClusterView` or `BestSellersBrandView`." + }, + "brand": { + "$ref": "Brand", + "description": "Brand fields requested by the merchant in the query. Field values are only set if the merchant queries `BestSellersBrandView`." + }, "metrics": { "$ref": "Metrics", "description": "Metrics requested by the merchant in the query. Metric values are only set for metrics requested explicitly in the query." }, + "priceCompetitiveness": { + "$ref": "PriceCompetitiveness", + "description": "Price Competitiveness fields requested by the merchant in the query. Field values are only set if the merchant queries `PriceCompetitivenessProductView`." + }, + "priceInsights": { + "$ref": "PriceInsights", + "description": "Price Insights fields requested by the merchant in the query. Field values are only set if the merchant queries `PriceInsightsProductView`." + }, + "productCluster": { + "$ref": "ProductCluster", + "description": "Product cluster fields requested by the merchant in the query. Field values are only set if the merchant queries `BestSellersProductClusterView`." + }, "productView": { "$ref": "ProductView", "description": "Product fields requested by the merchant in the query. Field values are only set if the merchant queries `ProductView`. Available only to selected merchants. Submit the [interest form](https://forms.gle/7Uy8htzAN8oNokz9A) to request access." diff --git a/content/v2.1/content-gen.go b/content/v2.1/content-gen.go index 8c86c60b2eb..a70edea4970 100644 --- a/content/v2.1/content-gen.go +++ b/content/v2.1/content-gen.go @@ -2745,6 +2745,136 @@ func (s *Amount) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// BestSellers: Fields related to the Best Sellers reports +// (https://support.google.com/merchants/answer/9488679). +type BestSellers struct { + // CategoryId: Google product category ID to calculate the ranking for, + // represented in Google's product taxonomy + // (https://support.google.com/merchants/answer/6324436). + CategoryId int64 `json:"categoryId,omitempty,string"` + + // CountryCode: Country where the ranking is calculated. + CountryCode string `json:"countryCode,omitempty"` + + // PreviousRank: Popularity rank in the previous week or month. + PreviousRank int64 `json:"previousRank,omitempty,string"` + + // PreviousRelativeDemand: Estimated demand in relation to the item with + // the highest popularity rank in the same category and country in the + // previous week or month. + // + // Possible values: + // "RELATIVE_DEMAND_UNSPECIFIED" - Relative demand is unknown. + // "VERY_LOW" - Demand is 0-5% of the demand of the highest ranked + // product clusters or brands. + // "LOW" - Demand is 6-10% of the demand of the highest ranked product + // clusters or brands. + // "MEDIUM" - Demand is 11-20% of the demand of the highest ranked + // product clusters or brands. + // "HIGH" - Demand is 21-50% of the demand of the highest ranked + // product clusters or brands. + // "VERY_HIGH" - Demand is 51-100% of the demand of the highest ranked + // product clusters or brands. + PreviousRelativeDemand string `json:"previousRelativeDemand,omitempty"` + + // Rank: Popularity on Shopping ads and free listings, in the selected + // category and country, based on the estimated number of units sold. + Rank int64 `json:"rank,omitempty,string"` + + // RelativeDemand: Estimated demand in relation to the item with the + // highest popularity rank in the same category and country. + // + // Possible values: + // "RELATIVE_DEMAND_UNSPECIFIED" - Relative demand is unknown. + // "VERY_LOW" - Demand is 0-5% of the demand of the highest ranked + // product clusters or brands. + // "LOW" - Demand is 6-10% of the demand of the highest ranked product + // clusters or brands. + // "MEDIUM" - Demand is 11-20% of the demand of the highest ranked + // product clusters or brands. + // "HIGH" - Demand is 21-50% of the demand of the highest ranked + // product clusters or brands. + // "VERY_HIGH" - Demand is 51-100% of the demand of the highest ranked + // product clusters or brands. + RelativeDemand string `json:"relativeDemand,omitempty"` + + // RelativeDemandChange: Change in the estimated demand. Whether it + // rose, sank or remained flat. + // + // Possible values: + // "RELATIVE_DEMAND_CHANGE_TYPE_UNSPECIFIED" - Relative demand change + // is unknown. + // "SINKER" - Relative demand is lower than previous time period. + // "FLAT" - Relative demand is equal to previous time period. + // "RISER" - Relative demand is higher than the previous time period. + RelativeDemandChange string `json:"relativeDemandChange,omitempty"` + + // ReportDate: Report date. The value of this field can only be one of + // the following: * The first day of the week (Monday) for weekly + // reports. * The first day of the month for monthly reports. + ReportDate *Date `json:"reportDate,omitempty"` + + // ReportGranularity: Granularity of the report. The ranking can be done + // over a week or a month timeframe. + // + // Possible values: + // "REPORT_GRANULARITY_UNSPECIFIED" - Report granularity is unknown. + // "WEEKLY" - Ranking is done over a week timeframe. + // "MONTHLY" - Ranking is done over a month timeframe. + ReportGranularity string `json:"reportGranularity,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CategoryId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CategoryId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *BestSellers) MarshalJSON() ([]byte, error) { + type NoMethod BestSellers + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Brand: Brand fields. Values are only set for fields requested +// explicitly in the request's search query. +type Brand struct { + // Name: Name of the brand. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Brand) MarshalJSON() ([]byte, error) { + type NoMethod Brand + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type BusinessDayConfig struct { // BusinessDays: Regular business days, such as '"monday"'. May not be // empty. @@ -12072,6 +12202,137 @@ func (s *PriceAmount) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// PriceCompetitiveness: Price Competitiveness fields requested by the +// merchant in the query. Field values are only set if the merchant +// queries `PriceCompetitivenessProductView`. +// https://support.google.com/merchants/answer/9626903 +type PriceCompetitiveness struct { + // BenchmarkPriceCurrencyCode: The price benchmark currency (ISO 4217 + // code). + BenchmarkPriceCurrencyCode string `json:"benchmarkPriceCurrencyCode,omitempty"` + + // BenchmarkPriceMicros: The latest available price benchmark in micros + // for the product's catalog in the benchmark country. + BenchmarkPriceMicros int64 `json:"benchmarkPriceMicros,omitempty,string"` + + // CountryCode: The country of the price benchmark (ISO 3166 code). + CountryCode string `json:"countryCode,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "BenchmarkPriceCurrencyCode") to unconditionally include in API + // requests. By default, fields with empty or default values are omitted + // from API requests. However, any non-pointer, non-interface field + // appearing in ForceSendFields will be sent to the server regardless of + // whether the field is empty or not. This may be used to include empty + // fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "BenchmarkPriceCurrencyCode") to include in API requests with the + // JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PriceCompetitiveness) MarshalJSON() ([]byte, error) { + type NoMethod PriceCompetitiveness + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PriceInsights: Price Insights fields requested by the merchant in the +// query. Field values are only set if the merchant queries +// `PriceInsightsProductView`. +// https://support.google.com/merchants/answer/11916926 +type PriceInsights struct { + // PredictedClicksChangeFraction: The predicted change in clicks as a + // fraction after introducing the suggested price compared to current + // active price. For example, 0.05 is a 5% predicted increase in clicks. + PredictedClicksChangeFraction float64 `json:"predictedClicksChangeFraction,omitempty"` + + // PredictedConversionsChangeFraction: The predicted change in + // conversions as a fraction after introducing the suggested price + // compared to current active price. For example, 0.05 is a 5% predicted + // increase in conversions). + PredictedConversionsChangeFraction float64 `json:"predictedConversionsChangeFraction,omitempty"` + + // PredictedGrossProfitChangeFraction: The predicted change in gross + // profit as a fraction after introducing the suggested price compared + // to current active price. For example, 0.05 is a 5% predicted increase + // in gross profit. + PredictedGrossProfitChangeFraction float64 `json:"predictedGrossProfitChangeFraction,omitempty"` + + // PredictedImpressionsChangeFraction: The predicted change in + // impressions as a fraction after introducing the suggested price + // compared to current active price. For example, 0.05 is a 5% predicted + // increase in impressions. + PredictedImpressionsChangeFraction float64 `json:"predictedImpressionsChangeFraction,omitempty"` + + // PredictedMonthlyGrossProfitChangeCurrencyCode: The predicted monthly + // gross profit change currency (ISO 4217 code). + PredictedMonthlyGrossProfitChangeCurrencyCode string `json:"predictedMonthlyGrossProfitChangeCurrencyCode,omitempty"` + + // PredictedMonthlyGrossProfitChangeMicros: The predicted change in + // gross profit in micros after introducing the suggested price for a + // month compared to current active price. + PredictedMonthlyGrossProfitChangeMicros int64 `json:"predictedMonthlyGrossProfitChangeMicros,omitempty,string"` + + // SuggestedPriceCurrencyCode: The suggested price currency (ISO 4217 + // code). + SuggestedPriceCurrencyCode string `json:"suggestedPriceCurrencyCode,omitempty"` + + // SuggestedPriceMicros: The latest suggested price in micros for the + // product. + SuggestedPriceMicros int64 `json:"suggestedPriceMicros,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. + // "PredictedClicksChangeFraction") to unconditionally include in API + // requests. By default, fields with empty or default values are omitted + // from API requests. However, any non-pointer, non-interface field + // appearing in ForceSendFields will be sent to the server regardless of + // whether the field is empty or not. This may be used to include empty + // fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "PredictedClicksChangeFraction") to include in API requests with the + // JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PriceInsights) MarshalJSON() ([]byte, error) { + type NoMethod PriceInsights + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *PriceInsights) UnmarshalJSON(data []byte) error { + type NoMethod PriceInsights + var s1 struct { + PredictedClicksChangeFraction gensupport.JSONFloat64 `json:"predictedClicksChangeFraction"` + PredictedConversionsChangeFraction gensupport.JSONFloat64 `json:"predictedConversionsChangeFraction"` + PredictedGrossProfitChangeFraction gensupport.JSONFloat64 `json:"predictedGrossProfitChangeFraction"` + PredictedImpressionsChangeFraction gensupport.JSONFloat64 `json:"predictedImpressionsChangeFraction"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.PredictedClicksChangeFraction = float64(s1.PredictedClicksChangeFraction) + s.PredictedConversionsChangeFraction = float64(s1.PredictedConversionsChangeFraction) + s.PredictedGrossProfitChangeFraction = float64(s1.PredictedGrossProfitChangeFraction) + s.PredictedImpressionsChangeFraction = float64(s1.PredictedImpressionsChangeFraction) + return nil +} + // Product: Required product attributes are primarily defined by the // products data specification. See the Products Data Specification Help // Center article for information. Product data. After inserting, @@ -12514,6 +12775,94 @@ func (s *ProductAmount) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ProductCluster: Product cluster fields. A product cluster is a +// grouping for different offers that represent the same product. Values +// are only set for fields requested explicitly in the request's search +// query. +type ProductCluster struct { + // Brand: Brand of the product cluster. + Brand string `json:"brand,omitempty"` + + // BrandInventoryStatus: Tells if there is at least one product of the + // brand currently `IN_STOCK` in your product feed across multiple + // countries, all products are `OUT_OF_STOCK` in your product feed, or + // `NOT_IN_INVENTORY`. The field doesn't take the Best Sellers report + // country filter into account. + // + // Possible values: + // "INVENTORY_STATUS_UNSPECIFIED" - Inventory status is unknown. + // "IN_STOCK" - Merchant has a product for this product cluster or + // brand in stock. + // "OUT_OF_STOCK" - Merchant has a product for this product cluster or + // brand in inventory but it is currently out of stock. + // "NOT_IN_INVENTORY" - Merchant does not have a product for this + // product cluster or brand in inventory. + BrandInventoryStatus string `json:"brandInventoryStatus,omitempty"` + + // CategoryL1: Product category (1st level) of the product cluster, + // represented in Google's product taxonomy. + CategoryL1 string `json:"categoryL1,omitempty"` + + // CategoryL2: Product category (2nd level) of the product cluster, + // represented in Google's product taxonomy. + CategoryL2 string `json:"categoryL2,omitempty"` + + // CategoryL3: Product category (3rd level) of the product cluster, + // represented in Google's product taxonomy. + CategoryL3 string `json:"categoryL3,omitempty"` + + // CategoryL4: Product category (4th level) of the product cluster, + // represented in Google's product taxonomy. + CategoryL4 string `json:"categoryL4,omitempty"` + + // CategoryL5: Product category (5th level) of the product cluster, + // represented in Google's product taxonomy. + CategoryL5 string `json:"categoryL5,omitempty"` + + // InventoryStatus: Tells whether the product cluster is `IN_STOCK` in + // your product feed across multiple countries, `OUT_OF_STOCK` in your + // product feed, or `NOT_IN_INVENTORY` at all. The field doesn't take + // the Best Sellers report country filter into account. + // + // Possible values: + // "INVENTORY_STATUS_UNSPECIFIED" - Inventory status is unknown. + // "IN_STOCK" - Merchant has a product for this product cluster or + // brand in stock. + // "OUT_OF_STOCK" - Merchant has a product for this product cluster or + // brand in inventory but it is currently out of stock. + // "NOT_IN_INVENTORY" - Merchant does not have a product for this + // product cluster or brand in inventory. + InventoryStatus string `json:"inventoryStatus,omitempty"` + + // Title: Title of the product cluster. + Title string `json:"title,omitempty"` + + // VariantGtins: GTINs of example variants of the product cluster. + VariantGtins []string `json:"variantGtins,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Brand") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Brand") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ProductCluster) MarshalJSON() ([]byte, error) { + type NoMethod ProductCluster + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ProductDeliveryTime: The estimated days to deliver a product after an // order is placed. Only authorized shipping signals partners working // with a merchant can use this resource. Merchants should use the @@ -14689,10 +15038,34 @@ func (s *RegionalinventoryCustomBatchResponseEntry) MarshalJSON() ([]byte, error // ReportRow: Result row returned from the search query. type ReportRow struct { + // BestSellers: Best Sellers fields requested by the merchant in the + // query. Field values are only set if the merchant queries + // `BestSellersProductClusterView` or `BestSellersBrandView`. + BestSellers *BestSellers `json:"bestSellers,omitempty"` + + // Brand: Brand fields requested by the merchant in the query. Field + // values are only set if the merchant queries `BestSellersBrandView`. + Brand *Brand `json:"brand,omitempty"` + // Metrics: Metrics requested by the merchant in the query. Metric // values are only set for metrics requested explicitly in the query. Metrics *Metrics `json:"metrics,omitempty"` + // PriceCompetitiveness: Price Competitiveness fields requested by the + // merchant in the query. Field values are only set if the merchant + // queries `PriceCompetitivenessProductView`. + PriceCompetitiveness *PriceCompetitiveness `json:"priceCompetitiveness,omitempty"` + + // PriceInsights: Price Insights fields requested by the merchant in the + // query. Field values are only set if the merchant queries + // `PriceInsightsProductView`. + PriceInsights *PriceInsights `json:"priceInsights,omitempty"` + + // ProductCluster: Product cluster fields requested by the merchant in + // the query. Field values are only set if the merchant queries + // `BestSellersProductClusterView`. + ProductCluster *ProductCluster `json:"productCluster,omitempty"` + // ProductView: Product fields requested by the merchant in the query. // Field values are only set if the merchant queries `ProductView`. // Available only to selected merchants. Submit the interest form @@ -14704,7 +15077,7 @@ type ReportRow struct { // explicitly in the query. Segments *Segments `json:"segments,omitempty"` - // ForceSendFields is a list of field names (e.g. "Metrics") to + // ForceSendFields is a list of field names (e.g. "BestSellers") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -14712,10 +15085,10 @@ type ReportRow struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Metrics") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "BestSellers") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -27340,7 +27713,9 @@ type FreelistingsprogramGetCall struct { } // Get: Retrieves the status and review eligibility for the free listing -// program. +// program. Returns errors and warnings if they require action to +// resolve, will become disapprovals, or impact impressions. Use +// `accountstatuses` to view all issues for an account. // // - merchantId: The ID of the account. func (r *FreelistingsprogramService) Get(merchantId int64) *FreelistingsprogramGetCall { @@ -27448,7 +27823,7 @@ func (c *FreelistingsprogramGetCall) Do(opts ...googleapi.CallOption) (*FreeList } return ret, nil // { - // "description": "Retrieves the status and review eligibility for the free listing program.", + // "description": "Retrieves the status and review eligibility for the free listing program. Returns errors and warnings if they require action to resolve, will become disapprovals, or impact impressions. Use `accountstatuses` to view all issues for an account.", // "flatPath": "{merchantId}/freelistingsprogram", // "httpMethod": "GET", // "id": "content.freelistingsprogram.get", @@ -45312,7 +45687,9 @@ type ShoppingadsprogramGetCall struct { } // Get: Retrieves the status and review eligibility for the Shopping Ads -// program. +// program. Returns errors and warnings if they require action to +// resolve, will become disapprovals, or impact impressions. Use +// `accountstatuses` to view all issues for an account. // // - merchantId: The ID of the account. func (r *ShoppingadsprogramService) Get(merchantId int64) *ShoppingadsprogramGetCall { @@ -45420,7 +45797,7 @@ func (c *ShoppingadsprogramGetCall) Do(opts ...googleapi.CallOption) (*ShoppingA } return ret, nil // { - // "description": "Retrieves the status and review eligibility for the Shopping Ads program.", + // "description": "Retrieves the status and review eligibility for the Shopping Ads program. Returns errors and warnings if they require action to resolve, will become disapprovals, or impact impressions. Use `accountstatuses` to view all issues for an account.", // "flatPath": "{merchantId}/shoppingadsprogram", // "httpMethod": "GET", // "id": "content.shoppingadsprogram.get", diff --git a/contentwarehouse/v1/contentwarehouse-api.json b/contentwarehouse/v1/contentwarehouse-api.json index 49a5d715adf..747ff7c0b32 100644 --- a/contentwarehouse/v1/contentwarehouse-api.json +++ b/contentwarehouse/v1/contentwarehouse-api.json @@ -1046,7 +1046,7 @@ } } }, - "revision": "20221104", + "revision": "20221110", "rootUrl": "https://contentwarehouse.googleapis.com/", "schemas": { "AbuseiamAbuseType": { @@ -3952,6 +3952,10 @@ "metadata": { "$ref": "AppsPeopleOzExternalMergedpeopleapiPersonFieldMetadata" }, + "prompt": { + "$ref": "SocialGraphApiProtoPrompt", + "description": "People Prompts settings for contact birthday data." + }, "value": { "description": "Actual value entered. Allows unstructured values.", "type": "string" @@ -4790,6 +4794,10 @@ "metadata": { "$ref": "AppsPeopleOzExternalMergedpeopleapiPersonFieldMetadata" }, + "prompt": { + "$ref": "SocialGraphApiProtoPrompt", + "description": "People Prompts settings for contact event data." + }, "timestampMillis": { "description": "Clients are recommended to read the calendar_day field instead of timestamp_millis. When writing events, new clients must set calendar_day instead of timestamp_millis. Events are currently represented as timestamp values, although the interpretation of these timestamp values is a calendar date. There are a few important details about how this value should be mapped to a calendar date that should be consistent among all clients. For detailed information, see Birthday.date_ms.", "format": "int64", @@ -9272,8 +9280,10 @@ "ADD_FINGERPRINT", "AIRPLANE_MODE", "ALARM_VOLUME", + "ALARM_SOUND", "AMBIENT_DISPLAY_ALWAYS_ON", "AMBIENT_DISPLAY_NEW_NOTIFICATION", + "ANDROID_AUTO", "ANDROID_VERSION", "APP_BATTERY_USAGE", "APP_DATA_USAGE", @@ -9286,14 +9296,19 @@ "ASSISTANT_VOICE_MATCH", "AUTO_ROTATE", "AUTO_ROTATE_FACE_DETECTION", + "BACKUP", "BATTERY_LEVEL", "BATTERY_LOW", "BATTERY_PERCENTAGE", "BATTERY_PRESENT", "BATTERY_SAVER", + "BATTERY_SHARE", "BATTERY_USAGE", "BIOMETRIC", "BLUETOOTH", + "BLUETOOTH_NAME", + "BLUETOOTH_ADDRESS", + "BLUETOOTH_SETTINGS", "BRIGHTNESS_LEVEL", "BUBBLES", "CALL_VOLUME", @@ -9302,16 +9317,28 @@ "COLOR_INVERSION", "CHARGING_SOUNDS_AND_VIBRATION", "CHARGING_STATE", + "CONNECTED_DEVICES", "CONTACTLESS_PAYMENTS", "DATA_ROAMING", "DATA_SAVER", "DATA_USAGE", + "DATA_LIMIT", + "DATA_LIMIT_LEVEL", + "DATA_WARNING", + "DATA_WARNING_LEVEL", "DEFAULT_APPS", "DEVELOPER_OPTIONS", + "DEVICE_NAME", "DISPLAY_OVER_OTHER_APPS", "DISPLAY_SIZE", "DO_NOT_DISTURB", + "DO_NOT_DISTURB_MESSAGES", + "DO_NOT_DISTURB_CALLS", + "DO_NOT_DISTURB_ALARMS", + "DO_NOT_DISTURB_SCHEDULES", "DOUBLE_TAP_CHECK_PHONE", + "DRIVING_MODE", + "EMERGENCY", "EMERGENCY_ALERTS", "EMERGENCY_INFORMATION", "ETHERNET_TETHERING", @@ -9323,9 +9350,11 @@ "GESTURES", "HAPTIC_FEEDBACK_VIBRATION", "HEADS_UP", + "HIGH_REFRESH_RATE", "HOT_SPOT", "HOTSPOT_TETHERING", "HOT_WORD", + "IP_ADDRESS", "IMPROVE_LOCATION_ACCURACY", "JUMP_TO_CAMERA", "KEYBOARD_SHORTCUTS", @@ -9336,6 +9365,7 @@ "LOCK_SCREEN", "LOCK_SCREEN_DEVICE_CONTROLS", "LOCK_SCREEN_WALLET", + "MAC_ADDRESS", "MAGNIFICATION", "MAGNIFY_BUTTON", "MAGNIFY_TRIPLE_TAP", @@ -9348,16 +9378,20 @@ "MUSIC", "MUTE_MODE", "NETWORK", + "NETWORK_RESET", "NFC", "NIGHT_LIGHT_INTENSITY", "NIGHT_LIGHT_SWITCH", "NIGHT_MODE", "NOTIFICATION_BADGE", + "NOTIFICATION_SOUND", "NOTIFICATION_ON_SCREEN", "NOTIFY_FOR_PUBLIC_NETWORKS", "ONEHANDED_MODE", "PASSWORD", + "PERMISSION_MANAGER", "PERSONALIZATION", + "PHONE_NUMBER", "PICTURE_IN_PICTURE", "POINTER_SPEED", "POWER_MENU", @@ -9365,6 +9399,8 @@ "REQUIRE_DEVICE_UNLOCK_FOR_NFC", "RINGTONE", "RING_VOLUME", + "NEARBY_DEVICES_SCANNING", + "NEARBY_SHARE", "SCREEN_LOCKING_SOUND", "SCREEN_MAGNIFICATION", "SCREEN_TIMEOUT", @@ -9380,6 +9416,9 @@ "SYSTEM_UPDATE", "TALKBACK_PASSWORDS", "TEXT_TO_SPEECH", + "TIME_ZONE", + "UNUSED_APPS", + "USB", "USB_TETHERING", "VERBOSE_TTS", "VIBRATE", @@ -9390,6 +9429,8 @@ "WALLPAPERS", "WEBVIEW", "WIFI", + "WIFI_ADD_NETWORK", + "WIFI_ADD_NETWORK_QR_CODE", "WIFI_CALLING", "WIFI_HOTSPOT", "ABOUT_PHONE", @@ -9437,7 +9478,10 @@ "WEARABLE_AMBIENT", "WEARABLE_NOISE_CANCELLATION", "WEARABLE_TOUCH_CONTROLS", - "RAISE_TO_TALK" + "RAISE_TO_TALK", + "BEDTIME_MODE", + "THEATER_MODE", + "TOUCH_LOCK" ], "enumDescriptions": [ "", @@ -9479,6 +9523,14 @@ "", "", "", + "Bluetooth on/off toggle", + "", + "", + "Bluetooth preferences page", + "", + "", + "", + "", "", "", "", @@ -9488,6 +9540,12 @@ "", "", "Cellular carrier (non-wifi) data usage statistics \u0026 settings for the device.", + "Toggle to enable data use limit", + "The mobile data use after which mobile data is automatically disabled.", + "Toggle to enable data use warning", + "The mobile data use after which a warning is shown to the user.", + "", + "", "", "", "", @@ -9497,6 +9555,8 @@ "", "", "", + "Special mode for using device hands-free while driving.", + "Main emergency settings", "", "", "", @@ -9512,6 +9572,7 @@ "", "", "", + "Show my IP address", "", "", "", @@ -9522,6 +9583,11 @@ "", "", "", + "Show my MAC address", + "", + "", + "", + "", "", "", "", @@ -9530,6 +9596,15 @@ "", "", "", + "Restarts the device network stack, no settings are deleted.", + "", + "", + "", + "", + "", + "", + "", + "", "", "", "", @@ -9574,6 +9649,8 @@ "", "", "", + "", + "", "Begin of NGA proto consistence", "", "", @@ -9619,6 +9696,9 @@ "Wearable device settings", "", "", + "", + "", + "", "End of Wearable device settings" ], "type": "string" @@ -16617,7 +16697,7 @@ "type": "object" }, "AssistantGroundingRankerGroundingProviderFeatures": { - "description": "Next ID: 3", + "description": "Next ID: 4", "id": "AssistantGroundingRankerGroundingProviderFeatures", "properties": { "contactGroundingProviderFeatures": { @@ -16625,6 +16705,9 @@ }, "mediaGroundingProviderFeatures": { "$ref": "AssistantGroundingRankerMediaGroundingProviderFeatures" + }, + "providerGroundingProviderFeatures": { + "$ref": "AssistantGroundingRankerProviderGroundingProviderFeatures" } }, "type": "object" @@ -16641,6 +16724,18 @@ }, "type": "object" }, + "AssistantGroundingRankerProviderGroundingProviderFeatures": { + "description": "Features to be extracted from Provider GP for ranking in HGR. Next ID: 2", + "id": "AssistantGroundingRankerProviderGroundingProviderFeatures", + "properties": { + "pslScore": { + "description": "Provider quality score in the range [0,1] that can be used for ranking providers. Incorporates both policy rules and quality considerations.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, "AssistantLogsAllMediaStreamLog": { "id": "AssistantLogsAllMediaStreamLog", "properties": { @@ -18396,7 +18491,7 @@ "type": "object" }, "AssistantPrefulfillmentRankerPrefulfillmentSignals": { - "description": "Signals to be used by the Prefulfillment Ranker. Derived from the ParsingSignals and GroundingSignals carried by the FunctionCall. LINT.IfChange Next ID: 33", + "description": "Signals to be used by the Prefulfillment Ranker. Derived from the ParsingSignals and GroundingSignals carried by the FunctionCall. LINT.IfChange Next ID: 34", "id": "AssistantPrefulfillmentRankerPrefulfillmentSignals", "properties": { "bindingSetAuis": { @@ -18446,6 +18541,10 @@ "format": "double", "type": "number" }, + "isFeasible": { + "description": "Feasibility of fulfilling the binding set. Eg: For PlayMedia, this is equivalent to playability. More details: go/hgr-feasibility-feature.", + "type": "boolean" + }, "kscorerRank": { "description": "The rank order of the interpretation as determined by kscorer. The kscorer-determined dominant interpretation, if any, gets a rank of 0. The remaining N interpretations get a rank of 1 through N.", "format": "int32", @@ -21080,7 +21179,7 @@ "type": "number" }, "lowQuality": { - "description": "S2V low quality score: converted from quality_nsr.NsrData, applied in Qstar. See NsrUtil::ConvertNsrDataToLowQuality.", + "description": "S2V low quality score: converted from quality_nsr.NsrData, applied in Qstar. See quality_nsr::util::ConvertNsrDataToLowQuality.", "format": "uint32", "type": "integer" }, @@ -24053,6 +24152,7 @@ "CHAPTER_TITLE_MATCHING", "DBSCAN_FRAME_CHAPTER_SIMILARITY", "EYES_NOT_VISIBLY_CLOSED", + "ENGAGINESS", "MERGED" ], "enumDescriptions": [ @@ -24097,6 +24197,7 @@ "", "", "", + "", "The score merged from the above source types." ], "type": "string" @@ -27714,6 +27815,7 @@ "PROVIDER_GOOGLE_ATTRIBUTES_DISCOVERY", "PROVIDER_GOOGLE_GEO_LDE", "PROVIDER_GOOGLE_GEO_SIGNAL_TRACKING", + "PROVIDER_GOOGLE_UGC_AGGREGATION", "PROVIDER_GOOGLE_LOCALSEARCH", "PROVIDER_GOOGLE_TRANSIT", "PROVIDER_GOOGLE_GEOWIKI", @@ -28249,7 +28351,7 @@ "", "ABSTRACT", "", - "All new \"Google\" provider entries must be full ints. The next available ID is: 0x111730AD", + "All new \"Google\" provider entries must be full ints. The next available ID is: 0x111730AE", "ABSTRACT", "", "", @@ -28417,6 +28519,7 @@ "Shopping Attributes Discovery", "", "", + "", "The next new \"Google\" provider entries should be placed above.", "UMBRELLA", "", @@ -30360,6 +30463,7 @@ "RESTRICTION_GROUP_SEGMENT", "ROAD_MONITOR_MONITORED_ROAD", "ROUTE_CHILD_TYPE", + "SCHOOL_DISTRICT_TYPE", "SEGMENT_ADVISORY_MAXIMUM_SPEED", "SEGMENT_AVERAGE_SPEED", "SEGMENT_BARRIER", @@ -30666,6 +30770,7 @@ "", "", "", + "", "" ], "type": "string" @@ -30865,7 +30970,7 @@ }, "operations": { "$ref": "GeostoreOperationsProto", - "description": "RESERVED" + "description": "Information about this feature's operations, e.g. when this feature is temporarily closed. NOTE: for legacy reasons, some closure-specifc information (e.g. permanent closure reason) lives in ExistenceProto instead. In the future, such information should move here in OperationsProto." }, "originalId": { "$ref": "GeostoreFeatureIdProto", @@ -32512,6 +32617,7 @@ "PROVIDER_GOOGLE_ATTRIBUTES_DISCOVERY", "PROVIDER_GOOGLE_GEO_LDE", "PROVIDER_GOOGLE_GEO_SIGNAL_TRACKING", + "PROVIDER_GOOGLE_UGC_AGGREGATION", "PROVIDER_GOOGLE_LOCALSEARCH", "PROVIDER_GOOGLE_TRANSIT", "PROVIDER_GOOGLE_GEOWIKI", @@ -33047,7 +33153,7 @@ "", "ABSTRACT", "", - "All new \"Google\" provider entries must be full ints. The next available ID is: 0x111730AD", + "All new \"Google\" provider entries must be full ints. The next available ID is: 0x111730AE", "ABSTRACT", "", "", @@ -33215,6 +33321,7 @@ "Shopping Attributes Discovery", "", "", + "", "The next new \"Google\" provider entries should be placed above.", "UMBRELLA", "", @@ -34645,6 +34752,7 @@ "PROVIDER_GOOGLE_ATTRIBUTES_DISCOVERY", "PROVIDER_GOOGLE_GEO_LDE", "PROVIDER_GOOGLE_GEO_SIGNAL_TRACKING", + "PROVIDER_GOOGLE_UGC_AGGREGATION", "PROVIDER_GOOGLE_LOCALSEARCH", "PROVIDER_GOOGLE_TRANSIT", "PROVIDER_GOOGLE_GEOWIKI", @@ -35180,7 +35288,7 @@ "", "ABSTRACT", "", - "All new \"Google\" provider entries must be full ints. The next available ID is: 0x111730AD", + "All new \"Google\" provider entries must be full ints. The next available ID is: 0x111730AE", "ABSTRACT", "", "", @@ -35348,6 +35456,7 @@ "Shopping Attributes Discovery", "", "", + "", "The next new \"Google\" provider entries should be placed above.", "UMBRELLA", "", @@ -37079,6 +37188,7 @@ "PROVIDER_GOOGLE_ATTRIBUTES_DISCOVERY", "PROVIDER_GOOGLE_GEO_LDE", "PROVIDER_GOOGLE_GEO_SIGNAL_TRACKING", + "PROVIDER_GOOGLE_UGC_AGGREGATION", "PROVIDER_GOOGLE_LOCALSEARCH", "PROVIDER_GOOGLE_TRANSIT", "PROVIDER_GOOGLE_GEOWIKI", @@ -37614,7 +37724,7 @@ "", "ABSTRACT", "", - "All new \"Google\" provider entries must be full ints. The next available ID is: 0x111730AD", + "All new \"Google\" provider entries must be full ints. The next available ID is: 0x111730AE", "ABSTRACT", "", "", @@ -37782,6 +37892,7 @@ "Shopping Attributes Discovery", "", "", + "", "The next new \"Google\" provider entries should be placed above.", "UMBRELLA", "", @@ -44516,7 +44627,7 @@ "description": "Query used to search against documents (keyword, filters, etc.)." }, "histogramQueries": { - "description": "An expression specifying a histogram request against matching documents. Expression syntax is an aggregation function call with histogram facets and other options. The following aggregation functions are supported: * `count(string_histogram_facet)`: Count the number of matching entities for each distinct attribute value. Data types: * Histogram facet (aka filterable properties): Facet names with format \u003cschema id\u003e.\u003cfacet\u003e. Facets will have the format of: a-zA-Z. If the facet is a child facet, then the parent hierarchy needs to be specified separated by dots in the prefix after the schema id. Thus, the format for a multi- level facet is: \u003cschema id\u003e.\u003cparent facet name\u003e. \u003cchild facet name\u003e. Example: schema123.root_parent_facet.middle_facet.child_facet * DocumentSchemaId: (with no schema id prefix) to get histograms for each document type (returns the schema id path, e.g. projects/12345/locations/us-west/documentSchemas/abc123). Example expression: * Document type counts: count('DocumentSchemaId') * For schema id, abc123, get the counts for MORTGAGE_TYPE: count('abc123.MORTGAGE_TYPE')", + "description": "An expression specifying a histogram request against matching documents. Expression syntax is an aggregation function call with histogram facets and other options. The following aggregation functions are supported: * `count(string_histogram_facet)`: Count the number of matching entities for each distinct attribute value. Data types: * Histogram facet (aka filterable properties): Facet names with format \u003cschema id\u003e.\u003cfacet\u003e. Facets will have the format of: `a-zA-Z`. If the facet is a child facet, then the parent hierarchy needs to be specified separated by dots in the prefix after the schema id. Thus, the format for a multi- level facet is: \u003cschema id\u003e.\u003cparent facet name\u003e. \u003cchild facet name\u003e. Example: schema123.root_parent_facet.middle_facet.child_facet * DocumentSchemaId: (with no schema id prefix) to get histograms for each document type (returns the schema id path, e.g. projects/12345/locations/us-west/documentSchemas/abc123). Example expression: * Document type counts: count('DocumentSchemaId') * For schema id, abc123, get the counts for MORTGAGE_TYPE: count('abc123.MORTGAGE_TYPE')", "items": { "$ref": "GoogleCloudContentwarehouseV1HistogramQuery" }, @@ -44562,8 +44673,8 @@ ], "enumDescriptions": [ "Total number calculation will be skipped.", - "Estimate total number.", - "It may adversely impact performance." + "Estimate total number. The total result size will be accurated up to 10,000. This option will add cost and latency to your request.", + "It may adversely impact performance. The limit is 1000,000." ], "type": "string" } @@ -44597,7 +44708,7 @@ "type": "string" }, "totalSize": { - "description": "The total number of matched documents which is available only if the client set SearchDocumentsRequest.require_total_size to `true`. Otherwise, the value will be `-1`. `total_size` will max at \"100,000\". If this is returned, then it can be assumed that the count is equal to or greater than 100,000. Typically a UI would handle this condition by displaying \"of many\", for example: \"Displaying 10 of many\".", + "description": "The total number of matched documents which is available only if the client set SearchDocumentsRequest.require_total_size to `true` or set SearchDocumentsRequest.total_result_size to `ESTIMATED_SIZE` or `ACTUAL_SIZE`. Otherwise, the value will be `-1`. Typically a UI would handle this condition by displaying \"of many\", for example: \"Displaying 10 of many\".", "format": "int32", "type": "integer" } @@ -44979,15 +45090,15 @@ "id": "GoogleCloudDocumentaiV1Barcode", "properties": { "format": { - "description": "Format of a barcode. The supported formats are: CODE_128: Code 128 type. CODE_39: Code 39 type. CODE_93: Code 93 type. CODABAR: Codabar type. DATA_MATRIX: 2D Data Matrix type. ITF: ITF type. EAN_13: EAN-13 type. EAN_8: EAN-8 type. QR_CODE: 2D QR code type. UPC_A: UPC-A type. UPC_E: UPC-E type. PDF417: PDF417 type. AZTEC: 2D Aztec code type. DATABAR: GS1 DataBar code type.", + "description": "Format of a barcode. The supported formats are: - `CODE_128`: Code 128 type. - `CODE_39`: Code 39 type. - `CODE_93`: Code 93 type. - `CODABAR`: Codabar type. - `DATA_MATRIX`: 2D Data Matrix type. - `ITF`: ITF type. - `EAN_13`: EAN-13 type. - `EAN_8`: EAN-8 type. - `QR_CODE`: 2D QR code type. - `UPC_A`: UPC-A type. - `UPC_E`: UPC-E type. - `PDF417`: PDF417 type. - `AZTEC`: 2D Aztec code type. - `DATABAR`: GS1 DataBar code type.", "type": "string" }, "rawValue": { - "description": "Raw value encoded in the barcode. For example, 'MEBKM:TITLE:Google;URL:https://www.google.com;;'.", + "description": "Raw value encoded in the barcode. For example: `'MEBKM:TITLE:Google;URL:https://www.google.com;;'`.", "type": "string" }, "valueFormat": { - "description": "Value format describes the format of the value that a barcode encodes. The supported formats are: CONTACT_INFO: Contact information. EMAIL: Email address. ISBN: ISBN identifier. PHONE: Phone number. PRODUCT: Product. SMS: SMS message. TEXT: Text string. URL: URL address. WIFI: Wifi information. GEO: Geo-localization. CALENDAR_EVENT: Calendar event. DRIVER_LICENSE: Driver's license.", + "description": "Value format describes the format of the value that a barcode encodes. The supported formats are: - `CONTACT_INFO`: Contact information. - `EMAIL`: Email address. - `ISBN`: ISBN identifier. - `PHONE`: Phone number. - `PRODUCT`: Product. - `SMS`: SMS message. - `TEXT`: Text string. - `URL`: URL address. - `WIFI`: Wifi information. - `GEO`: Geo-localization. - `CALENDAR_EVENT`: Calendar event. - `DRIVER_LICENSE`: Driver's license.", "type": "string" } }, @@ -45068,7 +45179,7 @@ "type": "string" }, "textChanges": { - "description": "Placeholder. A list of text corrections made to [Document.text]. This is usually used for annotating corrections to OCR mistakes. Text changes for a given revision may not overlap with each other.", + "description": "Placeholder. A list of text corrections made to Document.text. This is usually used for annotating corrections to OCR mistakes. Text changes for a given revision may not overlap with each other.", "items": { "$ref": "GoogleCloudDocumentaiV1DocumentTextChange" }, @@ -45093,7 +45204,7 @@ "id": "GoogleCloudDocumentaiV1DocumentEntity", "properties": { "confidence": { - "description": "Optional. Confidence of detected Schema entity. Range [0, 1].", + "description": "Optional. Confidence of detected Schema entity. Range `[0, 1]`.", "format": "float", "type": "number" }, @@ -45335,7 +45446,7 @@ "description": "Optional. Identifies the bounding polygon of a layout element on the page." }, "confidence": { - "description": "Optional. Confidence of detected page element, if applicable. Range [0, 1].", + "description": "Optional. Confidence of detected page element, if applicable. Range `[0, 1]`.", "format": "float", "type": "number" }, @@ -45417,12 +45528,12 @@ "id": "GoogleCloudDocumentaiV1DocumentPageDetectedLanguage", "properties": { "confidence": { - "description": "Confidence of detected language. Range [0, 1].", + "description": "Confidence of detected language. Range `[0, 1]`.", "format": "float", "type": "number" }, "languageCode": { - "description": "The BCP-47 language code, such as \"en-US\" or \"sr-Latn\". For more information, see https://www.unicode.org/reports/tr35/#Unicode_locale_identifier.", + "description": "The BCP-47 language code, such as `en-US` or `sr-Latn`. For more information, see https://www.unicode.org/reports/tr35/#Unicode_locale_identifier.", "type": "string" } }, @@ -45532,7 +45643,7 @@ "type": "array" }, "qualityScore": { - "description": "The overall quality score. Range [0, 1] where 1 is perfect quality.", + "description": "The overall quality score. Range `[0, 1]` where 1 is perfect quality.", "format": "float", "type": "number" } @@ -45544,12 +45655,12 @@ "id": "GoogleCloudDocumentaiV1DocumentPageImageQualityScoresDetectedDefect", "properties": { "confidence": { - "description": "Confidence of detected defect. Range [0, 1] where 1 indicates strong confidence of that the defect exists.", + "description": "Confidence of detected defect. Range `[0, 1]` where 1 indicates strong confidence of that the defect exists.", "format": "float", "type": "number" }, "type": { - "description": "Name of the defect type. Supported values are \"quality/defect_blurry\", \"quality/defect_noisy\", \"quality/defect_dark\", \"quality/defect_faint\", \"quality/defect_text_too_small\", \"quality/defect_document_cutoff\", \"quality/defect_text_cutoff\", \"quality/defect_glare\"", + "description": "Name of the defect type. Supported values are: - `quality/defect_blurry` - `quality/defect_noisy` - `quality/defect_dark` - `quality/defect_faint` - `quality/defect_text_too_small` - `quality/defect_document_cutoff` - `quality/defect_text_cutoff` - `quality/defect_glare`", "type": "string" } }, @@ -45564,7 +45675,7 @@ "description": "The bounding polygon for the Layout." }, "confidence": { - "description": "Confidence of the current Layout within context of the object this layout is for. e.g. confidence can be for a single token, a table, a visual element, etc. depending on context. Range [0, 1].", + "description": "Confidence of the current Layout within context of the object this layout is for. e.g. confidence can be for a single token, a table, a visual element, etc. depending on context. Range `[0, 1]`.", "format": "float", "type": "number" }, @@ -45992,7 +46103,7 @@ "description": "Text color." }, "fontFamily": { - "description": "Font family such as \"Arial\", \"Times New Roman\". https://www.w3schools.com/cssref/pr_font_font-family.asp", + "description": "Font family such as `Arial`, `Times New Roman`. https://www.w3schools.com/cssref/pr_font_font-family.asp", "type": "string" }, "fontSize": { @@ -46298,7 +46409,7 @@ "type": "string" }, "committedUntilIsMixed": { - "description": "Whether the status of the user until committed_until has more than one status type (e.g. DoNotDisturb + InMeeting).", + "description": "Whether the status of the user from this status's start to committed_until has more than one status type (e.g. DoNotDisturb + InMeeting).", "type": "boolean" }, "nextAvailable": { @@ -46330,7 +46441,7 @@ "type": "string" }, "committedUntilIsMixed": { - "description": "Whether the status of the user until committed_until has more than one status type (e.g. InMeeting + DoNotDisturb).", + "description": "Whether the status of the user from this status's start to committed_until has more than one status type (e.g. DoNotDisturb + InMeeting).", "type": "boolean" }, "eventSummary": { @@ -46406,7 +46517,7 @@ "type": "string" }, "committedUntilIsMixed": { - "description": "Whether the status of the user until committed_until has more than one status type (e.g. DoNotDisturb + InMeeting).", + "description": "Whether the status of the user from this status's start to committed_until has more than one status type (e.g. DoNotDisturb + InMeeting).", "type": "boolean" }, "eventSummary": { @@ -46531,13 +46642,13 @@ }, "workingElsewhere": { "$ref": "GoogleInternalAppsWaldoV1alphaWorkingElsewhereContext", - "description": "Set if the user is working remotely." + "description": "Set if the user has a working location. Not just elsewhere (legacy name)." } }, "type": "object" }, "GoogleInternalAppsWaldoV1alphaUserLocation": { - "description": "Location of the user, which might be \"home\", for example, or another office building, as well as a custom location specified by the user.", + "description": "Location of the user, which might be \"home\", for example, or an office building, as well as a custom location specified by the user.", "id": "GoogleInternalAppsWaldoV1alphaUserLocation", "properties": { "customLocation": { @@ -46587,12 +46698,12 @@ "type": "object" }, "GoogleInternalAppsWaldoV1alphaWorkingElsewhereContext": { - "description": "The context indicating the user is working remotely (from home / from a different office).", + "description": "The context providing the User Location (not just Elsewhere). This is a legacy name from when it was only set for users working remotely, now it is also set when the user is working from the office.", "id": "GoogleInternalAppsWaldoV1alphaWorkingElsewhereContext", "properties": { "location": { "$ref": "GoogleInternalAppsWaldoV1alphaUserLocation", - "description": "The new location of the user. Might represent home / another building, or a random address on the map." + "description": "The new location of the user. Might represent home, office, or a custom address on the map." } }, "type": "object" @@ -51452,7 +51563,7 @@ }, "featureSetData": { "$ref": "DrishtiFeatureSetData", - "description": "Video Understanding Golden features. (go/amarna-video-signals#golden-signals) Note: Golden6 features (names matching \"video_*\") are DEPRECATED. Please migrate to Golden7 (\"VideoFeatures.*\"). For more context, see go/golden7/migrating-from-golden6 and go/amarna-golden-feature-tracker." + "description": "Video Understanding Golden features. (go/amarna-video-signals#golden-signals) Note: Golden6 features (names matching \"video_*\") are DEPRECATED. Please migrate to Golden7 (\"VideoFeatures.*\"). For more context, see go/golden7/migrating-from-golden6 and go/amarna-golden-feature-tracker. Signals popluated in Raffia cdoc.doc_videos are configured in cs/symbol:AMARNA_EXPORTED_GOLDEN7_FEATURES." }, "golden7SoapboxSummary": { "$ref": "DrishtiFeatureSetData", @@ -59088,6 +59199,7 @@ "STOPWATCH", "TIMER", "DEVICE", + "DEVICE_SETTING", "ROOM", "STRUCTURE", "ZONE", @@ -59112,6 +59224,7 @@ "", "", "An go/identifier-for-generalized-device generalized device ID", + "An nlp_semantic_parsing.models.device.DeviceSetting that represents a single device setting.", "An assistant.context.RoomId aka DeviceId.home_graph_device_id", "An assistant.context.StructureId aka DeviceId.home_graph_device_id", "An identifier for a zone. See: go/zone-gp and go/smarthome-zones", @@ -60515,7 +60628,11 @@ "ADD_REMINDER", "SHOW_REMINDER", "UPDATE_REMINDER", - "DELETE_REMINDER" + "DELETE_REMINDER", + "SHOW_LIST", + "MODIFY_LIST", + "SHOW_NOTE", + "MODIFY_NOTE" ], "enumDescriptions": [ "", @@ -60564,6 +60681,10 @@ "", "", "", + "", + "", + "", + "", "" ], "type": "string" @@ -75531,6 +75652,7 @@ "YOUTUBE_COMMENTS_LEGAL_TAKEOUT", "YOUTUBE_COMMENTS_INDEXING", "YOUTUBE_COMMENTS_NEWEST_FIRST", + "YOUTUBE_COMMENTS_BACKEND", "YOUTUBE_SUBSCRIPTIONS_FEEDS", "YOUTUBE_COMMENT_API", "GHUB_COMMENTS", @@ -76158,6 +76280,7 @@ "Youtube Comments: Comments legal takeout go/ytcci Team contact: yt-comments-team@google.com", "Youtube Comments: Top comments indexing go/ytcci Team contact: yt-comments-team@google.com", "Youtube Comments: Newest First. go/ytcci Team contact: yt-comments-team@google.com", + "Youtube Comments: Comments Backend. go/ytcci Team contact: yt-comments-team@google.com", "Youtube Comments: Subscription notifications go/ytn-inbox-comment-decoration Team contact: yt-notifications@google.com", "YouTube Comment API go/yt-comment-api Team contact: yt-comment-api-eng@google.com", "Comments for gHub Finance. Team contact: introspect-eng@google.com", @@ -77015,7 +77138,7 @@ "type": "integer" }, "hostNsr": { - "description": "Site rank computed for host-level sitechunks. This value encodes nsr, site_pr and new_nsr. See NsrUtil::ConvertNsrDataToHostNsr and go/nsr.", + "description": "Site rank computed for host-level sitechunks. This value encodes nsr, site_pr and new_nsr. See quality_nsr::util::ConvertNsrDataToHostNsr and go/nsr.", "format": "uint32", "type": "integer" }, @@ -77088,7 +77211,7 @@ "type": "boolean" }, "nsrSitechunk": { - "description": "SiteChunk computed for nsr. It some cases it can use more information than just url (e.g. youtube channels). See NsrAnnotator for details. If sitechunk is longer than --populate_nsr_sitechunk_max_length (default=100), it will not get populated. This field might be compressed and needs to be decoded with NsrUtil::DecodeNsrSitechunk. See go/nsr-chunks for more details. This field contains only nontrivial primary chunks.", + "description": "SiteChunk computed for nsr. It some cases it can use more information than just url (e.g. youtube channels). See NsrAnnotator for details. If sitechunk is longer than --populate_nsr_sitechunk_max_length (default=100), it will not get populated. This field might be compressed and needs to be decoded with quality_nsr::util::DecodeNsrSitechunk. See go/nsr-chunks for more details. This field contains only nontrivial primary chunks.", "type": "string" }, "numUrls": { @@ -85565,7 +85688,12 @@ "description": "Snippet brain scores.", "id": "QualityPreviewSnippetBrainFeatures", "properties": { + "isSnippetBrainBoldingTriggered": { + "description": "Is the bolding triggered.", + "type": "boolean" + }, "modelScore": { + "description": "The score by SnippetBrain model.", "format": "float", "type": "number" } @@ -89678,25 +89806,12 @@ "type": "object" }, "RepositoryWebrefClusterProtoRelationRule": { - "description": "A rule that defines a Cluster based on a relation. Given a relation (a link type) R, then: For each entity B that has incoming links of type R This defines an instance of this rule, with argument=B We create a Set S We make B a child of S For each entity A that has a link R to B, we make A a child of S ", + "description": "A rule that defines a Cluster based on a relation. Given a relation (a link type) R, then: For each entity B that has incoming links of type R This defines an instance of this rule, with argument=B We create a Set S We make B a child of S For each entity A that has a link R to B, we make A a child of S Next available tag: 6", "id": "RepositoryWebrefClusterProtoRelationRule", "properties": { - "isCollapsible": { - "description": "If true, cluster global names and links will be extracted from the target of the property. If false, all members of the cluster will be considered sources.", - "type": "boolean" - }, - "isCvtRule": { - "description": "Whether the target of the relation is an intermediate (CVT) node in KG: - if it is not: generate external_id for the cluster - if it is: - CVT should not be /common/topic otherwise rule will not be created - cluster will reuse CVT mid as its own", - "type": "boolean" - }, "relation": { "description": "The topic_property_name for the link that defines the relation, e.g. \"/tv/tv_series_episode/series\". Can start with a \"!\" to indicate that this link is reversed during extraction and we want the reversed case. Required.", "type": "string" - }, - "sequenceId": { - "description": "No longer set.", - "format": "int32", - "type": "integer" } }, "type": "object" @@ -91608,14 +91723,23 @@ "description": "Identifies a set of Image NavBoost queries in the CompositeDoc. Each CompositeDoc can contain several images, so we store the image index from the CompositeDoc::doc_images with the index of the particular query inside ImageData::image_data_navboost.", "id": "RepositoryWebrefImageQueryIndices", "properties": { + "canonicalDocid": { + "description": "The (canonical) image docid of the ImageData this image query is part of. Useful for identifying the ImageData even after doc_images are updated in between Webref annotation runs. Use docid only when canonical_docid == 0.", + "format": "uint64", + "type": "string" + }, + "docid": { + "format": "uint64", + "type": "string" + }, "imageIndex": { - "description": "/ The index of the source image in CompositeDoc::doc_images.", + "description": "WARNING: The doc_images in docjoins are subject to updates including non-deterministic reordering of doc_images and their image_nb_data extensions. This means that without re-running WebrefAnnotator one cannot rely on the accuracy or even consistency of either image_index or query_index when parsing a cdoc from docjoins. In those situations one ought to rely on canonical_docid (or docid when canonical_docid is absent viz. 0). The index of the source image in CompositeDoc::doc_images.", "format": "int32", "type": "integer" }, "queryIndex": { "$ref": "RepositoryWebrefQueryIndices", - "description": "/ Queries index in ImageData::image_data_navboost." + "description": "Queries index in ImageData::image_data_navboost." } }, "type": "object" @@ -97130,7 +97254,7 @@ "type": "object" }, "ResearchScienceSearchReconciledMetadata": { - "description": "A proto for storing inferred and reconciled metadata for Science Search. Next available tag: 69", + "description": "A proto for storing inferred and reconciled metadata for Science Search. Next available tag: 70", "id": "ResearchScienceSearchReconciledMetadata", "properties": { "alternateName": { @@ -97322,6 +97446,10 @@ }, "type": "array" }, + "isInferred": { + "description": "Indicates whether the metadata was inferred using an ML model rather than from the schema.org fields.", + "type": "boolean" + }, "keyword": { "description": "Keywords describing the dataset.", "items": { @@ -102045,7 +102173,7 @@ }, "recurrenceStart": { "$ref": "GoogleTypeDateTime", - "description": "The start of the recurrence can be represented as a DateTime. This is ignored for a SingleRecurrence and YearlyRecurrence." + "description": "The start of the recurrence can be represented as a DateTime. This is ignored for a SingleRecurrence." }, "repeatCount": { "description": "Will repeat only a finite number of times. This is the original number of times the recurrence will repeat and not how many times are left for it to repeat.", @@ -103154,10 +103282,24 @@ }, "type": "array" }, + "lmsClientIdsAllowed": { + "items": { + "type": "string" + }, + "type": "array" + }, "lmsIsEditorial": { "description": "The following attributes with `lms_` prefix are for supporting LMS restrictions. See go/lms-online-restrictions for details.", "type": "boolean" }, + "lmsModificationsAllowed": { + "description": "Int values corresponds to the values of image_repository.licensed.api.restrictions.Modification enum.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, "lmsRegionsAllowed": { "$ref": "KeGovernanceTypedRegions" }, @@ -103189,6 +103331,10 @@ "A horizontal policy metadata describes requirements to be applied horizontally. Typical horizontal policies are legal-related, such that data usage restrictions must be respected at all times. When there are multiple horizontal policies, they are evaluated conjunctively. When both horizontal and vertical policy metadata are present, their evaluation results are connecteted conjunctively, e.g. Evaluate(..., horizontal_metadata_1..) AND Evaluate(..., horizontal_metadata_2..) AND Evaluate(..., horizontal_metadata_3..) … AND (Evaluate(..., vertical_metadata_1..) OR Evaluate(..., vertical_metadata_2..) OR Evaluate(..., vertical_metadata_3..) …)" ], "type": "string" + }, + "umpPolicyMetadata": { + "$ref": "StorageGraphBfgUmpPolicyMetadata", + "description": "Policy metadata fields for UMP data. Only expected to be used by UMP providers -- please consult ke-data-governance@ before populating this field." } }, "type": "object" @@ -103703,6 +103849,26 @@ }, "type": "object" }, + "StorageGraphBfgUmpPolicyMetadata": { + "description": "Metadata fields for UMP. A piece of data satisfies UMP policy if: (data access region is in the `regions_allowed` list) AND (data access time \u003e= availability_start_timestamp) AND (data access time \u003c availability_end_timestamp)", + "id": "StorageGraphBfgUmpPolicyMetadata", + "properties": { + "availabilityEnds": { + "description": "Timestamp after which data with this policy cannot be used.", + "format": "google-datetime", + "type": "string" + }, + "availabilityStarts": { + "description": "Timestamp before which data with this policy cannot be used.", + "format": "google-datetime", + "type": "string" + }, + "regionsAllowed": { + "$ref": "KeGovernanceTypedRegions" + } + }, + "type": "object" + }, "SuperrootPodcastsRecommendationsPodcastRecsFeatures": { "description": "LINT.IfChange Next ID: 101", "id": "SuperrootPodcastsRecommendationsPodcastRecsFeatures", @@ -106914,6 +107080,8 @@ "EXPANDED_DEV_SUCCESS_CLUSTER_EVENT_LEVEL", "COLLAPSED_DEV_SUCCESS_CLUSTER_EVENT_LEVEL", "BROAD_INTENT_GAMES_TIMESPENT_EVENT_LEVEL", + "PLAY_STORE_IAP_SALES_MINI_DETAILS_PAGE_EAP_PARTNER_APPS_EVENT_LEVEL", + "GEARHEAD_ATTEMPT_USB_RECOVERY", "EVENT_LEVEL_TEST_CODE_LIMIT", "RESERVED_4", "RESERVED_5", @@ -107795,6 +107963,12 @@ "SHOULD_SEE_TOP_NOW_CONTENT_PRE_REGISTRATION_GH_K2", "SHOULD_SEE_TOP_NOW_CONTENT_PRE_REGISTRATION_GH_K3_4", "SHOULD_SEE_TOP_NOW_CONTENT_PRE_REGISTRATION_GH_GTE_K5", + "SHOULD_SEE_TOP_NOW_CONTENT_MERCH_NEW_RELEASE_AH", + "SHOULD_SEE_TOP_NOW_CONTENT_MERCH_PRE_REGISTRATION_AH", + "SHOULD_SEE_TOP_NOW_CONTENT_MERCH_LIVE_OPS_AH", + "SHOULD_SEE_TOP_NOW_CONTENT_MERCH_NEW_RELEASE_GH", + "SHOULD_SEE_TOP_NOW_CONTENT_MERCH_PRE_REGISTRATION_GH", + "SHOULD_SEE_TOP_NOW_CONTENT_MERCH_LIVE_OPS_GH", "LOYALTY_STAMP_CARD_IN_PURCHASE_FLOW_SESSION_LEVEL", "WALLET_WELLBEING_ALERT_SESSION_LEVEL", "BROAD_INTENT_REWEIGHTING_SESSION_LEVEL", @@ -107806,6 +107980,8 @@ "DOWNLOAD_COUNT_ELIGIBLE", "PLANOGRAM_MERCH_AMERICAS_GAMES_PAYPAL_SESSION_LEVEL", "BROAD_INTENT_GAMES_TIMESPENT_SESSION_LEVEL", + "ELIGIBLE_FOR_MANAGE_IN_APP_DETAILS_SESSION_LEVEL", + "SEE_REENGAGEMENT_ACC_SESSION_LEVEL", "SESSION_LEVEL_TEST_CODE_LIMIT", "SHOULD_SEE_LIVE_OP_CLUSTER_USER_LEVEL", "CART_ABANDONMENT_USER_LEVEL", @@ -108155,6 +108331,8 @@ "GROWTH_CORPUS_WIDE_STAMP_CARD_PURCHASE_FLOW_SERVER_USER_LEVEL", "GROWTH_CORPUS_WIDE_STAMP_CARD_GAMES_HOME_USER_LEVEL", "LOYALTY_PURCHASE_QUEST_GAMES_HOME_USER_LEVEL", + "GROWTH_CORPUS_WIDE_STAMP_CARD_GAMES_HOME_SERVER_USER_LEVEL", + "LOYALTY_PURCHASE_QUEST_GAMES_HOME_SERVER_USER_LEVEL", "SUBS_HIGH_CHURN_FOP_OPTIONS_AVAILABLE_USER_LEVEL", "SUBS_HIGH_CHURN_FOP_OPTIONS_AVAILABLE_USER_LEVEL_V2", "SUBS_HIGH_CHURN_FOP_OPTIONS_AVAILABLE_WITH_EXISTING_FOP_USER_LEVEL", @@ -108236,6 +108414,11 @@ "POSTPERIOD_PAGE_VISIT_28D_FREQUENCY_26_USER_LEVEL", "POSTPERIOD_PAGE_VISIT_28D_FREQUENCY_27_USER_LEVEL", "POSTPERIOD_PAGE_VISIT_28D_FREQUENCY_28_USER_LEVEL", + "LOYALTY_STAMP_CARD_IN_PURCHASE_FLOW_SERVER_USER_LEVEL", + "ELIGIBLE_FOR_MANAGE_IN_APP_DETAILS_USER_LEVEL", + "PLAY_ONBOARDING_QUEST_GAMES_HOME_USER_LEVEL", + "SERVED_GPP_ONBOARDING_QUEST_USER_LEVEL", + "YOUTUBE_OPTED_IN_NOTIFICATION_DRIVEN_PREFETCH_USER_LEVEL", "USER_LEVEL_TEST_CODE_LIMIT" ], "enumDescriptions": [ @@ -108531,6 +108714,8 @@ "Event level test code for dev success cluster.", "", "TestCode for Broad Intent Games TimeSpent Event Level.", + "Test codes for the feature and each early-access partners for the Play Store IAP sales project at event-level. go/play-store-iap-sales-dd", + "USB connection recovery.", "", "", "", @@ -109412,6 +109597,12 @@ "", "", "", + "Merch featuring Now! content on Top of Apps Home.", + "", + "", + "Merch featuring Now! content on Top of Games Home.", + "", + "", "Session level test code for Quest Platform Loyalty Stamp Card in Purchase flow.", "TestCode for slicing the users cohorts that should have received a budget Warning alert", "TestCode for Broad Intent Reweighting Session Level.", @@ -109423,6 +109614,8 @@ "Session level test code for 1.5x ad format. See here for details: http://shortn/_04Q1LMyoTe.", "Session level test code for merch run planogram experiment", "TestCode for Broad Intent Games TimeSpent Session Level.", + "Session level test code for eligible users for manage in-app details", + "Session level test code for users that see reengagement ACC", "", "User should see the live op cluster.", "Cart abandonment flow for purchase flow.", @@ -109772,6 +109965,8 @@ "User level test code for Corpus Wide Growth Stamp Card, for tracking users who made eligible purchases and are eligible for the GSC in purchase flow. This test code is logged on server side.", "User level test code for Corpus Wide Growth Stamp Card, for tracking users who are eligible for the GSC in Games Home.", "User level test code for Loyalty Purchase Quest, for tracking users who are eligible for the LPQ in Games Home.", + "User level test code for Corpus Wide Growth Stamp Card, for tracking users who are eligible for the GSC in Games Home. This test code is logged on server side.", + "User level test code for Loyalty Purchase Quest, for tracking users who are eligible for the LPQ in Games Home. This test code is logged on server side.", "User level test code that indicates that at least one high churn fop options is available for user when visiting add fop page for subscription purchase. Deprecated, use 20361 instead.", "", "", @@ -109853,6 +110048,11 @@ "", "", "", + "Test code for Loyalty Stamp Card, for tracking users who made eligible purchases and are eligible for the LSC in purchase flow.", + "User level test code for eligible users for manage in-app details", + "User level test code for Play Onboarding quest, tracking users who are eligible for Play Onboarding quest in Games Home", + "User level test code for users who have been served GPP onboarding quest.", + "User level test code for YouTube commerce, tracking users who opted in notification driven prefetch.", "" ], "type": "string" @@ -110164,7 +110364,7 @@ "Put all the assets in a satisfactory state.", "Enough was done on the ingredient for the video to be playable.", "The validation asset is ready.", - "The most important transcodes and other assets have been completed. Roughly equlvalent to GFLAG_FULLY_PROCESSED, limited to UGC and Reels. As of 6/2019, resolutions up to 4K are represented.", + "The most important transcodes and other assets have been completed. Drives \"is_fully_processed\" in VAPI. Limited to UGC and Reels. Also used to atomically publish all latency-sensitive transcodes after an edit.", "A representation for the video in advance of all completed assets is ready.", "The transmuxed transcode for the video, used for faster playback in certain early GO_LIVE scenarios, is playable. This is currently limited to Photos.", "Basic media information is available -- a rare single-asset objective, to advertise a video's general information as quickly as possible.", @@ -115822,7 +116022,8 @@ "TYPE_STARBURST_TOKENS", "TYPE_MACRO_MARKERS", "TYPE_THUMB_QUERY_EMBEDDING", - "TYPE_COLOR_SAMPLING" + "TYPE_COLOR_SAMPLING", + "TYPE_ENGAGINESS" ], "enumDescriptions": [ "", @@ -115863,6 +116064,7 @@ "", "", "", + "", "" ], "type": "string" @@ -125962,7 +126164,8 @@ "GOOGLE_ASSISTANT", "GOOGLE_LIST_RECS", "GOOGLE_MEDIA_ACTIONS", - "MEDIA_CONNECT_FRONTEND" + "MEDIA_CONNECT_FRONTEND", + "GOOGLE_TV" ], "enumDescriptions": [ "", @@ -126060,7 +126263,8 @@ "Middleware or Frontend Server Clients Google Assistant integration with Voz", "List Recs Service Clients", "Media Actions Service Clients", - "YouTube Media Connect Frontend (YMCFE)" + "YouTube Media Connect Frontend (YMCFE)", + "Google TV clients New Google TV devices (go/gtv-deck). This is added to support go/gtv-ads." ], "type": "string" }, @@ -126629,7 +126833,6 @@ "GEO_TYPES_COLLECTION_POTENTIALLY_SENSITIVE", "GEO_TYPE", "ADDED_DURING_GEO_ENTITIES_PROMOTION", - "GEO_TYPE_PUBLIC_SPACES_AND_MONUMENTS", "GEO_TYPE_COMPOUND_BUILDING", "GEO_TYPE_POLITICAL", "GEO_TYPES_COLLECTION_SMALL_POLITICALS", @@ -126717,21 +126920,20 @@ "This context indicates that a Legos annotation is of a shopping category. See go/shopping-kg-schema#product-categories.", "This context indicates that a Legos annotation comes from a creator shopping product annotation (go/shoptube).", "This context indicates that a Legos annotation was output by VSU.", - "Context used by Geo that indicates if an entity is a restaurant or cafe.", - "Context used by Geo that indicates if an entity is an establishment point of interest.", - "Context used by Geo to indicate destination which is included in the travel vertical, corresponding to kg_types for both travel and tourism.", - "Context used by Geo that indicates an entity is an entertainment and recreation destination.", - "Context used by Geo that indicates an entity is part of business vertical. Includes /geo/type/services, /geo/type/business_related, and /geo/type/vehicle_dealers.", - "Context used by Geo to filter out destinations which might be sensitive to users from showing up in the structured description UI. Includes /geo/type/potentially_sensitive_entity, /geo/type/government, and /geo/type/religious_institution.", + "Deprecated. See b/244583433. Instead, consider relying on GEO_TYPE and looking up individual KG types in YTKS.", + "Deprecated. See b/244583433. Instead, consider relying on GEO_TYPE and looking up individual KG types in YTKS.", + "Deprecated. See b/244583433. Instead, consider relying on GEO_TYPE and looking up individual KG types in YTKS.", + "Deprecated. See b/244583433. Instead, consider relying on GEO_TYPE and looking up individual KG types in YTKS.", + "Deprecated. See b/244583433. Instead, consider relying on GEO_TYPE and looking up individual KG types in YTKS.", + "Deprecated. See b/244583433. Instead, consider relying on GEO_TYPE and looking up individual KG types in YTKS.", "Context used by Geo that indicates if an entity is a geo feature.", - "Assigned only to geo entities that are added during postprocessing due to their high webref topicalities and confidences.", - "Assigned to geo entities of type public spaces and monuments.", - "Assigned to geo entities of type compound building.", - "Assigned to geo entities of type political.", - "Assigned to geo entities of type political that represent areas smaller than a city, such as sublocalities and neighborhoods.", - "Assigned to geo entities of type political that could represent a city, such as localities and small administrative areas.", - "Assigned to geo entities of type political that are larger than a city, such as large administrative areas and countries.", - "Assigned to geo entities of type natural, except for continents.", + "Deprecated. See b/244583433. Instead, consider relying on GEO_TYPE and looking up individual KG types in YTKS.", + "Deprecated. See b/244583433. Instead, consider relying on GEO_TYPE and looking up individual KG types in YTKS.", + "Deprecated. See b/244583433. Instead, consider relying on GEO_TYPE and looking up individual KG types in YTKS.", + "Deprecated. See b/244583433. Instead, consider relying on GEO_TYPE and looking up individual KG types in YTKS.", + "Deprecated. See b/244583433. Instead, consider relying on GEO_TYPE and looking up individual KG types in YTKS.", + "Deprecated. See b/244583433. Instead, consider relying on GEO_TYPE and looking up individual KG types in YTKS.", + "Deprecated. See b/244583433. Instead, consider relying on GEO_TYPE and looking up individual KG types in YTKS.", "Assigned to an entity that has been denormalized from an entity which it geographically contains according to the containing entity's type.", "", "", diff --git a/contentwarehouse/v1/contentwarehouse-gen.go b/contentwarehouse/v1/contentwarehouse-gen.go index 65be59635e7..01081ea9246 100644 --- a/contentwarehouse/v1/contentwarehouse-gen.go +++ b/contentwarehouse/v1/contentwarehouse-gen.go @@ -3506,6 +3506,9 @@ type AppsPeopleOzExternalMergedpeopleapiBirthday struct { Metadata *AppsPeopleOzExternalMergedpeopleapiPersonFieldMetadata `json:"metadata,omitempty"` + // Prompt: People Prompts settings for contact birthday data. + Prompt *SocialGraphApiProtoPrompt `json:"prompt,omitempty"` + // Value: Actual value entered. Allows unstructured values. Value string `json:"value,omitempty"` @@ -4894,6 +4897,9 @@ type AppsPeopleOzExternalMergedpeopleapiEvent struct { Metadata *AppsPeopleOzExternalMergedpeopleapiPersonFieldMetadata `json:"metadata,omitempty"` + // Prompt: People Prompts settings for contact event data. + Prompt *SocialGraphApiProtoPrompt `json:"prompt,omitempty"` + // TimestampMillis: Clients are recommended to read the calendar_day // field instead of timestamp_millis. When writing events, new clients // must set calendar_day instead of timestamp_millis. Events are @@ -11141,8 +11147,10 @@ type AssistantApiClientOpPropertiesDeviceModifySettingClientOpProperty struct { // "ADD_FINGERPRINT" // "AIRPLANE_MODE" // "ALARM_VOLUME" + // "ALARM_SOUND" // "AMBIENT_DISPLAY_ALWAYS_ON" // "AMBIENT_DISPLAY_NEW_NOTIFICATION" + // "ANDROID_AUTO" // "ANDROID_VERSION" // "APP_BATTERY_USAGE" // "APP_DATA_USAGE" @@ -11155,14 +11163,19 @@ type AssistantApiClientOpPropertiesDeviceModifySettingClientOpProperty struct { // "ASSISTANT_VOICE_MATCH" // "AUTO_ROTATE" // "AUTO_ROTATE_FACE_DETECTION" + // "BACKUP" // "BATTERY_LEVEL" // "BATTERY_LOW" // "BATTERY_PERCENTAGE" // "BATTERY_PRESENT" // "BATTERY_SAVER" + // "BATTERY_SHARE" // "BATTERY_USAGE" // "BIOMETRIC" - // "BLUETOOTH" + // "BLUETOOTH" - Bluetooth on/off toggle + // "BLUETOOTH_NAME" + // "BLUETOOTH_ADDRESS" + // "BLUETOOTH_SETTINGS" - Bluetooth preferences page // "BRIGHTNESS_LEVEL" // "BUBBLES" // "CALL_VOLUME" @@ -11171,17 +11184,32 @@ type AssistantApiClientOpPropertiesDeviceModifySettingClientOpProperty struct { // "COLOR_INVERSION" // "CHARGING_SOUNDS_AND_VIBRATION" // "CHARGING_STATE" + // "CONNECTED_DEVICES" // "CONTACTLESS_PAYMENTS" // "DATA_ROAMING" // "DATA_SAVER" // "DATA_USAGE" - Cellular carrier (non-wifi) data usage statistics & // settings for the device. + // "DATA_LIMIT" - Toggle to enable data use limit + // "DATA_LIMIT_LEVEL" - The mobile data use after which mobile data is + // automatically disabled. + // "DATA_WARNING" - Toggle to enable data use warning + // "DATA_WARNING_LEVEL" - The mobile data use after which a warning is + // shown to the user. // "DEFAULT_APPS" // "DEVELOPER_OPTIONS" + // "DEVICE_NAME" // "DISPLAY_OVER_OTHER_APPS" // "DISPLAY_SIZE" // "DO_NOT_DISTURB" + // "DO_NOT_DISTURB_MESSAGES" + // "DO_NOT_DISTURB_CALLS" + // "DO_NOT_DISTURB_ALARMS" + // "DO_NOT_DISTURB_SCHEDULES" // "DOUBLE_TAP_CHECK_PHONE" + // "DRIVING_MODE" - Special mode for using device hands-free while + // driving. + // "EMERGENCY" - Main emergency settings // "EMERGENCY_ALERTS" // "EMERGENCY_INFORMATION" // "ETHERNET_TETHERING" @@ -11193,9 +11221,11 @@ type AssistantApiClientOpPropertiesDeviceModifySettingClientOpProperty struct { // "GESTURES" // "HAPTIC_FEEDBACK_VIBRATION" // "HEADS_UP" + // "HIGH_REFRESH_RATE" // "HOT_SPOT" // "HOTSPOT_TETHERING" // "HOT_WORD" + // "IP_ADDRESS" - Show my IP address // "IMPROVE_LOCATION_ACCURACY" // "JUMP_TO_CAMERA" // "KEYBOARD_SHORTCUTS" @@ -11206,6 +11236,7 @@ type AssistantApiClientOpPropertiesDeviceModifySettingClientOpProperty struct { // "LOCK_SCREEN" // "LOCK_SCREEN_DEVICE_CONTROLS" // "LOCK_SCREEN_WALLET" + // "MAC_ADDRESS" - Show my MAC address // "MAGNIFICATION" // "MAGNIFY_BUTTON" // "MAGNIFY_TRIPLE_TAP" @@ -11221,16 +11252,21 @@ type AssistantApiClientOpPropertiesDeviceModifySettingClientOpProperty struct { // "MUSIC" // "MUTE_MODE" // "NETWORK" + // "NETWORK_RESET" - Restarts the device network stack, no settings + // are deleted. // "NFC" // "NIGHT_LIGHT_INTENSITY" // "NIGHT_LIGHT_SWITCH" // "NIGHT_MODE" // "NOTIFICATION_BADGE" + // "NOTIFICATION_SOUND" // "NOTIFICATION_ON_SCREEN" // "NOTIFY_FOR_PUBLIC_NETWORKS" // "ONEHANDED_MODE" // "PASSWORD" + // "PERMISSION_MANAGER" // "PERSONALIZATION" + // "PHONE_NUMBER" // "PICTURE_IN_PICTURE" // "POINTER_SPEED" // "POWER_MENU" @@ -11238,6 +11274,8 @@ type AssistantApiClientOpPropertiesDeviceModifySettingClientOpProperty struct { // "REQUIRE_DEVICE_UNLOCK_FOR_NFC" // "RINGTONE" // "RING_VOLUME" + // "NEARBY_DEVICES_SCANNING" + // "NEARBY_SHARE" // "SCREEN_LOCKING_SOUND" // "SCREEN_MAGNIFICATION" // "SCREEN_TIMEOUT" @@ -11253,6 +11291,9 @@ type AssistantApiClientOpPropertiesDeviceModifySettingClientOpProperty struct { // "SYSTEM_UPDATE" // "TALKBACK_PASSWORDS" // "TEXT_TO_SPEECH" + // "TIME_ZONE" + // "UNUSED_APPS" + // "USB" // "USB_TETHERING" // "VERBOSE_TTS" // "VIBRATE" - Corresponds to "Vibration & haptics" toggle in the @@ -11264,6 +11305,8 @@ type AssistantApiClientOpPropertiesDeviceModifySettingClientOpProperty struct { // "WALLPAPERS" // "WEBVIEW" // "WIFI" + // "WIFI_ADD_NETWORK" + // "WIFI_ADD_NETWORK_QR_CODE" // "WIFI_CALLING" // "WIFI_HOTSPOT" // "ABOUT_PHONE" - Begin of NGA proto consistence @@ -11312,7 +11355,10 @@ type AssistantApiClientOpPropertiesDeviceModifySettingClientOpProperty struct { // "WEARABLE_AMBIENT" - Wearable device settings // "WEARABLE_NOISE_CANCELLATION" // "WEARABLE_TOUCH_CONTROLS" - // "RAISE_TO_TALK" - End of Wearable device settings + // "RAISE_TO_TALK" + // "BEDTIME_MODE" + // "THEATER_MODE" + // "TOUCH_LOCK" - End of Wearable device settings SupportedSettings []string `json:"supportedSettings,omitempty"` // SupportsDoNotDisturbWithDuration: Additional specific setting @@ -21547,12 +21593,14 @@ func (s *AssistantGroundingRankerContactGroundingProviderFeatures) UnmarshalJSON return nil } -// AssistantGroundingRankerGroundingProviderFeatures: Next ID: 3 +// AssistantGroundingRankerGroundingProviderFeatures: Next ID: 4 type AssistantGroundingRankerGroundingProviderFeatures struct { ContactGroundingProviderFeatures *AssistantGroundingRankerContactGroundingProviderFeatures `json:"contactGroundingProviderFeatures,omitempty"` MediaGroundingProviderFeatures *AssistantGroundingRankerMediaGroundingProviderFeatures `json:"mediaGroundingProviderFeatures,omitempty"` + ProviderGroundingProviderFeatures *AssistantGroundingRankerProviderGroundingProviderFeatures `json:"providerGroundingProviderFeatures,omitempty"` + // ForceSendFields is a list of field names (e.g. // "ContactGroundingProviderFeatures") to unconditionally include in API // requests. By default, fields with empty or default values are omitted @@ -21629,6 +21677,51 @@ func (s *AssistantGroundingRankerMediaGroundingProviderFeatures) UnmarshalJSON(d return nil } +// AssistantGroundingRankerProviderGroundingProviderFeatures: Features +// to be extracted from Provider GP for ranking in HGR. Next ID: 2 +type AssistantGroundingRankerProviderGroundingProviderFeatures struct { + // PslScore: Provider quality score in the range [0,1] that can be used + // for ranking providers. Incorporates both policy rules and quality + // considerations. + PslScore float64 `json:"pslScore,omitempty"` + + // ForceSendFields is a list of field names (e.g. "PslScore") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "PslScore") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AssistantGroundingRankerProviderGroundingProviderFeatures) MarshalJSON() ([]byte, error) { + type NoMethod AssistantGroundingRankerProviderGroundingProviderFeatures + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *AssistantGroundingRankerProviderGroundingProviderFeatures) UnmarshalJSON(data []byte) error { + type NoMethod AssistantGroundingRankerProviderGroundingProviderFeatures + var s1 struct { + PslScore gensupport.JSONFloat64 `json:"pslScore"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.PslScore = float64(s1.PslScore) + return nil +} + type AssistantLogsAllMediaStreamLog struct { // Streams: All active media streams while the user issues the query. Streams []*AssistantLogsMediaStreamLog `json:"streams,omitempty"` @@ -23790,7 +23883,7 @@ func (s *AssistantLogsTargetDeviceLog) MarshalJSON() ([]byte, error) { // AssistantPrefulfillmentRankerPrefulfillmentSignals: Signals to be // used by the Prefulfillment Ranker. Derived from the ParsingSignals // and GroundingSignals carried by the FunctionCall. LINT.IfChange Next -// ID: 33 +// ID: 34 type AssistantPrefulfillmentRankerPrefulfillmentSignals struct { // BindingSetAuis: Assistant User Interaction Score for binding set. BindingSetAuis float64 `json:"bindingSetAuis,omitempty"` @@ -23838,6 +23931,11 @@ type AssistantPrefulfillmentRankerPrefulfillmentSignals struct { // aggregated using intent name from exp laelaps. IntentNameAuisScoreExp float64 `json:"intentNameAuisScoreExp,omitempty"` + // IsFeasible: Feasibility of fulfilling the binding set. Eg: For + // PlayMedia, this is equivalent to playability. More details: + // go/hgr-feasibility-feature. + IsFeasible bool `json:"isFeasible,omitempty"` + // KscorerRank: The rank order of the interpretation as determined by // kscorer. The kscorer-determined dominant interpretation, if any, gets // a rank of 0. The remaining N interpretations get a rank of 1 through @@ -28001,7 +28099,7 @@ type CompressedQualitySignals struct { // LowQuality: S2V low quality score: converted from // quality_nsr.NsrData, applied in Qstar. See - // NsrUtil::ConvertNsrDataToLowQuality. + // quality_nsr::util::ConvertNsrDataToLowQuality. LowQuality int64 `json:"lowQuality,omitempty"` // NavDemotion: nav_demotion: converted from @@ -31554,6 +31652,7 @@ type DrishtiVesperThumbnailQualityScore struct { // "CHAPTER_TITLE_MATCHING" // "DBSCAN_FRAME_CHAPTER_SIMILARITY" // "EYES_NOT_VISIBLY_CLOSED" + // "ENGAGINESS" // "MERGED" - The score merged from the above source types. Type string `json:"type,omitempty"` @@ -36235,7 +36334,7 @@ type GeostoreDataSourceProto struct { // "PROVIDER_GOOGLE" - ABSTRACT // "PROVIDER_GOOGLE_HAND_EDIT" // "PROVIDER_GOOGLE_BORDERS" - All new "Google" provider entries must - // be full ints. The next available ID is: 0x111730AD + // be full ints. The next available ID is: 0x111730AE // "PROVIDER_GOOGLE_SUBRANGE" - ABSTRACT // "PROVIDER_GOOGLE_GT_FUSION" // "PROVIDER_GOOGLE_ZAGAT_CMS" @@ -36408,6 +36507,7 @@ type GeostoreDataSourceProto struct { // Discovery // "PROVIDER_GOOGLE_GEO_LDE" // "PROVIDER_GOOGLE_GEO_SIGNAL_TRACKING" + // "PROVIDER_GOOGLE_UGC_AGGREGATION" // "PROVIDER_GOOGLE_LOCALSEARCH" - The next new "Google" provider // entries should be placed above. // "PROVIDER_GOOGLE_TRANSIT" - UMBRELLA @@ -38582,6 +38682,7 @@ type GeostoreFeaturePropertyIdProto struct { // "RESTRICTION_GROUP_SEGMENT" // "ROAD_MONITOR_MONITORED_ROAD" // "ROUTE_CHILD_TYPE" + // "SCHOOL_DISTRICT_TYPE" // "SEGMENT_ADVISORY_MAXIMUM_SPEED" // "SEGMENT_AVERAGE_SPEED" // "SEGMENT_BARRIER" @@ -38971,7 +39072,11 @@ type GeostoreFeatureProto struct { // in different languages, colloquial or "vanity" names, etc. Name []*GeostoreNameProto `json:"name,omitempty"` - // Operations: RESERVED + // Operations: Information about this feature's operations, e.g. when + // this feature is temporarily closed. NOTE: for legacy reasons, some + // closure-specifc information (e.g. permanent closure reason) lives in + // ExistenceProto instead. In the future, such information should move + // here in OperationsProto. Operations *GeostoreOperationsProto `json:"operations,omitempty"` // OriginalId: This field is used internally by the pipeline for id @@ -40625,7 +40730,7 @@ type GeostoreInternalSourceSummaryProto struct { // "PROVIDER_GOOGLE" - ABSTRACT // "PROVIDER_GOOGLE_HAND_EDIT" // "PROVIDER_GOOGLE_BORDERS" - All new "Google" provider entries must - // be full ints. The next available ID is: 0x111730AD + // be full ints. The next available ID is: 0x111730AE // "PROVIDER_GOOGLE_SUBRANGE" - ABSTRACT // "PROVIDER_GOOGLE_GT_FUSION" // "PROVIDER_GOOGLE_ZAGAT_CMS" @@ -40798,6 +40903,7 @@ type GeostoreInternalSourceSummaryProto struct { // Discovery // "PROVIDER_GOOGLE_GEO_LDE" // "PROVIDER_GOOGLE_GEO_SIGNAL_TRACKING" + // "PROVIDER_GOOGLE_UGC_AGGREGATION" // "PROVIDER_GOOGLE_LOCALSEARCH" - The next new "Google" provider // entries should be placed above. // "PROVIDER_GOOGLE_TRANSIT" - UMBRELLA @@ -42787,7 +42893,7 @@ type GeostoreOntologyRawGConceptInstanceProto struct { // "PROVIDER_GOOGLE" - ABSTRACT // "PROVIDER_GOOGLE_HAND_EDIT" // "PROVIDER_GOOGLE_BORDERS" - All new "Google" provider entries must - // be full ints. The next available ID is: 0x111730AD + // be full ints. The next available ID is: 0x111730AE // "PROVIDER_GOOGLE_SUBRANGE" - ABSTRACT // "PROVIDER_GOOGLE_GT_FUSION" // "PROVIDER_GOOGLE_ZAGAT_CMS" @@ -42960,6 +43066,7 @@ type GeostoreOntologyRawGConceptInstanceProto struct { // Discovery // "PROVIDER_GOOGLE_GEO_LDE" // "PROVIDER_GOOGLE_GEO_SIGNAL_TRACKING" + // "PROVIDER_GOOGLE_UGC_AGGREGATION" // "PROVIDER_GOOGLE_LOCALSEARCH" - The next new "Google" provider // entries should be placed above. // "PROVIDER_GOOGLE_TRANSIT" - UMBRELLA @@ -45245,7 +45352,7 @@ type GeostoreProvenanceProto struct { // "PROVIDER_GOOGLE" - ABSTRACT // "PROVIDER_GOOGLE_HAND_EDIT" // "PROVIDER_GOOGLE_BORDERS" - All new "Google" provider entries must - // be full ints. The next available ID is: 0x111730AD + // be full ints. The next available ID is: 0x111730AE // "PROVIDER_GOOGLE_SUBRANGE" - ABSTRACT // "PROVIDER_GOOGLE_GT_FUSION" // "PROVIDER_GOOGLE_ZAGAT_CMS" @@ -45418,6 +45525,7 @@ type GeostoreProvenanceProto struct { // Discovery // "PROVIDER_GOOGLE_GEO_LDE" // "PROVIDER_GOOGLE_GEO_SIGNAL_TRACKING" + // "PROVIDER_GOOGLE_UGC_AGGREGATION" // "PROVIDER_GOOGLE_LOCALSEARCH" - The next new "Google" provider // entries should be placed above. // "PROVIDER_GOOGLE_TRANSIT" - UMBRELLA @@ -55495,8 +55603,8 @@ type GoogleCloudContentwarehouseV1SearchDocumentsRequest struct { // `count(string_histogram_facet)`: Count the number of matching // entities for each distinct attribute value. Data types: * Histogram // facet (aka filterable properties): Facet names with format .. Facets will have the format of: a-zA-Z. If the facet is - // a child facet, then the parent hierarchy needs to be specified + // id>.. Facets will have the format of: `a-zA-Z`. If the facet + // is a child facet, then the parent hierarchy needs to be specified // separated by dots in the prefix after the schema id. Thus, the format // for a multi- level facet is: .. . Example: @@ -55563,8 +55671,11 @@ type GoogleCloudContentwarehouseV1SearchDocumentsRequest struct { // Possible values: // "TOTAL_RESULT_SIZE_UNSPECIFIED" - Total number calculation will be // skipped. - // "ESTIMATED_SIZE" - Estimate total number. - // "ACTUAL_SIZE" - It may adversely impact performance. + // "ESTIMATED_SIZE" - Estimate total number. The total result size + // will be accurated up to 10,000. This option will add cost and latency + // to your request. + // "ACTUAL_SIZE" - It may adversely impact performance. The limit is + // 1000,000. TotalResultSize string `json:"totalResultSize,omitempty"` // ForceSendFields is a list of field names (e.g. "DocumentQuery") to @@ -55612,11 +55723,10 @@ type GoogleCloudContentwarehouseV1SearchDocumentsResponse struct { // TotalSize: The total number of matched documents which is available // only if the client set SearchDocumentsRequest.require_total_size to - // `true`. Otherwise, the value will be `-1`. `total_size` will max at - // "100,000". If this is returned, then it can be assumed that the count - // is equal to or greater than 100,000. Typically a UI would handle this - // condition by displaying "of many", for example: "Displaying 10 of - // many". + // `true` or set SearchDocumentsRequest.total_result_size to + // `ESTIMATED_SIZE` or `ACTUAL_SIZE`. Otherwise, the value will be `-1`. + // Typically a UI would handle this condition by displaying "of many", + // for example: "Displaying 10 of many". TotalSize int64 `json:"totalSize,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -56329,24 +56439,26 @@ type GoogleCloudContentwarehouseV1beta1UpdateDocumentMetadata struct { // GoogleCloudDocumentaiV1Barcode: Encodes the detailed information of a // barcode. type GoogleCloudDocumentaiV1Barcode struct { - // Format: Format of a barcode. The supported formats are: CODE_128: - // Code 128 type. CODE_39: Code 39 type. CODE_93: Code 93 type. CODABAR: - // Codabar type. DATA_MATRIX: 2D Data Matrix type. ITF: ITF type. - // EAN_13: EAN-13 type. EAN_8: EAN-8 type. QR_CODE: 2D QR code type. - // UPC_A: UPC-A type. UPC_E: UPC-E type. PDF417: PDF417 type. AZTEC: 2D - // Aztec code type. DATABAR: GS1 DataBar code type. + // Format: Format of a barcode. The supported formats are: - `CODE_128`: + // Code 128 type. - `CODE_39`: Code 39 type. - `CODE_93`: Code 93 type. + // - `CODABAR`: Codabar type. - `DATA_MATRIX`: 2D Data Matrix type. - + // `ITF`: ITF type. - `EAN_13`: EAN-13 type. - `EAN_8`: EAN-8 type. - + // `QR_CODE`: 2D QR code type. - `UPC_A`: UPC-A type. - `UPC_E`: UPC-E + // type. - `PDF417`: PDF417 type. - `AZTEC`: 2D Aztec code type. - + // `DATABAR`: GS1 DataBar code type. Format string `json:"format,omitempty"` - // RawValue: Raw value encoded in the barcode. For example, - // 'MEBKM:TITLE:Google;URL:https://www.google.com;;'. + // RawValue: Raw value encoded in the barcode. For example: + // `'MEBKM:TITLE:Google;URL:https://www.google.com;;'`. RawValue string `json:"rawValue,omitempty"` // ValueFormat: Value format describes the format of the value that a - // barcode encodes. The supported formats are: CONTACT_INFO: Contact - // information. EMAIL: Email address. ISBN: ISBN identifier. PHONE: - // Phone number. PRODUCT: Product. SMS: SMS message. TEXT: Text string. - // URL: URL address. WIFI: Wifi information. GEO: Geo-localization. - // CALENDAR_EVENT: Calendar event. DRIVER_LICENSE: Driver's license. + // barcode encodes. The supported formats are: - `CONTACT_INFO`: Contact + // information. - `EMAIL`: Email address. - `ISBN`: ISBN identifier. - + // `PHONE`: Phone number. - `PRODUCT`: Product. - `SMS`: SMS message. - + // `TEXT`: Text string. - `URL`: URL address. - `WIFI`: Wifi + // information. - `GEO`: Geo-localization. - `CALENDAR_EVENT`: Calendar + // event. - `DRIVER_LICENSE`: Driver's license. ValueFormat string `json:"valueFormat,omitempty"` // ForceSendFields is a list of field names (e.g. "Format") to @@ -56446,9 +56558,9 @@ type GoogleCloudDocumentaiV1Document struct { Text string `json:"text,omitempty"` // TextChanges: Placeholder. A list of text corrections made to - // [Document.text]. This is usually used for annotating corrections to - // OCR mistakes. Text changes for a given revision may not overlap with - // each other. + // Document.text. This is usually used for annotating corrections to OCR + // mistakes. Text changes for a given revision may not overlap with each + // other. TextChanges []*GoogleCloudDocumentaiV1DocumentTextChange `json:"textChanges,omitempty"` // TextStyles: Placeholder. Styles for the Document.text. @@ -56487,8 +56599,8 @@ func (s *GoogleCloudDocumentaiV1Document) MarshalJSON() ([]byte, error) { // phrase in the text or a property that belongs to the document. It is // a known entity type, such as a person, an organization, or location. type GoogleCloudDocumentaiV1DocumentEntity struct { - // Confidence: Optional. Confidence of detected Schema entity. Range [0, - // 1]. + // Confidence: Optional. Confidence of detected Schema entity. Range + // `[0, 1]`. Confidence float64 `json:"confidence,omitempty"` // Id: Optional. Canonical id. This will be a unique value in the entity @@ -56806,7 +56918,7 @@ type GoogleCloudDocumentaiV1DocumentPageAnchorPageRef struct { BoundingPoly *GoogleCloudDocumentaiV1BoundingPoly `json:"boundingPoly,omitempty"` // Confidence: Optional. Confidence of detected page element, if - // applicable. Range [0, 1]. + // applicable. Range `[0, 1]`. Confidence float64 `json:"confidence,omitempty"` // LayoutId: Optional. Deprecated. Use PageRef.bounding_poly instead. @@ -56942,10 +57054,10 @@ func (s *GoogleCloudDocumentaiV1DocumentPageDetectedBarcode) MarshalJSON() ([]by // GoogleCloudDocumentaiV1DocumentPageDetectedLanguage: Detected // language for a structural component. type GoogleCloudDocumentaiV1DocumentPageDetectedLanguage struct { - // Confidence: Confidence of detected language. Range [0, 1]. + // Confidence: Confidence of detected language. Range `[0, 1]`. Confidence float64 `json:"confidence,omitempty"` - // LanguageCode: The BCP-47 language code, such as "en-US" or "sr-Latn". + // LanguageCode: The BCP-47 language code, such as `en-US` or `sr-Latn`. // For more information, see // https://www.unicode.org/reports/tr35/#Unicode_locale_identifier. LanguageCode string `json:"languageCode,omitempty"` @@ -57141,7 +57253,7 @@ type GoogleCloudDocumentaiV1DocumentPageImageQualityScores struct { // DetectedDefects: A list of detected defects. DetectedDefects []*GoogleCloudDocumentaiV1DocumentPageImageQualityScoresDetectedDefect `json:"detectedDefects,omitempty"` - // QualityScore: The overall quality score. Range [0, 1] where 1 is + // QualityScore: The overall quality score. Range `[0, 1]` where 1 is // perfect quality. QualityScore float64 `json:"qualityScore,omitempty"` @@ -57186,15 +57298,15 @@ func (s *GoogleCloudDocumentaiV1DocumentPageImageQualityScores) UnmarshalJSON(da // GoogleCloudDocumentaiV1DocumentPageImageQualityScoresDetectedDefect: // Image Quality Defects type GoogleCloudDocumentaiV1DocumentPageImageQualityScoresDetectedDefect struct { - // Confidence: Confidence of detected defect. Range [0, 1] where 1 + // Confidence: Confidence of detected defect. Range `[0, 1]` where 1 // indicates strong confidence of that the defect exists. Confidence float64 `json:"confidence,omitempty"` - // Type: Name of the defect type. Supported values are - // "quality/defect_blurry", "quality/defect_noisy", - // "quality/defect_dark", "quality/defect_faint", - // "quality/defect_text_too_small", "quality/defect_document_cutoff", - // "quality/defect_text_cutoff", "quality/defect_glare" + // Type: Name of the defect type. Supported values are: - + // `quality/defect_blurry` - `quality/defect_noisy` - + // `quality/defect_dark` - `quality/defect_faint` - + // `quality/defect_text_too_small` - `quality/defect_document_cutoff` - + // `quality/defect_text_cutoff` - `quality/defect_glare` Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "Confidence") to @@ -57242,7 +57354,7 @@ type GoogleCloudDocumentaiV1DocumentPageLayout struct { // Confidence: Confidence of the current Layout within context of the // object this layout is for. e.g. confidence can be for a single token, - // a table, a visual element, etc. depending on context. Range [0, 1]. + // a table, a visual element, etc. depending on context. Range `[0, 1]`. Confidence float64 `json:"confidence,omitempty"` // Orientation: Detected orientation for the Layout. @@ -57894,7 +58006,7 @@ type GoogleCloudDocumentaiV1DocumentStyle struct { // Color: Text color. Color *GoogleTypeColor `json:"color,omitempty"` - // FontFamily: Font family such as "Arial", "Times New Roman". + // FontFamily: Font family such as `Arial`, `Times New Roman`. // https://www.w3schools.com/cssref/pr_font_font-family.asp FontFamily string `json:"fontFamily,omitempty"` @@ -58581,9 +58693,9 @@ type GoogleInternalAppsWaldoV1alphaDoNotDisturb struct { // OutOfOffice < Xh. CommittedUntil string `json:"committedUntil,omitempty"` - // CommittedUntilIsMixed: Whether the status of the user until - // committed_until has more than one status type (e.g. DoNotDisturb + - // InMeeting). + // CommittedUntilIsMixed: Whether the status of the user from this + // status's start to committed_until has more than one status type (e.g. + // DoNotDisturb + InMeeting). CommittedUntilIsMixed bool `json:"committedUntilIsMixed,omitempty"` // NextAvailable: The next time when the user will be available, i.e., @@ -58633,9 +58745,9 @@ type GoogleInternalAppsWaldoV1alphaInMeeting struct { // also http://shortn/_wXYXtZScgh). CommittedUntil string `json:"committedUntil,omitempty"` - // CommittedUntilIsMixed: Whether the status of the user until - // committed_until has more than one status type (e.g. InMeeting + - // DoNotDisturb). + // CommittedUntilIsMixed: Whether the status of the user from this + // status's start to committed_until has more than one status type (e.g. + // DoNotDisturb + InMeeting). CommittedUntilIsMixed bool `json:"committedUntilIsMixed,omitempty"` // EventSummary: The summary of the corresponding event in Calendar. @@ -58770,9 +58882,9 @@ type GoogleInternalAppsWaldoV1alphaOutOfOffice struct { // meetings or focus time following it. CommittedUntil string `json:"committedUntil,omitempty"` - // CommittedUntilIsMixed: Whether the status of the user until - // committed_until has more than one status type (e.g. DoNotDisturb + - // InMeeting). + // CommittedUntilIsMixed: Whether the status of the user from this + // status's start to committed_until has more than one status type (e.g. + // DoNotDisturb + InMeeting). CommittedUntilIsMixed bool `json:"committedUntilIsMixed,omitempty"` // EventSummary: The summary of the corresponding OOO block in Calendar. @@ -59064,7 +59176,8 @@ type GoogleInternalAppsWaldoV1alphaUserContext struct { // UpcomingOoo: Set if user has upcoming OOO. UpcomingOoo *GoogleInternalAppsWaldoV1alphaUpcomingOooContext `json:"upcomingOoo,omitempty"` - // WorkingElsewhere: Set if the user is working remotely. + // WorkingElsewhere: Set if the user has a working location. Not just + // elsewhere (legacy name). WorkingElsewhere *GoogleInternalAppsWaldoV1alphaWorkingElsewhereContext `json:"workingElsewhere,omitempty"` // ForceSendFields is a list of field names (e.g. "LocalTime") to @@ -59091,8 +59204,8 @@ func (s *GoogleInternalAppsWaldoV1alphaUserContext) MarshalJSON() ([]byte, error } // GoogleInternalAppsWaldoV1alphaUserLocation: Location of the user, -// which might be "home", for example, or another office building, as -// well as a custom location specified by the user. +// which might be "home", for example, or an office building, as well as +// a custom location specified by the user. type GoogleInternalAppsWaldoV1alphaUserLocation struct { // CustomLocation: Indicates the user is working from some other // location. @@ -59178,11 +59291,12 @@ func (s *GoogleInternalAppsWaldoV1alphaUserStatus) MarshalJSON() ([]byte, error) } // GoogleInternalAppsWaldoV1alphaWorkingElsewhereContext: The context -// indicating the user is working remotely (from home / from a different -// office). +// providing the User Location (not just Elsewhere). This is a legacy +// name from when it was only set for users working remotely, now it is +// also set when the user is working from the office. type GoogleInternalAppsWaldoV1alphaWorkingElsewhereContext struct { - // Location: The new location of the user. Might represent home / - // another building, or a random address on the map. + // Location: The new location of the user. Might represent home, office, + // or a custom address on the map. Location *GoogleInternalAppsWaldoV1alphaUserLocation `json:"location,omitempty"` // ForceSendFields is a list of field names (e.g. "Location") to @@ -65268,7 +65382,9 @@ type ImageRepositoryContentBasedVideoMetadata struct { // (names matching "video_*") are DEPRECATED. Please migrate to Golden7 // ("VideoFeatures.*"). For more context, see // go/golden7/migrating-from-golden6 and - // go/amarna-golden-feature-tracker. + // go/amarna-golden-feature-tracker. Signals popluated in Raffia + // cdoc.doc_videos are configured in + // cs/symbol:AMARNA_EXPORTED_GOLDEN7_FEATURES. FeatureSetData *DrishtiFeatureSetData `json:"featureSetData,omitempty"` // Golden7SoapboxSummary: Golden7 video-level people features. @@ -75072,6 +75188,9 @@ type KnowledgeAnswersIntentQueryIdentifier struct { // "TIMER" // "DEVICE" - An go/identifier-for-generalized-device generalized // device ID + // "DEVICE_SETTING" - An + // nlp_semantic_parsing.models.device.DeviceSetting that represents a + // single device setting. // "ROOM" - An assistant.context.RoomId aka // DeviceId.home_graph_device_id // "STRUCTURE" - An assistant.context.StructureId aka @@ -77535,6 +77654,10 @@ type KnowledgeAnswersSensitivityMyActivityPolicy struct { // "SHOW_REMINDER" // "UPDATE_REMINDER" // "DELETE_REMINDER" + // "SHOW_LIST" + // "MODIFY_LIST" + // "SHOW_NOTE" + // "MODIFY_NOTE" MyActivityRedactedAction string `json:"myActivityRedactedAction,omitempty"` // MyActivityRedactionKey: This field will be translated by footprints @@ -96911,6 +97034,8 @@ type PeoplestackFlexorgsProtoInternalExternal struct { // indexing go/ytcci Team contact: yt-comments-team@google.com // "YOUTUBE_COMMENTS_NEWEST_FIRST" - Youtube Comments: Newest First. // go/ytcci Team contact: yt-comments-team@google.com + // "YOUTUBE_COMMENTS_BACKEND" - Youtube Comments: Comments Backend. + // go/ytcci Team contact: yt-comments-team@google.com // "YOUTUBE_SUBSCRIPTIONS_FEEDS" - Youtube Comments: Subscription // notifications go/ytn-inbox-comment-decoration Team contact: // yt-notifications@google.com @@ -98303,7 +98428,7 @@ type PerDocData struct { // HostNsr: Site rank computed for host-level sitechunks. This value // encodes nsr, site_pr and new_nsr. See - // NsrUtil::ConvertNsrDataToHostNsr and go/nsr. + // quality_nsr::util::ConvertNsrDataToHostNsr and go/nsr. HostNsr int64 `json:"hostNsr,omitempty"` Imagedata *ImagePerDocData `json:"imagedata,omitempty"` @@ -98378,8 +98503,8 @@ type PerDocData struct { // NsrAnnotator for details. If sitechunk is longer than // --populate_nsr_sitechunk_max_length (default=100), it will not get // populated. This field might be compressed and needs to be decoded - // with NsrUtil::DecodeNsrSitechunk. See go/nsr-chunks for more details. - // This field contains only nontrivial primary chunks. + // with quality_nsr::util::DecodeNsrSitechunk. See go/nsr-chunks for + // more details. This field contains only nontrivial primary chunks. NsrSitechunk string `json:"nsrSitechunk,omitempty"` // NumUrls: Total number of urls encoded in the url section = # of @@ -107160,22 +107285,28 @@ func (s *QualityPreviewRanklabTitle) UnmarshalJSON(data []byte) error { // QualityPreviewSnippetBrainFeatures: Snippet brain scores. type QualityPreviewSnippetBrainFeatures struct { + // IsSnippetBrainBoldingTriggered: Is the bolding triggered. + IsSnippetBrainBoldingTriggered bool `json:"isSnippetBrainBoldingTriggered,omitempty"` + + // ModelScore: The score by SnippetBrain model. ModelScore float64 `json:"modelScore,omitempty"` - // ForceSendFields is a list of field names (e.g. "ModelScore") to - // unconditionally include in API requests. By default, fields with - // empty or default values are omitted from API requests. However, any - // non-pointer, non-interface field appearing in ForceSendFields will be - // sent to the server regardless of whether the field is empty or not. - // This may be used to include empty fields in Patch requests. + // ForceSendFields is a list of field names (e.g. + // "IsSnippetBrainBoldingTriggered") to unconditionally include in API + // requests. By default, fields with empty or default values are omitted + // from API requests. However, any non-pointer, non-interface field + // appearing in ForceSendFields will be sent to the server regardless of + // whether the field is empty or not. This may be used to include empty + // fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "ModelScore") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. + // "IsSnippetBrainBoldingTriggered") to include in API requests with the + // JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. NullFields []string `json:"-"` } @@ -112734,29 +112865,15 @@ func (s *RepositoryWebrefClusterProtoMidListRuleInstance) MarshalJSON() ([]byte, // For each entity B that has incoming links of type R This defines an // instance of this rule, with argument=B We create a Set S We make B a // child of S For each entity A that has a link R to B, we make A a -// child of S +// child of S Next available tag: 6 type RepositoryWebrefClusterProtoRelationRule struct { - // IsCollapsible: If true, cluster global names and links will be - // extracted from the target of the property. If false, all members of - // the cluster will be considered sources. - IsCollapsible bool `json:"isCollapsible,omitempty"` - - // IsCvtRule: Whether the target of the relation is an intermediate - // (CVT) node in KG: - if it is not: generate external_id for the - // cluster - if it is: - CVT should not be /common/topic otherwise rule - // will not be created - cluster will reuse CVT mid as its own - IsCvtRule bool `json:"isCvtRule,omitempty"` - // Relation: The topic_property_name for the link that defines the // relation, e.g. "/tv/tv_series_episode/series". Can start with a "!" // to indicate that this link is reversed during extraction and we want // the reversed case. Required. Relation string `json:"relation,omitempty"` - // SequenceId: No longer set. - SequenceId int64 `json:"sequenceId,omitempty"` - - // ForceSendFields is a list of field names (e.g. "IsCollapsible") to + // ForceSendFields is a list of field names (e.g. "Relation") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -112764,10 +112881,10 @@ type RepositoryWebrefClusterProtoRelationRule struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "IsCollapsible") to include - // in API requests with the JSON null value. By default, fields with - // empty values are omitted from API requests. However, any field with - // an empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "Relation") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -115455,14 +115572,28 @@ func (s *RepositoryWebrefHumanRatings) MarshalJSON() ([]byte, error) { // with the index of the particular query inside // ImageData::image_data_navboost. type RepositoryWebrefImageQueryIndices struct { - // ImageIndex: / The index of the source image in - // CompositeDoc::doc_images. + // CanonicalDocid: The (canonical) image docid of the ImageData this + // image query is part of. Useful for identifying the ImageData even + // after doc_images are updated in between Webref annotation runs. Use + // docid only when canonical_docid == 0. + CanonicalDocid uint64 `json:"canonicalDocid,omitempty,string"` + + Docid uint64 `json:"docid,omitempty,string"` + + // ImageIndex: WARNING: The doc_images in docjoins are subject to + // updates including non-deterministic reordering of doc_images and + // their image_nb_data extensions. This means that without re-running + // WebrefAnnotator one cannot rely on the accuracy or even consistency + // of either image_index or query_index when parsing a cdoc from + // docjoins. In those situations one ought to rely on canonical_docid + // (or docid when canonical_docid is absent viz. 0). The index of the + // source image in CompositeDoc::doc_images. ImageIndex int64 `json:"imageIndex,omitempty"` - // QueryIndex: / Queries index in ImageData::image_data_navboost. + // QueryIndex: Queries index in ImageData::image_data_navboost. QueryIndex *RepositoryWebrefQueryIndices `json:"queryIndex,omitempty"` - // ForceSendFields is a list of field names (e.g. "ImageIndex") to + // ForceSendFields is a list of field names (e.g. "CanonicalDocid") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -115470,12 +115601,13 @@ type RepositoryWebrefImageQueryIndices struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "ImageIndex") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "CanonicalDocid") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -123146,7 +123278,7 @@ func (s *ResearchScienceSearchOrganization) MarshalJSON() ([]byte, error) { } // ResearchScienceSearchReconciledMetadata: A proto for storing inferred -// and reconciled metadata for Science Search. Next available tag: 69 +// and reconciled metadata for Science Search. Next available tag: 70 type ResearchScienceSearchReconciledMetadata struct { // AlternateName: Alternate names and acronyms for the dataset. AlternateName []string `json:"alternateName,omitempty"` @@ -123282,6 +123414,10 @@ type ResearchScienceSearchReconciledMetadata struct { // http://schema.org/isBasedOn IsBasedOn []string `json:"isBasedOn,omitempty"` + // IsInferred: Indicates whether the metadata was inferred using an ML + // model rather than from the schema.org fields. + IsInferred bool `json:"isInferred,omitempty"` + // Keyword: Keywords describing the dataset. Keyword []string `json:"keyword,omitempty"` @@ -130039,8 +130175,7 @@ type SocialGraphApiProtoRecurrence struct { RecurrenceEndDate *GoogleTypeDateTime `json:"recurrenceEndDate,omitempty"` // RecurrenceStart: The start of the recurrence can be represented as a - // DateTime. This is ignored for a SingleRecurrence and - // YearlyRecurrence. + // DateTime. This is ignored for a SingleRecurrence. RecurrenceStart *GoogleTypeDateTime `json:"recurrenceStart,omitempty"` // RepeatCount: Will repeat only a finite number of times. This is the @@ -131816,11 +131951,17 @@ type StorageGraphBfgPolicyMetadata struct { // consulting ke-data-governance@. LegalRemovalRegions []*KeGovernanceTypedRegions `json:"legalRemovalRegions,omitempty"` + LmsClientIdsAllowed []string `json:"lmsClientIdsAllowed,omitempty"` + // LmsIsEditorial: The following attributes with `lms_` prefix are for // supporting LMS restrictions. See go/lms-online-restrictions for // details. LmsIsEditorial bool `json:"lmsIsEditorial,omitempty"` + // LmsModificationsAllowed: Int values corresponds to the values of + // image_repository.licensed.api.restrictions.Modification enum. + LmsModificationsAllowed googleapi.Int64s `json:"lmsModificationsAllowed,omitempty"` + LmsRegionsAllowed *KeGovernanceTypedRegions `json:"lmsRegionsAllowed,omitempty"` LmsRegionsDisallowed *KeGovernanceTypedRegions `json:"lmsRegionsDisallowed,omitempty"` @@ -131855,6 +131996,11 @@ type StorageGraphBfgPolicyMetadata struct { // Evaluate(..., vertical_metadata_3..) …) PolicySourceType string `json:"policySourceType,omitempty"` + // UmpPolicyMetadata: Policy metadata fields for UMP data. Only expected + // to be used by UMP providers -- please consult ke-data-governance@ + // before populating this field. + UmpPolicyMetadata *StorageGraphBfgUmpPolicyMetadata `json:"umpPolicyMetadata,omitempty"` + // ForceSendFields is a list of field names (e.g. // "AvailabilityEndTimestamp") to unconditionally include in API // requests. By default, fields with empty or default values are omitted @@ -132631,6 +132777,46 @@ func (s *StorageGraphBfgTripleProvenance) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// StorageGraphBfgUmpPolicyMetadata: Metadata fields for UMP. A piece of +// data satisfies UMP policy if: (data access region is in the +// `regions_allowed` list) AND (data access time >= +// availability_start_timestamp) AND (data access time < +// availability_end_timestamp) +type StorageGraphBfgUmpPolicyMetadata struct { + // AvailabilityEnds: Timestamp after which data with this policy cannot + // be used. + AvailabilityEnds string `json:"availabilityEnds,omitempty"` + + // AvailabilityStarts: Timestamp before which data with this policy + // cannot be used. + AvailabilityStarts string `json:"availabilityStarts,omitempty"` + + RegionsAllowed *KeGovernanceTypedRegions `json:"regionsAllowed,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AvailabilityEnds") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AvailabilityEnds") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *StorageGraphBfgUmpPolicyMetadata) MarshalJSON() ([]byte, error) { + type NoMethod StorageGraphBfgUmpPolicyMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // SuperrootPodcastsRecommendationsPodcastRecsFeatures: LINT.IfChange // Next ID: 101 type SuperrootPodcastsRecommendationsPodcastRecsFeatures struct { @@ -136631,6 +136817,12 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "COLLAPSED_DEV_SUCCESS_CLUSTER_EVENT_LEVEL" // "BROAD_INTENT_GAMES_TIMESPENT_EVENT_LEVEL" - TestCode for Broad // Intent Games TimeSpent Event Level. + // + // "PLAY_STORE_IAP_SALES_MINI_DETAILS_PAGE_EAP_PARTNER_APPS_EVENT_LEVEL" + // - Test codes for the feature and each early-access partners for the + // Play Store IAP sales project at event-level. + // go/play-store-iap-sales-dd + // "GEARHEAD_ATTEMPT_USB_RECOVERY" - USB connection recovery. // "EVENT_LEVEL_TEST_CODE_LIMIT" // "RESERVED_4" // "RESERVED_5" @@ -137799,6 +137991,14 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "SHOULD_SEE_TOP_NOW_CONTENT_PRE_REGISTRATION_GH_K2" // "SHOULD_SEE_TOP_NOW_CONTENT_PRE_REGISTRATION_GH_K3_4" // "SHOULD_SEE_TOP_NOW_CONTENT_PRE_REGISTRATION_GH_GTE_K5" + // "SHOULD_SEE_TOP_NOW_CONTENT_MERCH_NEW_RELEASE_AH" - Merch featuring + // Now! content on Top of Apps Home. + // "SHOULD_SEE_TOP_NOW_CONTENT_MERCH_PRE_REGISTRATION_AH" + // "SHOULD_SEE_TOP_NOW_CONTENT_MERCH_LIVE_OPS_AH" + // "SHOULD_SEE_TOP_NOW_CONTENT_MERCH_NEW_RELEASE_GH" - Merch featuring + // Now! content on Top of Games Home. + // "SHOULD_SEE_TOP_NOW_CONTENT_MERCH_PRE_REGISTRATION_GH" + // "SHOULD_SEE_TOP_NOW_CONTENT_MERCH_LIVE_OPS_GH" // "LOYALTY_STAMP_CARD_IN_PURCHASE_FLOW_SESSION_LEVEL" - Session level // test code for Quest Platform Loyalty Stamp Card in Purchase flow. // "WALLET_WELLBEING_ALERT_SESSION_LEVEL" - TestCode for slicing the @@ -137820,6 +138020,10 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // level test code for merch run planogram experiment // "BROAD_INTENT_GAMES_TIMESPENT_SESSION_LEVEL" - TestCode for Broad // Intent Games TimeSpent Session Level. + // "ELIGIBLE_FOR_MANAGE_IN_APP_DETAILS_SESSION_LEVEL" - Session level + // test code for eligible users for manage in-app details + // "SEE_REENGAGEMENT_ACC_SESSION_LEVEL" - Session level test code for + // users that see reengagement ACC // "SESSION_LEVEL_TEST_CODE_LIMIT" // "SHOULD_SEE_LIVE_OP_CLUSTER_USER_LEVEL" - User should see the live // op cluster. @@ -138324,6 +138528,14 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "LOYALTY_PURCHASE_QUEST_GAMES_HOME_USER_LEVEL" - User level test // code for Loyalty Purchase Quest, for tracking users who are eligible // for the LPQ in Games Home. + // "GROWTH_CORPUS_WIDE_STAMP_CARD_GAMES_HOME_SERVER_USER_LEVEL" - User + // level test code for Corpus Wide Growth Stamp Card, for tracking users + // who are eligible for the GSC in Games Home. This test code is logged + // on server side. + // "LOYALTY_PURCHASE_QUEST_GAMES_HOME_SERVER_USER_LEVEL" - User level + // test code for Loyalty Purchase Quest, for tracking users who are + // eligible for the LPQ in Games Home. This test code is logged on + // server side. // "SUBS_HIGH_CHURN_FOP_OPTIONS_AVAILABLE_USER_LEVEL" - User level // test code that indicates that at least one high churn fop options is // available for user when visiting add fop page for subscription @@ -138448,6 +138660,19 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "POSTPERIOD_PAGE_VISIT_28D_FREQUENCY_26_USER_LEVEL" // "POSTPERIOD_PAGE_VISIT_28D_FREQUENCY_27_USER_LEVEL" // "POSTPERIOD_PAGE_VISIT_28D_FREQUENCY_28_USER_LEVEL" + // "LOYALTY_STAMP_CARD_IN_PURCHASE_FLOW_SERVER_USER_LEVEL" - Test code + // for Loyalty Stamp Card, for tracking users who made eligible + // purchases and are eligible for the LSC in purchase flow. + // "ELIGIBLE_FOR_MANAGE_IN_APP_DETAILS_USER_LEVEL" - User level test + // code for eligible users for manage in-app details + // "PLAY_ONBOARDING_QUEST_GAMES_HOME_USER_LEVEL" - User level test + // code for Play Onboarding quest, tracking users who are eligible for + // Play Onboarding quest in Games Home + // "SERVED_GPP_ONBOARDING_QUEST_USER_LEVEL" - User level test code for + // users who have been served GPP onboarding quest. + // "YOUTUBE_OPTED_IN_NOTIFICATION_DRIVEN_PREFETCH_USER_LEVEL" - User + // level test code for YouTube commerce, tracking users who opted in + // notification driven prefetch. // "USER_LEVEL_TEST_CODE_LIMIT" TestCode []string `json:"testCode,omitempty"` @@ -138843,9 +139068,9 @@ type VideoAssetsVenomTransition struct { // for the video to be playable. // "OBJECTIVE_INGREDIENT_VALIDATED" - The validation asset is ready. // "OBJECTIVE_PRIMARY_ASSETS_DONE" - The most important transcodes and - // other assets have been completed. Roughly equlvalent to - // GFLAG_FULLY_PROCESSED, limited to UGC and Reels. As of 6/2019, - // resolutions up to 4K are represented. + // other assets have been completed. Drives "is_fully_processed" in + // VAPI. Limited to UGC and Reels. Also used to atomically publish all + // latency-sensitive transcodes after an edit. // "OBJECTIVE_PREVIEW_DONE" - A representation for the video in // advance of all completed assets is ready. // "OBJECTIVE_TRANSMUXED_DONE" - The transmuxed transcode for the @@ -146801,6 +147026,7 @@ type VideoThumbnailsThumbnailScore struct { // "TYPE_MACRO_MARKERS" // "TYPE_THUMB_QUERY_EMBEDDING" // "TYPE_COLOR_SAMPLING" + // "TYPE_ENGAGINESS" Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "Checksum") to @@ -153751,6 +153977,8 @@ type YoutubeCommentsClusteringMiniStanza struct { // "GOOGLE_LIST_RECS" - List Recs Service Clients // "GOOGLE_MEDIA_ACTIONS" - Media Actions Service Clients // "MEDIA_CONNECT_FRONTEND" - YouTube Media Connect Frontend (YMCFE) + // "GOOGLE_TV" - Google TV clients New Google TV devices + // (go/gtv-deck). This is added to support go/gtv-ads. CreationDevice string `json:"creationDevice,omitempty"` // CreationTimeInSeconds: The time when the comment is created. @@ -154775,45 +155003,47 @@ type YoutubeDiscoveryLegosLegosSemanticRelationshipContext struct { // (go/shoptube). // "VSU_SHOPPING_PRODUCT" - This context indicates that a Legos // annotation was output by VSU. - // "GEO_TYPE_RESTAURANT_OR_CAFE" - Context used by Geo that indicates - // if an entity is a restaurant or cafe. - // "GEO_TYPE_ESTABLISHMENT_POI" - Context used by Geo that indicates - // if an entity is an establishment point of interest. - // "GEO_TYPES_COLLECTION_TRAVEL_AND_TOURISM" - Context used by Geo to - // indicate destination which is included in the travel vertical, - // corresponding to kg_types for both travel and tourism. - // "GEO_TYPE_ENTERTAINMENT_AND_RECREATION" - Context used by Geo that - // indicates an entity is an entertainment and recreation destination. - // "GEO_TYPES_COLLECTION_BUSINESSES" - Context used by Geo that - // indicates an entity is part of business vertical. Includes - // /geo/type/services, /geo/type/business_related, and - // /geo/type/vehicle_dealers. - // "GEO_TYPES_COLLECTION_POTENTIALLY_SENSITIVE" - Context used by Geo - // to filter out destinations which might be sensitive to users from - // showing up in the structured description UI. Includes - // /geo/type/potentially_sensitive_entity, /geo/type/government, and - // /geo/type/religious_institution. + // "GEO_TYPE_RESTAURANT_OR_CAFE" - Deprecated. See b/244583433. + // Instead, consider relying on GEO_TYPE and looking up individual KG + // types in YTKS. + // "GEO_TYPE_ESTABLISHMENT_POI" - Deprecated. See b/244583433. + // Instead, consider relying on GEO_TYPE and looking up individual KG + // types in YTKS. + // "GEO_TYPES_COLLECTION_TRAVEL_AND_TOURISM" - Deprecated. See + // b/244583433. Instead, consider relying on GEO_TYPE and looking up + // individual KG types in YTKS. + // "GEO_TYPE_ENTERTAINMENT_AND_RECREATION" - Deprecated. See + // b/244583433. Instead, consider relying on GEO_TYPE and looking up + // individual KG types in YTKS. + // "GEO_TYPES_COLLECTION_BUSINESSES" - Deprecated. See b/244583433. + // Instead, consider relying on GEO_TYPE and looking up individual KG + // types in YTKS. + // "GEO_TYPES_COLLECTION_POTENTIALLY_SENSITIVE" - Deprecated. See + // b/244583433. Instead, consider relying on GEO_TYPE and looking up + // individual KG types in YTKS. // "GEO_TYPE" - Context used by Geo that indicates if an entity is a // geo feature. - // "ADDED_DURING_GEO_ENTITIES_PROMOTION" - Assigned only to geo - // entities that are added during postprocessing due to their high - // webref topicalities and confidences. - // "GEO_TYPE_PUBLIC_SPACES_AND_MONUMENTS" - Assigned to geo entities - // of type public spaces and monuments. - // "GEO_TYPE_COMPOUND_BUILDING" - Assigned to geo entities of type - // compound building. - // "GEO_TYPE_POLITICAL" - Assigned to geo entities of type political. - // "GEO_TYPES_COLLECTION_SMALL_POLITICALS" - Assigned to geo entities - // of type political that represent areas smaller than a city, such as - // sublocalities and neighborhoods. - // "GEO_TYPES_COLLECTION_CITY_LEVEL_POLITICALS" - Assigned to geo - // entities of type political that could represent a city, such as - // localities and small administrative areas. - // "GEO_TYPES_COLLECTION_LARGE_POLITICALS" - Assigned to geo entities - // of type political that are larger than a city, such as large - // administrative areas and countries. - // "GEO_TYPES_COLLECTION_NATURAL_FEATURES" - Assigned to geo entities - // of type natural, except for continents. + // "ADDED_DURING_GEO_ENTITIES_PROMOTION" - Deprecated. See + // b/244583433. Instead, consider relying on GEO_TYPE and looking up + // individual KG types in YTKS. + // "GEO_TYPE_COMPOUND_BUILDING" - Deprecated. See b/244583433. + // Instead, consider relying on GEO_TYPE and looking up individual KG + // types in YTKS. + // "GEO_TYPE_POLITICAL" - Deprecated. See b/244583433. Instead, + // consider relying on GEO_TYPE and looking up individual KG types in + // YTKS. + // "GEO_TYPES_COLLECTION_SMALL_POLITICALS" - Deprecated. See + // b/244583433. Instead, consider relying on GEO_TYPE and looking up + // individual KG types in YTKS. + // "GEO_TYPES_COLLECTION_CITY_LEVEL_POLITICALS" - Deprecated. See + // b/244583433. Instead, consider relying on GEO_TYPE and looking up + // individual KG types in YTKS. + // "GEO_TYPES_COLLECTION_LARGE_POLITICALS" - Deprecated. See + // b/244583433. Instead, consider relying on GEO_TYPE and looking up + // individual KG types in YTKS. + // "GEO_TYPES_COLLECTION_NATURAL_FEATURES" - Deprecated. See + // b/244583433. Instead, consider relying on GEO_TYPE and looking up + // individual KG types in YTKS. // "DENORM_LOCATION_TO_CONTAINING_COUNTRY" - Assigned to an entity // that has been denormalized from an entity which it geographically // contains according to the containing entity's type. diff --git a/datamigration/v1/datamigration-api.json b/datamigration/v1/datamigration-api.json index e964ea9088f..a1f5218f830 100644 --- a/datamigration/v1/datamigration-api.json +++ b/datamigration/v1/datamigration-api.json @@ -1049,7 +1049,7 @@ } } }, - "revision": "20221018", + "revision": "20221108", "rootUrl": "https://datamigration.googleapis.com/", "schemas": { "AlloyDbConnectionProfile": { @@ -1172,6 +1172,11 @@ "description": "Specifies required connection parameters, and, optionally, the parameters required to create a Cloud SQL destination database instance.", "id": "CloudSqlConnectionProfile", "properties": { + "additionalPublicIp": { + "description": "Output only. The Cloud SQL database instance's additional (outgoing) public IP. Used when the Cloud SQL database availability type is REGIONAL (i.e. multiple zones / highly available).", + "readOnly": true, + "type": "string" + }, "cloudSqlId": { "description": "Output only. The Cloud SQL instance ID that this connection profile is associated with.", "readOnly": true, @@ -1216,6 +1221,20 @@ "description": "[default: ON] If you enable this setting, Cloud SQL checks your available storage every 30 seconds. If the available storage falls below a threshold size, Cloud SQL automatically adds additional storage capacity. If the available storage repeatedly falls below the threshold size, Cloud SQL continues to add storage until it reaches the maximum of 30 TB.", "type": "boolean" }, + "availabilityType": { + "description": "Optional. Availability type. Potential values: * `ZONAL`: The instance serves data from only one zone. Outages in that zone affect data availability. * `REGIONAL`: The instance can serve data from more than one zone in a region (it is highly available).", + "enum": [ + "SQL_AVAILABILITY_TYPE_UNSPECIFIED", + "ZONAL", + "REGIONAL" + ], + "enumDescriptions": [ + "This is an unknown Availability type.", + "Zonal availablility instance.", + "Regional availability instance." + ], + "type": "string" + }, "cmekKeyName": { "description": "The KMS key name used for the csql instance.", "type": "string" @@ -1291,6 +1310,10 @@ "readOnly": true, "type": "boolean" }, + "secondaryZone": { + "description": "Optional. The Google Cloud Platform zone where the failover Cloud SQL database instance is located. Used when the Cloud SQL database availability type is REGIONAL (i.e. multiple zones / highly available).", + "type": "string" + }, "sourceId": { "description": "The Database Migration Service source connection profile ID, in the format: `projects/my_project_name/locations/us-central1/connectionProfiles/connection_profile_ID`", "type": "string" diff --git a/datamigration/v1/datamigration-gen.go b/datamigration/v1/datamigration-gen.go index 383fa9367c3..46d64a5f0ba 100644 --- a/datamigration/v1/datamigration-gen.go +++ b/datamigration/v1/datamigration-gen.go @@ -455,6 +455,12 @@ type CancelOperationRequest struct { // and, optionally, the parameters required to create a Cloud SQL // destination database instance. type CloudSqlConnectionProfile struct { + // AdditionalPublicIp: Output only. The Cloud SQL database instance's + // additional (outgoing) public IP. Used when the Cloud SQL database + // availability type is REGIONAL (i.e. multiple zones / highly + // available). + AdditionalPublicIp string `json:"additionalPublicIp,omitempty"` + // CloudSqlId: Output only. The Cloud SQL instance ID that this // connection profile is associated with. CloudSqlId string `json:"cloudSqlId,omitempty"` @@ -469,20 +475,21 @@ type CloudSqlConnectionProfile struct { // SQL database. Settings *CloudSqlSettings `json:"settings,omitempty"` - // ForceSendFields is a list of field names (e.g. "CloudSqlId") to - // unconditionally include in API requests. By default, fields with + // ForceSendFields is a list of field names (e.g. "AdditionalPublicIp") + // to unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be // sent to the server regardless of whether the field is empty or not. // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "CloudSqlId") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "AdditionalPublicIp") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -515,6 +522,18 @@ type CloudSqlSettings struct { // until it reaches the maximum of 30 TB. AutoStorageIncrease bool `json:"autoStorageIncrease,omitempty"` + // AvailabilityType: Optional. Availability type. Potential values: * + // `ZONAL`: The instance serves data from only one zone. Outages in that + // zone affect data availability. * `REGIONAL`: The instance can serve + // data from more than one zone in a region (it is highly available). + // + // Possible values: + // "SQL_AVAILABILITY_TYPE_UNSPECIFIED" - This is an unknown + // Availability type. + // "ZONAL" - Zonal availablility instance. + // "REGIONAL" - Regional availability instance. + AvailabilityType string `json:"availabilityType,omitempty"` + // CmekKeyName: The KMS key name used for the csql instance. CmekKeyName string `json:"cmekKeyName,omitempty"` @@ -565,6 +584,12 @@ type CloudSqlSettings struct { // root password is stored. RootPasswordSet bool `json:"rootPasswordSet,omitempty"` + // SecondaryZone: Optional. The Google Cloud Platform zone where the + // failover Cloud SQL database instance is located. Used when the Cloud + // SQL database availability type is REGIONAL (i.e. multiple zones / + // highly available). + SecondaryZone string `json:"secondaryZone,omitempty"` + // SourceId: The Database Migration Service source connection profile // ID, in the format: // `projects/my_project_name/locations/us-central1/connectionProfiles/con diff --git a/datapipelines/v1/datapipelines-api.json b/datapipelines/v1/datapipelines-api.json index ed9f082f334..919052caa24 100644 --- a/datapipelines/v1/datapipelines-api.json +++ b/datapipelines/v1/datapipelines-api.json @@ -109,6 +109,34 @@ "resources": { "locations": { "methods": { + "computeSchema": { + "description": "Computes the schema for the transform. Computation from `raw_schema` will always occur if it is set. This requires that the transform supports that encoding. If no raw schema is provided and if the transform is for an IO, then this will attempt to connect to the resource using the details provided in `config` and infer the schema from that. If the transform is not an IO, is a sink that doesn't exist yet, or is a sink with no schema requirement, then this will fall back to basing the schema off the one provided in `input_schemas`. The computed schema will be validated.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:computeSchema", + "httpMethod": "POST", + "id": "datapipelines.projects.locations.computeSchema", + "parameterOrder": [ + "location" + ], + "parameters": { + "location": { + "description": "Required. The full location formatted as \"projects/{your-project}/locations/{google-cloud-region}\". If attempting to infer the schema from an existing Google Cloud resource, the default Data Pipelines service account for this project will be used in making requests for the resource. If the region given for \"{google-cloud-region}\" is different than the region where the resource is stored, then the data will be transferred to and processed in the region specified here, but it will not be persistently stored in this region.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+location}:computeSchema", + "request": { + "$ref": "GoogleCloudDatapipelinesV1ComputeSchemaRequest" + }, + "response": { + "$ref": "GoogleCloudDatapipelinesV1Schema" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "listPipelines": { "description": "Lists pipelines. Returns a \"FORBIDDEN\" error if the caller doesn't have permission to access it.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", @@ -365,15 +393,198 @@ } } } + }, + "transformDescriptions": { + "methods": { + "batchGet": { + "description": "Gets transform descriptions in a batch, associated with a list of provided uniform resource names.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transformDescriptions:batchGet", + "httpMethod": "GET", + "id": "datapipelines.projects.locations.transformDescriptions.batchGet", + "parameterOrder": [ + "parent" + ], + "parameters": { + "names": { + "description": "Optional. The names of the transform descriptions being retrieved, formatted as \"projects/{project}/locations/{location}/transformdescriptions/{transform_description}\". If no name is provided, all of the transform descriptions will be returned.", + "location": "query", + "repeated": true, + "type": "string" + }, + "parent": { + "description": "Required. The project and location shared by all transform descriptions being retrieved, formatted as \"projects/{project}/locations/{location}\".", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/transformDescriptions:batchGet", + "response": { + "$ref": "GoogleCloudDatapipelinesV1BatchGetTransformDescriptionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the transform description associated with the provided uniform resource name.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transformDescriptions/{transformDescriptionsId}", + "httpMethod": "GET", + "id": "datapipelines.projects.locations.transformDescriptions.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The full name formatted as \"projects/{your-project}/locations/{google-cloud-region}/transformdescriptions/{uniform-resource-name}\".", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/transformDescriptions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudDatapipelinesV1TransformDescription" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } } } } } }, - "revision": "20220319", + "revision": "20221106", "rootUrl": "https://datapipelines.googleapis.com/", "schemas": { + "GoogleCloudDatapipelinesV1ArrayValue": { + "description": "Represents an array of values. The elements can be of any type.", + "id": "GoogleCloudDatapipelinesV1ArrayValue", + "properties": { + "elements": { + "description": "The elements of the array.", + "items": { + "$ref": "GoogleCloudDatapipelinesV1FieldValue" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDatapipelinesV1AtomicValue": { + "description": "Represents a non-dividable value.", + "id": "GoogleCloudDatapipelinesV1AtomicValue", + "properties": { + "booleanValue": { + "description": "A boolean value.", + "type": "boolean" + }, + "byteValue": { + "description": "An 8-bit signed value.", + "format": "int32", + "type": "integer" + }, + "bytesValue": { + "description": "An array of raw bytes.", + "format": "byte", + "type": "string" + }, + "datetimeValue": { + "$ref": "GoogleTypeDateTime", + "description": "A datetime value." + }, + "decimalValue": { + "$ref": "GoogleTypeDecimal", + "description": "A large decimal value, equivalent to Java BigDecimal." + }, + "doubleValue": { + "description": "A 64-bit floating point value.", + "format": "double", + "type": "number" + }, + "floatValue": { + "description": "A 32-bit floating point value.", + "format": "float", + "type": "number" + }, + "int16Value": { + "description": "A 16-bit signed value.", + "format": "int32", + "type": "integer" + }, + "int32Value": { + "description": "A 32-bit signed value.", + "format": "int32", + "type": "integer" + }, + "int64Value": { + "description": "A 64-bit signed value.", + "format": "int64", + "type": "string" + }, + "stringValue": { + "description": "A string value.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDatapipelinesV1BatchGetTransformDescriptionsResponse": { + "description": "Response message for BatchGetTransformDescriptions", + "id": "GoogleCloudDatapipelinesV1BatchGetTransformDescriptionsResponse", + "properties": { + "transformDescriptions": { + "description": "List of requested transform descriptions.", + "items": { + "$ref": "GoogleCloudDatapipelinesV1TransformDescription" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDatapipelinesV1ComputeSchemaRequest": { + "description": "Request message for ComputeSchema", + "id": "GoogleCloudDatapipelinesV1ComputeSchemaRequest", + "properties": { + "config": { + "$ref": "GoogleCloudDatapipelinesV1ConfiguredTransform", + "description": "Required. The configuration for the transform. If this is not a source, then each input with its schema must be set. It is not required to have any outputs set." + }, + "inputSchemas": { + "description": "Optional. In relation to the full pipeline graph, the schemas of the transforms that are used as inputs to the one for `config`. If `config` represents a transform for reading from some resource, then this should be empty. For all other transforms, at least one value must be provided.", + "items": { + "$ref": "GoogleCloudDatapipelinesV1Schema" + }, + "type": "array" + }, + "rawSchema": { + "$ref": "GoogleCloudDatapipelinesV1RawSchemaInfo", + "description": "Optional. If set, this will use the provided raw schema to compute the schema rather than connecting to any resources. Validation will still occur to make sure it is compatible with all input schemas. If the transform is an IO, the IO must support that schema type." + } + }, + "type": "object" + }, + "GoogleCloudDatapipelinesV1ConfiguredTransform": { + "description": "A fully configured transform that can be validated.", + "id": "GoogleCloudDatapipelinesV1ConfiguredTransform", + "properties": { + "config": { + "$ref": "GoogleCloudDatapipelinesV1Row", + "description": "Configuration values provided. These must match the schema provided in the row's schema." + }, + "uniformResourceName": { + "description": "Unique resource name of the transform. This should be the same as the equivalent `TransformDescription` value.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDatapipelinesV1DataflowJobDetails": { "description": "Pipeline job details specific to the Dataflow API. This is encapsulated here to allow for more executors to store their specific details separately.", "id": "GoogleCloudDatapipelinesV1DataflowJobDetails", @@ -400,6 +611,148 @@ }, "type": "object" }, + "GoogleCloudDatapipelinesV1EnumerationValue": { + "description": "Represents a selected value from an EnumerationType.", + "id": "GoogleCloudDatapipelinesV1EnumerationValue", + "properties": { + "name": { + "description": "Name of the enum option.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDatapipelinesV1Field": { + "description": "Info for a single field in the schema.", + "id": "GoogleCloudDatapipelinesV1Field", + "properties": { + "name": { + "description": "Name of the field.", + "type": "string" + }, + "type": { + "$ref": "GoogleCloudDatapipelinesV1FieldType", + "description": "Type info for the field." + } + }, + "type": "object" + }, + "GoogleCloudDatapipelinesV1FieldType": { + "description": "Type info about a field.", + "id": "GoogleCloudDatapipelinesV1FieldType", + "properties": { + "collectionElementType": { + "$ref": "GoogleCloudDatapipelinesV1FieldType", + "description": "If `type` is an array or iterable, this is the type contained in that array or iterable." + }, + "logicalType": { + "$ref": "GoogleCloudDatapipelinesV1LogicalType", + "description": "If `type` is a logical type, this is the info for the specific logical type." + }, + "mapType": { + "$ref": "GoogleCloudDatapipelinesV1MapType", + "description": "If `type` is a map, this is the key and value types for that map." + }, + "nullable": { + "description": "Whether or not this field is nullable.", + "type": "boolean" + }, + "rowSchema": { + "$ref": "GoogleCloudDatapipelinesV1Schema", + "description": "If `type` is a row, this is the schema of that row." + }, + "type": { + "description": "Specific type of the field. For non-atomic types, the corresponding type info for that non-atomic must be set.", + "enum": [ + "TYPE_NAME_UNSPECIFIED", + "TYPE_NAME_BYTE", + "TYPE_NAME_INT16", + "TYPE_NAME_INT32", + "TYPE_NAME_INT64", + "TYPE_NAME_DECIMAL", + "TYPE_NAME_FLOAT", + "TYPE_NAME_DOUBLE", + "TYPE_NAME_STRING", + "TYPE_NAME_DATETIME", + "TYPE_NAME_BOOLEAN", + "TYPE_NAME_BYTES", + "TYPE_NAME_ARRAY", + "TYPE_NAME_ITERABLE", + "TYPE_NAME_MAP", + "TYPE_NAME_ROW", + "TYPE_NAME_LOGICAL_TYPE" + ], + "enumDescriptions": [ + "Type name is not set (generally an error)", + "8-bit signed integer", + "16-bit signed integer", + "32-bit signed integer", + "64-bit signed integer", + "Large decimal type (equivalent to Java BigDecimal)", + "32-bit floating point integer", + "64-bit floating point integer", + "String", + "Datetime", + "Bool", + "Convenience for an ARRAY of BYTE values", + "Array of some other values.", + "Iterable of some other values.", + "Key/Value mapping between values.", + "Struct that follows a particular schema", + "Beam logical type" + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDatapipelinesV1FieldValue": { + "description": "A single value in a row. The value set must correspond to the correct type from the row's schema.", + "id": "GoogleCloudDatapipelinesV1FieldValue", + "properties": { + "arrayValue": { + "$ref": "GoogleCloudDatapipelinesV1ArrayValue", + "description": "The array value of this field. Corresponds to TYPE_NAME_ARRAY in the schema." + }, + "atomicValue": { + "$ref": "GoogleCloudDatapipelinesV1AtomicValue", + "description": "The atomic value of this field. Must correspond to the correct atomic type in the schema." + }, + "enumValue": { + "$ref": "GoogleCloudDatapipelinesV1EnumerationValue", + "description": "The enum value of this field. Corresponds to TYPE_NAME_LOGICAL_TYPE in the schema if that logical type represents an `EnumerationType` type." + }, + "fixedBytesValue": { + "$ref": "GoogleCloudDatapipelinesV1FixedBytesValue", + "description": "The fixed-length byte collection of this field. Corresponds to TYPE_NAME_LOGICAL_TYPE in the schema if that logical type represents a `FixedBytes` type." + }, + "iterableValue": { + "$ref": "GoogleCloudDatapipelinesV1IterableValue", + "description": "The iterable value of this field. Corresponds to TYPE_NAME_ITERABLE in the schema." + }, + "mapValue": { + "$ref": "GoogleCloudDatapipelinesV1MapValue", + "description": "The map value of this field. Corresponds to TYPE_NAME_MAP in the schema." + }, + "rowValue": { + "$ref": "GoogleCloudDatapipelinesV1Row", + "description": "The row value of this field. Corresponds to TYPE_NAME_ROW in the schema. This row also holds to its own schema." + } + }, + "type": "object" + }, + "GoogleCloudDatapipelinesV1FixedBytesValue": { + "description": "Represents a collection of bytes whose size is the same as the associated FixedBytes size value.", + "id": "GoogleCloudDatapipelinesV1FixedBytesValue", + "properties": { + "value": { + "description": "The raw bytes. It must be exactly the size specified in the schema.", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDatapipelinesV1FlexTemplateRuntimeEnvironment": { "description": "The environment values to be set at runtime for a Flex Template.", "id": "GoogleCloudDatapipelinesV1FlexTemplateRuntimeEnvironment", @@ -499,6 +852,20 @@ }, "type": "object" }, + "GoogleCloudDatapipelinesV1IterableValue": { + "description": "Represents an iterable of values. The elements can be of any type.", + "id": "GoogleCloudDatapipelinesV1IterableValue", + "properties": { + "elements": { + "description": "The elements of the iterable.", + "items": { + "$ref": "GoogleCloudDatapipelinesV1FieldValue" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDatapipelinesV1Job": { "description": "Definition of the job information maintained by the pipeline. Fields in this entity are retrieved from the executor API (e.g. Dataflow API).", "id": "GoogleCloudDatapipelinesV1Job", @@ -718,6 +1085,91 @@ }, "type": "object" }, + "GoogleCloudDatapipelinesV1LogicalType": { + "description": "Represents the input for creating a specified logical type.", + "id": "GoogleCloudDatapipelinesV1LogicalType", + "properties": { + "enumerationType": { + "$ref": "GoogleCloudDatapipelinesV1LogicalTypeEnumerationType", + "description": "The enum represented by this logical type." + }, + "fixedBytes": { + "$ref": "GoogleCloudDatapipelinesV1LogicalTypeFixedBytes", + "description": "The fixed-size byte collection represented by this logical type." + } + }, + "type": "object" + }, + "GoogleCloudDatapipelinesV1LogicalTypeEnumerationType": { + "description": "Represents the Beam EnumerationType logical type.", + "id": "GoogleCloudDatapipelinesV1LogicalTypeEnumerationType", + "properties": { + "values": { + "description": "Names of the values. The numeric value is the same as the index.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDatapipelinesV1LogicalTypeFixedBytes": { + "description": "Represents the Beam FixedBytes logical type.", + "id": "GoogleCloudDatapipelinesV1LogicalTypeFixedBytes", + "properties": { + "sizeBytes": { + "description": "Number of bytes to allocate.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudDatapipelinesV1MapType": { + "description": "Represents a map in a schema.", + "id": "GoogleCloudDatapipelinesV1MapType", + "properties": { + "mapKeyType": { + "$ref": "GoogleCloudDatapipelinesV1FieldType", + "description": "Key type of the map. Only atomic types are supported." + }, + "mapValueType": { + "$ref": "GoogleCloudDatapipelinesV1FieldType", + "description": "Value type of the map." + } + }, + "type": "object" + }, + "GoogleCloudDatapipelinesV1MapValue": { + "description": "Represents a key/value pairing.", + "id": "GoogleCloudDatapipelinesV1MapValue", + "properties": { + "entries": { + "description": "The entries in the map.", + "items": { + "$ref": "GoogleCloudDatapipelinesV1MapValueEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDatapipelinesV1MapValueEntry": { + "description": "A single entry in the map. Each entry must have a unique key.", + "id": "GoogleCloudDatapipelinesV1MapValueEntry", + "properties": { + "key": { + "$ref": "GoogleCloudDatapipelinesV1FieldValue", + "description": "The key value. Only atomic values are supported." + }, + "value": { + "$ref": "GoogleCloudDatapipelinesV1FieldValue", + "description": "The value associated with the key. It may be of any type." + } + }, + "type": "object" + }, "GoogleCloudDatapipelinesV1Pipeline": { "description": "The main pipeline entity and all the necessary metadata for launching and managing linked jobs.", "id": "GoogleCloudDatapipelinesV1Pipeline", @@ -804,6 +1256,47 @@ }, "type": "object" }, + "GoogleCloudDatapipelinesV1RawSchemaInfo": { + "description": "The raw schema and its type.", + "id": "GoogleCloudDatapipelinesV1RawSchemaInfo", + "properties": { + "rawSchema": { + "description": "The schema.", + "type": "string" + }, + "type": { + "description": "The type of the schema.", + "enum": [ + "RAW_SCHEMA_TYPE_UNSPECIFIED", + "RAW_SCHEMA_TYPE_AVRO" + ], + "enumDescriptions": [ + "The schema type is unknown.", + "The schema is an Avro schema." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDatapipelinesV1Row": { + "description": "Represents an Apache Beam row, though the `Any` nature of values is replaced with more concrete representations of valid values.", + "id": "GoogleCloudDatapipelinesV1Row", + "properties": { + "schema": { + "$ref": "GoogleCloudDatapipelinesV1SchemaSource", + "description": "Required. The schema of the row's data." + }, + "values": { + "description": "Required. The values of this Row. A fully built row is required to hold to the schema specified by `schema`.", + "items": { + "$ref": "GoogleCloudDatapipelinesV1FieldValue" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDatapipelinesV1RunPipelineRequest": { "description": "Request message for RunPipeline", "id": "GoogleCloudDatapipelinesV1RunPipelineRequest", @@ -931,6 +1424,39 @@ }, "type": "object" }, + "GoogleCloudDatapipelinesV1Schema": { + "description": "Represents a simplified Apache Beam schema.", + "id": "GoogleCloudDatapipelinesV1Schema", + "properties": { + "fields": { + "description": "Fields in the schema. Every field within a schema must have a unique name.", + "items": { + "$ref": "GoogleCloudDatapipelinesV1Field" + }, + "type": "array" + }, + "referenceId": { + "description": "An identifier of the schema for looking it up in a repository. This only needs to be set if the schema is stored in a repository.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDatapipelinesV1SchemaSource": { + "description": "Holds a schema or a reference to a schema in some repository.", + "id": "GoogleCloudDatapipelinesV1SchemaSource", + "properties": { + "localSchema": { + "$ref": "GoogleCloudDatapipelinesV1Schema", + "description": "Schema located locally with the message." + }, + "referenceId": { + "description": "The `reference_id` value of a schema in a repository.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDatapipelinesV1SdkVersion": { "description": "The version of the SDK used to run the job.", "id": "GoogleCloudDatapipelinesV1SdkVersion", @@ -970,6 +1496,26 @@ "properties": {}, "type": "object" }, + "GoogleCloudDatapipelinesV1TransformDescription": { + "description": "Description of a schema-aware transform, which provides info on how it can be configured.", + "id": "GoogleCloudDatapipelinesV1TransformDescription", + "properties": { + "name": { + "description": "Output only. The full name of this resource formatted as: projects/{project}/locations/{location}/transformDescriptions/{transform_description} `transform_description` is the same as the `uniform_resource_name` field.", + "readOnly": true, + "type": "string" + }, + "options": { + "$ref": "GoogleCloudDatapipelinesV1Schema", + "description": "Available options for configuring the transform." + }, + "uniformResourceName": { + "description": "Unique resource name of the transform.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDatapipelinesV1Workload": { "description": "Workload details for creating the pipeline jobs.", "id": "GoogleCloudDatapipelinesV1Workload", @@ -1017,6 +1563,83 @@ } }, "type": "object" + }, + "GoogleTypeDateTime": { + "description": "Represents civil time (or occasionally physical time). This type can represent a civil time in one of a few possible ways: * When utc_offset is set and time_zone is unset: a civil time on a calendar day with a particular offset from UTC. * When time_zone is set and utc_offset is unset: a civil time on a calendar day in a particular time zone. * When neither time_zone nor utc_offset is set: a civil time on a calendar day in local time. The date is relative to the Proleptic Gregorian Calendar. If year, month, or day are 0, the DateTime is considered not to have a specific year, month, or day respectively. This type may also be used to represent a physical time if all the date and time fields are set and either case of the `time_offset` oneof is set. Consider using `Timestamp` message for physical time instead. If your use case also would like to store the user's timezone, that can be done in another field. This type is more flexible than some applications may want. Make sure to document and validate your application's limitations.", + "id": "GoogleTypeDateTime", + "properties": { + "day": { + "description": "Optional. Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if specifying a datetime without a day.", + "format": "int32", + "type": "integer" + }, + "hours": { + "description": "Optional. Hours of day in 24 hour format. Should be from 0 to 23, defaults to 0 (midnight). An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", + "format": "int32", + "type": "integer" + }, + "minutes": { + "description": "Optional. Minutes of hour of day. Must be from 0 to 59, defaults to 0.", + "format": "int32", + "type": "integer" + }, + "month": { + "description": "Optional. Month of year. Must be from 1 to 12, or 0 if specifying a datetime without a month.", + "format": "int32", + "type": "integer" + }, + "nanos": { + "description": "Optional. Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999, defaults to 0.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Optional. Seconds of minutes of the time. Must normally be from 0 to 59, defaults to 0. An API may allow the value 60 if it allows leap-seconds.", + "format": "int32", + "type": "integer" + }, + "timeZone": { + "$ref": "GoogleTypeTimeZone", + "description": "Time zone." + }, + "utcOffset": { + "description": "UTC offset. Must be whole seconds, between -18 hours and +18 hours. For example, a UTC offset of -4:00 would be represented as { seconds: -14400 }.", + "format": "google-duration", + "type": "string" + }, + "year": { + "description": "Optional. Year of date. Must be from 1 to 9999, or 0 if specifying a datetime without a year.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleTypeDecimal": { + "description": "A representation of a decimal value, such as 2.5. Clients may convert values into language-native decimal formats, such as Java's BigDecimal or Python's decimal.Decimal. [BigDecimal]: https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/math/BigDecimal.html [decimal.Decimal]: https://docs.python.org/3/library/decimal.html", + "id": "GoogleTypeDecimal", + "properties": { + "value": { + "description": "The decimal value, as a string. The string representation consists of an optional sign, `+` (`U+002B`) or `-` (`U+002D`), followed by a sequence of zero or more decimal digits (\"the integer\"), optionally followed by a fraction, optionally followed by an exponent. An empty string **should** be interpreted as `0`. The fraction consists of a decimal point followed by zero or more decimal digits. The string must contain at least one digit in either the integer or the fraction. The number formed by the sign, the integer and the fraction is referred to as the significand. The exponent consists of the character `e` (`U+0065`) or `E` (`U+0045`) followed by one or more decimal digits. Services **should** normalize decimal values before storing them by: - Removing an explicitly-provided `+` sign (`+2.5` -\u003e `2.5`). - Replacing a zero-length integer value with `0` (`.5` -\u003e `0.5`). - Coercing the exponent character to upper-case, with explicit sign (`2.5e8` -\u003e `2.5E+8`). - Removing an explicitly-provided zero exponent (`2.5E0` -\u003e `2.5`). Services **may** perform additional normalization based on its own needs and the internal decimal implementation selected, such as shifting the decimal point and exponent value together (example: `2.5E-1` \u003c-\u003e `0.25`). Additionally, services **may** preserve trailing zeroes in the fraction to indicate increased precision, but are not required to do so. Note that only the `.` character is supported to divide the integer and the fraction; `,` **should not** be supported regardless of locale. Additionally, thousand separators **should not** be supported. If a service does support them, values **must** be normalized. The ENBF grammar is: DecimalString = '' | [Sign] Significand [Exponent]; Sign = '+' | '-'; Significand = Digits '.' | [Digits] '.' Digits; Exponent = ('e' | 'E') [Sign] Digits; Digits = { '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' }; Services **should** clearly document the range of supported values, the maximum supported precision (total number of digits), and, if applicable, the scale (number of digits after the decimal point), as well as how it behaves when receiving out-of-bounds values. Services **may** choose to accept values passed as input even when the value has a higher precision or scale than the service supports, and **should** round the value to fit the supported scale. Alternatively, the service **may** error with `400 Bad Request` (`INVALID_ARGUMENT` in gRPC) if precision would be lost. Services **should** error with `400 Bad Request` (`INVALID_ARGUMENT` in gRPC) if the service receives a value outside of the supported range.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleTypeTimeZone": { + "description": "Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones).", + "id": "GoogleTypeTimeZone", + "properties": { + "id": { + "description": "IANA Time Zone Database time zone, e.g. \"America/New_York\".", + "type": "string" + }, + "version": { + "description": "Optional. IANA Time Zone Database version number, e.g. \"2019a\".", + "type": "string" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/datapipelines/v1/datapipelines-gen.go b/datapipelines/v1/datapipelines-gen.go index b9a7bf37ed1..bffd8160300 100644 --- a/datapipelines/v1/datapipelines-gen.go +++ b/datapipelines/v1/datapipelines-gen.go @@ -152,6 +152,7 @@ type ProjectsService struct { func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { rs := &ProjectsLocationsService{s: s} rs.Pipelines = NewProjectsLocationsPipelinesService(s) + rs.TransformDescriptions = NewProjectsLocationsTransformDescriptionsService(s) return rs } @@ -159,6 +160,8 @@ type ProjectsLocationsService struct { s *Service Pipelines *ProjectsLocationsPipelinesService + + TransformDescriptions *ProjectsLocationsTransformDescriptionsService } func NewProjectsLocationsPipelinesService(s *Service) *ProjectsLocationsPipelinesService { @@ -182,6 +185,233 @@ type ProjectsLocationsPipelinesJobsService struct { s *Service } +func NewProjectsLocationsTransformDescriptionsService(s *Service) *ProjectsLocationsTransformDescriptionsService { + rs := &ProjectsLocationsTransformDescriptionsService{s: s} + return rs +} + +type ProjectsLocationsTransformDescriptionsService struct { + s *Service +} + +// GoogleCloudDatapipelinesV1ArrayValue: Represents an array of values. +// The elements can be of any type. +type GoogleCloudDatapipelinesV1ArrayValue struct { + // Elements: The elements of the array. + Elements []*GoogleCloudDatapipelinesV1FieldValue `json:"elements,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Elements") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Elements") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1ArrayValue) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1ArrayValue + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatapipelinesV1AtomicValue: Represents a non-dividable +// value. +type GoogleCloudDatapipelinesV1AtomicValue struct { + // BooleanValue: A boolean value. + BooleanValue bool `json:"booleanValue,omitempty"` + + // ByteValue: An 8-bit signed value. + ByteValue int64 `json:"byteValue,omitempty"` + + // BytesValue: An array of raw bytes. + BytesValue string `json:"bytesValue,omitempty"` + + // DatetimeValue: A datetime value. + DatetimeValue *GoogleTypeDateTime `json:"datetimeValue,omitempty"` + + // DecimalValue: A large decimal value, equivalent to Java BigDecimal. + DecimalValue *GoogleTypeDecimal `json:"decimalValue,omitempty"` + + // DoubleValue: A 64-bit floating point value. + DoubleValue float64 `json:"doubleValue,omitempty"` + + // FloatValue: A 32-bit floating point value. + FloatValue float64 `json:"floatValue,omitempty"` + + // Int16Value: A 16-bit signed value. + Int16Value int64 `json:"int16Value,omitempty"` + + // Int32Value: A 32-bit signed value. + Int32Value int64 `json:"int32Value,omitempty"` + + // Int64Value: A 64-bit signed value. + Int64Value int64 `json:"int64Value,omitempty,string"` + + // StringValue: A string value. + StringValue string `json:"stringValue,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BooleanValue") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BooleanValue") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1AtomicValue) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1AtomicValue + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudDatapipelinesV1AtomicValue) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudDatapipelinesV1AtomicValue + var s1 struct { + DoubleValue gensupport.JSONFloat64 `json:"doubleValue"` + FloatValue gensupport.JSONFloat64 `json:"floatValue"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.DoubleValue = float64(s1.DoubleValue) + s.FloatValue = float64(s1.FloatValue) + return nil +} + +// GoogleCloudDatapipelinesV1BatchGetTransformDescriptionsResponse: +// Response message for BatchGetTransformDescriptions +type GoogleCloudDatapipelinesV1BatchGetTransformDescriptionsResponse struct { + // TransformDescriptions: List of requested transform descriptions. + TransformDescriptions []*GoogleCloudDatapipelinesV1TransformDescription `json:"transformDescriptions,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. + // "TransformDescriptions") to unconditionally include in API requests. + // By default, fields with empty or default values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "TransformDescriptions") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1BatchGetTransformDescriptionsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1BatchGetTransformDescriptionsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatapipelinesV1ComputeSchemaRequest: Request message for +// ComputeSchema +type GoogleCloudDatapipelinesV1ComputeSchemaRequest struct { + // Config: Required. The configuration for the transform. If this is not + // a source, then each input with its schema must be set. It is not + // required to have any outputs set. + Config *GoogleCloudDatapipelinesV1ConfiguredTransform `json:"config,omitempty"` + + // InputSchemas: Optional. In relation to the full pipeline graph, the + // schemas of the transforms that are used as inputs to the one for + // `config`. If `config` represents a transform for reading from some + // resource, then this should be empty. For all other transforms, at + // least one value must be provided. + InputSchemas []*GoogleCloudDatapipelinesV1Schema `json:"inputSchemas,omitempty"` + + // RawSchema: Optional. If set, this will use the provided raw schema to + // compute the schema rather than connecting to any resources. + // Validation will still occur to make sure it is compatible with all + // input schemas. If the transform is an IO, the IO must support that + // schema type. + RawSchema *GoogleCloudDatapipelinesV1RawSchemaInfo `json:"rawSchema,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Config") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Config") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1ComputeSchemaRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1ComputeSchemaRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatapipelinesV1ConfiguredTransform: A fully configured +// transform that can be validated. +type GoogleCloudDatapipelinesV1ConfiguredTransform struct { + // Config: Configuration values provided. These must match the schema + // provided in the row's schema. + Config *GoogleCloudDatapipelinesV1Row `json:"config,omitempty"` + + // UniformResourceName: Unique resource name of the transform. This + // should be the same as the equivalent `TransformDescription` value. + UniformResourceName string `json:"uniformResourceName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Config") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Config") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1ConfiguredTransform) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1ConfiguredTransform + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDatapipelinesV1DataflowJobDetails: Pipeline job details // specific to the Dataflow API. This is encapsulated here to allow for // more executors to store their specific details separately. @@ -222,6 +452,222 @@ func (s *GoogleCloudDatapipelinesV1DataflowJobDetails) MarshalJSON() ([]byte, er return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudDatapipelinesV1EnumerationValue: Represents a selected +// value from an EnumerationType. +type GoogleCloudDatapipelinesV1EnumerationValue struct { + // Name: Name of the enum option. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1EnumerationValue) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1EnumerationValue + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatapipelinesV1Field: Info for a single field in the +// schema. +type GoogleCloudDatapipelinesV1Field struct { + // Name: Name of the field. + Name string `json:"name,omitempty"` + + // Type: Type info for the field. + Type *GoogleCloudDatapipelinesV1FieldType `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1Field) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1Field + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatapipelinesV1FieldType: Type info about a field. +type GoogleCloudDatapipelinesV1FieldType struct { + // CollectionElementType: If `type` is an array or iterable, this is the + // type contained in that array or iterable. + CollectionElementType *GoogleCloudDatapipelinesV1FieldType `json:"collectionElementType,omitempty"` + + // LogicalType: If `type` is a logical type, this is the info for the + // specific logical type. + LogicalType *GoogleCloudDatapipelinesV1LogicalType `json:"logicalType,omitempty"` + + // MapType: If `type` is a map, this is the key and value types for that + // map. + MapType *GoogleCloudDatapipelinesV1MapType `json:"mapType,omitempty"` + + // Nullable: Whether or not this field is nullable. + Nullable bool `json:"nullable,omitempty"` + + // RowSchema: If `type` is a row, this is the schema of that row. + RowSchema *GoogleCloudDatapipelinesV1Schema `json:"rowSchema,omitempty"` + + // Type: Specific type of the field. For non-atomic types, the + // corresponding type info for that non-atomic must be set. + // + // Possible values: + // "TYPE_NAME_UNSPECIFIED" - Type name is not set (generally an error) + // "TYPE_NAME_BYTE" - 8-bit signed integer + // "TYPE_NAME_INT16" - 16-bit signed integer + // "TYPE_NAME_INT32" - 32-bit signed integer + // "TYPE_NAME_INT64" - 64-bit signed integer + // "TYPE_NAME_DECIMAL" - Large decimal type (equivalent to Java + // BigDecimal) + // "TYPE_NAME_FLOAT" - 32-bit floating point integer + // "TYPE_NAME_DOUBLE" - 64-bit floating point integer + // "TYPE_NAME_STRING" - String + // "TYPE_NAME_DATETIME" - Datetime + // "TYPE_NAME_BOOLEAN" - Bool + // "TYPE_NAME_BYTES" - Convenience for an ARRAY of BYTE values + // "TYPE_NAME_ARRAY" - Array of some other values. + // "TYPE_NAME_ITERABLE" - Iterable of some other values. + // "TYPE_NAME_MAP" - Key/Value mapping between values. + // "TYPE_NAME_ROW" - Struct that follows a particular schema + // "TYPE_NAME_LOGICAL_TYPE" - Beam logical type + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CollectionElementType") to unconditionally include in API requests. + // By default, fields with empty or default values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CollectionElementType") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1FieldType) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1FieldType + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatapipelinesV1FieldValue: A single value in a row. The +// value set must correspond to the correct type from the row's schema. +type GoogleCloudDatapipelinesV1FieldValue struct { + // ArrayValue: The array value of this field. Corresponds to + // TYPE_NAME_ARRAY in the schema. + ArrayValue *GoogleCloudDatapipelinesV1ArrayValue `json:"arrayValue,omitempty"` + + // AtomicValue: The atomic value of this field. Must correspond to the + // correct atomic type in the schema. + AtomicValue *GoogleCloudDatapipelinesV1AtomicValue `json:"atomicValue,omitempty"` + + // EnumValue: The enum value of this field. Corresponds to + // TYPE_NAME_LOGICAL_TYPE in the schema if that logical type represents + // an `EnumerationType` type. + EnumValue *GoogleCloudDatapipelinesV1EnumerationValue `json:"enumValue,omitempty"` + + // FixedBytesValue: The fixed-length byte collection of this field. + // Corresponds to TYPE_NAME_LOGICAL_TYPE in the schema if that logical + // type represents a `FixedBytes` type. + FixedBytesValue *GoogleCloudDatapipelinesV1FixedBytesValue `json:"fixedBytesValue,omitempty"` + + // IterableValue: The iterable value of this field. Corresponds to + // TYPE_NAME_ITERABLE in the schema. + IterableValue *GoogleCloudDatapipelinesV1IterableValue `json:"iterableValue,omitempty"` + + // MapValue: The map value of this field. Corresponds to TYPE_NAME_MAP + // in the schema. + MapValue *GoogleCloudDatapipelinesV1MapValue `json:"mapValue,omitempty"` + + // RowValue: The row value of this field. Corresponds to TYPE_NAME_ROW + // in the schema. This row also holds to its own schema. + RowValue *GoogleCloudDatapipelinesV1Row `json:"rowValue,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ArrayValue") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ArrayValue") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1FieldValue) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1FieldValue + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatapipelinesV1FixedBytesValue: Represents a collection of +// bytes whose size is the same as the associated FixedBytes size value. +type GoogleCloudDatapipelinesV1FixedBytesValue struct { + // Value: The raw bytes. It must be exactly the size specified in the + // schema. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Value") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Value") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1FixedBytesValue) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1FixedBytesValue + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDatapipelinesV1FlexTemplateRuntimeEnvironment: The // environment values to be set at runtime for a Flex Template. type GoogleCloudDatapipelinesV1FlexTemplateRuntimeEnvironment struct { @@ -342,6 +788,35 @@ func (s *GoogleCloudDatapipelinesV1FlexTemplateRuntimeEnvironment) MarshalJSON() return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudDatapipelinesV1IterableValue: Represents an iterable of +// values. The elements can be of any type. +type GoogleCloudDatapipelinesV1IterableValue struct { + // Elements: The elements of the iterable. + Elements []*GoogleCloudDatapipelinesV1FieldValue `json:"elements,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Elements") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Elements") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1IterableValue) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1IterableValue + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDatapipelinesV1Job: Definition of the job information // maintained by the pipeline. Fields in this entity are retrieved from // the executor API (e.g. Dataflow API). @@ -675,6 +1150,190 @@ func (s *GoogleCloudDatapipelinesV1ListPipelinesResponse) MarshalJSON() ([]byte, return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudDatapipelinesV1LogicalType: Represents the input for +// creating a specified logical type. +type GoogleCloudDatapipelinesV1LogicalType struct { + // EnumerationType: The enum represented by this logical type. + EnumerationType *GoogleCloudDatapipelinesV1LogicalTypeEnumerationType `json:"enumerationType,omitempty"` + + // FixedBytes: The fixed-size byte collection represented by this + // logical type. + FixedBytes *GoogleCloudDatapipelinesV1LogicalTypeFixedBytes `json:"fixedBytes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EnumerationType") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EnumerationType") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1LogicalType) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1LogicalType + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatapipelinesV1LogicalTypeEnumerationType: Represents the +// Beam EnumerationType logical type. +type GoogleCloudDatapipelinesV1LogicalTypeEnumerationType struct { + // Values: Names of the values. The numeric value is the same as the + // index. + Values []string `json:"values,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Values") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Values") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1LogicalTypeEnumerationType) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1LogicalTypeEnumerationType + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatapipelinesV1LogicalTypeFixedBytes: Represents the Beam +// FixedBytes logical type. +type GoogleCloudDatapipelinesV1LogicalTypeFixedBytes struct { + // SizeBytes: Number of bytes to allocate. + SizeBytes int64 `json:"sizeBytes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "SizeBytes") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "SizeBytes") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1LogicalTypeFixedBytes) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1LogicalTypeFixedBytes + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatapipelinesV1MapType: Represents a map in a schema. +type GoogleCloudDatapipelinesV1MapType struct { + // MapKeyType: Key type of the map. Only atomic types are supported. + MapKeyType *GoogleCloudDatapipelinesV1FieldType `json:"mapKeyType,omitempty"` + + // MapValueType: Value type of the map. + MapValueType *GoogleCloudDatapipelinesV1FieldType `json:"mapValueType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MapKeyType") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MapKeyType") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1MapType) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1MapType + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatapipelinesV1MapValue: Represents a key/value pairing. +type GoogleCloudDatapipelinesV1MapValue struct { + // Entries: The entries in the map. + Entries []*GoogleCloudDatapipelinesV1MapValueEntry `json:"entries,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Entries") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Entries") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1MapValue) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1MapValue + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatapipelinesV1MapValueEntry: A single entry in the map. +// Each entry must have a unique key. +type GoogleCloudDatapipelinesV1MapValueEntry struct { + // Key: The key value. Only atomic values are supported. + Key *GoogleCloudDatapipelinesV1FieldValue `json:"key,omitempty"` + + // Value: The value associated with the key. It may be of any type. + Value *GoogleCloudDatapipelinesV1FieldValue `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Key") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1MapValueEntry) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1MapValueEntry + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDatapipelinesV1Pipeline: The main pipeline entity and all // the necessary metadata for launching and managing linked jobs. type GoogleCloudDatapipelinesV1Pipeline struct { @@ -762,14 +1421,83 @@ type GoogleCloudDatapipelinesV1Pipeline struct { // the linked job gets created when the pipeline is created. Type string `json:"type,omitempty"` - // Workload: Workload information for creating new jobs. - Workload *GoogleCloudDatapipelinesV1Workload `json:"workload,omitempty"` + // Workload: Workload information for creating new jobs. + Workload *GoogleCloudDatapipelinesV1Workload `json:"workload,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1Pipeline) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1Pipeline + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatapipelinesV1RawSchemaInfo: The raw schema and its type. +type GoogleCloudDatapipelinesV1RawSchemaInfo struct { + // RawSchema: The schema. + RawSchema string `json:"rawSchema,omitempty"` + + // Type: The type of the schema. + // + // Possible values: + // "RAW_SCHEMA_TYPE_UNSPECIFIED" - The schema type is unknown. + // "RAW_SCHEMA_TYPE_AVRO" - The schema is an Avro schema. + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "RawSchema") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "RawSchema") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1RawSchemaInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1RawSchemaInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} - // ServerResponse contains the HTTP response code and headers from the - // server. - googleapi.ServerResponse `json:"-"` +// GoogleCloudDatapipelinesV1Row: Represents an Apache Beam row, though +// the `Any` nature of values is replaced with more concrete +// representations of valid values. +type GoogleCloudDatapipelinesV1Row struct { + // Schema: Required. The schema of the row's data. + Schema *GoogleCloudDatapipelinesV1SchemaSource `json:"schema,omitempty"` - // ForceSendFields is a list of field names (e.g. "CreateTime") to + // Values: Required. The values of this Row. A fully built row is + // required to hold to the schema specified by `schema`. + Values []*GoogleCloudDatapipelinesV1FieldValue `json:"values,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Schema") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -777,8 +1505,8 @@ type GoogleCloudDatapipelinesV1Pipeline struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "CreateTime") to include in - // API requests with the JSON null value. By default, fields with empty + // NullFields is a list of field names (e.g. "Schema") to include in API + // requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. @@ -786,8 +1514,8 @@ type GoogleCloudDatapipelinesV1Pipeline struct { NullFields []string `json:"-"` } -func (s *GoogleCloudDatapipelinesV1Pipeline) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudDatapipelinesV1Pipeline +func (s *GoogleCloudDatapipelinesV1Row) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1Row raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -983,6 +1711,77 @@ func (s *GoogleCloudDatapipelinesV1ScheduleSpec) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudDatapipelinesV1Schema: Represents a simplified Apache Beam +// schema. +type GoogleCloudDatapipelinesV1Schema struct { + // Fields: Fields in the schema. Every field within a schema must have a + // unique name. + Fields []*GoogleCloudDatapipelinesV1Field `json:"fields,omitempty"` + + // ReferenceId: An identifier of the schema for looking it up in a + // repository. This only needs to be set if the schema is stored in a + // repository. + ReferenceId string `json:"referenceId,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Fields") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Fields") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1Schema) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1Schema + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatapipelinesV1SchemaSource: Holds a schema or a reference +// to a schema in some repository. +type GoogleCloudDatapipelinesV1SchemaSource struct { + // LocalSchema: Schema located locally with the message. + LocalSchema *GoogleCloudDatapipelinesV1Schema `json:"localSchema,omitempty"` + + // ReferenceId: The `reference_id` value of a schema in a repository. + ReferenceId string `json:"referenceId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LocalSchema") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "LocalSchema") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1SchemaSource) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1SchemaSource + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDatapipelinesV1SdkVersion: The version of the SDK used to // run the job. type GoogleCloudDatapipelinesV1SdkVersion struct { @@ -1035,6 +1834,49 @@ func (s *GoogleCloudDatapipelinesV1SdkVersion) MarshalJSON() ([]byte, error) { type GoogleCloudDatapipelinesV1StopPipelineRequest struct { } +// GoogleCloudDatapipelinesV1TransformDescription: Description of a +// schema-aware transform, which provides info on how it can be +// configured. +type GoogleCloudDatapipelinesV1TransformDescription struct { + // Name: Output only. The full name of this resource formatted as: + // projects/{project}/locations/{location}/transformDescriptions/{transfo + // rm_description} `transform_description` is the same as the + // `uniform_resource_name` field. + Name string `json:"name,omitempty"` + + // Options: Available options for configuring the transform. + Options *GoogleCloudDatapipelinesV1Schema `json:"options,omitempty"` + + // UniformResourceName: Unique resource name of the transform. + UniformResourceName string `json:"uniformResourceName,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatapipelinesV1TransformDescription) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatapipelinesV1TransformDescription + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDatapipelinesV1Workload: Workload details for creating the // pipeline jobs. type GoogleCloudDatapipelinesV1Workload struct { @@ -1127,6 +1969,346 @@ func (s *GoogleRpcStatus) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleTypeDateTime: Represents civil time (or occasionally physical +// time). This type can represent a civil time in one of a few possible +// ways: * When utc_offset is set and time_zone is unset: a civil time +// on a calendar day with a particular offset from UTC. * When time_zone +// is set and utc_offset is unset: a civil time on a calendar day in a +// particular time zone. * When neither time_zone nor utc_offset is set: +// a civil time on a calendar day in local time. The date is relative to +// the Proleptic Gregorian Calendar. If year, month, or day are 0, the +// DateTime is considered not to have a specific year, month, or day +// respectively. This type may also be used to represent a physical time +// if all the date and time fields are set and either case of the +// `time_offset` oneof is set. Consider using `Timestamp` message for +// physical time instead. If your use case also would like to store the +// user's timezone, that can be done in another field. This type is more +// flexible than some applications may want. Make sure to document and +// validate your application's limitations. +type GoogleTypeDateTime struct { + // Day: Optional. Day of month. Must be from 1 to 31 and valid for the + // year and month, or 0 if specifying a datetime without a day. + Day int64 `json:"day,omitempty"` + + // Hours: Optional. Hours of day in 24 hour format. Should be from 0 to + // 23, defaults to 0 (midnight). An API may choose to allow the value + // "24:00:00" for scenarios like business closing time. + Hours int64 `json:"hours,omitempty"` + + // Minutes: Optional. Minutes of hour of day. Must be from 0 to 59, + // defaults to 0. + Minutes int64 `json:"minutes,omitempty"` + + // Month: Optional. Month of year. Must be from 1 to 12, or 0 if + // specifying a datetime without a month. + Month int64 `json:"month,omitempty"` + + // Nanos: Optional. Fractions of seconds in nanoseconds. Must be from 0 + // to 999,999,999, defaults to 0. + Nanos int64 `json:"nanos,omitempty"` + + // Seconds: Optional. Seconds of minutes of the time. Must normally be + // from 0 to 59, defaults to 0. An API may allow the value 60 if it + // allows leap-seconds. + Seconds int64 `json:"seconds,omitempty"` + + // TimeZone: Time zone. + TimeZone *GoogleTypeTimeZone `json:"timeZone,omitempty"` + + // UtcOffset: UTC offset. Must be whole seconds, between -18 hours and + // +18 hours. For example, a UTC offset of -4:00 would be represented as + // { seconds: -14400 }. + UtcOffset string `json:"utcOffset,omitempty"` + + // Year: Optional. Year of date. Must be from 1 to 9999, or 0 if + // specifying a datetime without a year. + Year int64 `json:"year,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Day") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Day") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleTypeDateTime) MarshalJSON() ([]byte, error) { + type NoMethod GoogleTypeDateTime + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleTypeDecimal: A representation of a decimal value, such as 2.5. +// Clients may convert values into language-native decimal formats, such +// as Java's BigDecimal or Python's decimal.Decimal. [BigDecimal]: +// https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/math/BigDecimal.html +// [decimal.Decimal]: https://docs.python.org/3/library/decimal.html +type GoogleTypeDecimal struct { + // Value: The decimal value, as a string. The string representation + // consists of an optional sign, `+` (`U+002B`) or `-` (`U+002D`), + // followed by a sequence of zero or more decimal digits ("the + // integer"), optionally followed by a fraction, optionally followed by + // an exponent. An empty string **should** be interpreted as `0`. The + // fraction consists of a decimal point followed by zero or more decimal + // digits. The string must contain at least one digit in either the + // integer or the fraction. The number formed by the sign, the integer + // and the fraction is referred to as the significand. The exponent + // consists of the character `e` (`U+0065`) or `E` (`U+0045`) followed + // by one or more decimal digits. Services **should** normalize decimal + // values before storing them by: - Removing an explicitly-provided `+` + // sign (`+2.5` -> `2.5`). - Replacing a zero-length integer value with + // `0` (`.5` -> `0.5`). - Coercing the exponent character to upper-case, + // with explicit sign (`2.5e8` -> `2.5E+8`). - Removing an + // explicitly-provided zero exponent (`2.5E0` -> `2.5`). Services + // **may** perform additional normalization based on its own needs and + // the internal decimal implementation selected, such as shifting the + // decimal point and exponent value together (example: `2.5E-1` <-> + // `0.25`). Additionally, services **may** preserve trailing zeroes in + // the fraction to indicate increased precision, but are not required to + // do so. Note that only the `.` character is supported to divide the + // integer and the fraction; `,` **should not** be supported regardless + // of locale. Additionally, thousand separators **should not** be + // supported. If a service does support them, values **must** be + // normalized. The ENBF grammar is: DecimalString = '' | [Sign] + // Significand [Exponent]; Sign = '+' | '-'; Significand = Digits '.' | + // [Digits] '.' Digits; Exponent = ('e' | 'E') [Sign] Digits; Digits = { + // '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' }; Services + // **should** clearly document the range of supported values, the + // maximum supported precision (total number of digits), and, if + // applicable, the scale (number of digits after the decimal point), as + // well as how it behaves when receiving out-of-bounds values. Services + // **may** choose to accept values passed as input even when the value + // has a higher precision or scale than the service supports, and + // **should** round the value to fit the supported scale. Alternatively, + // the service **may** error with `400 Bad Request` (`INVALID_ARGUMENT` + // in gRPC) if precision would be lost. Services **should** error with + // `400 Bad Request` (`INVALID_ARGUMENT` in gRPC) if the service + // receives a value outside of the supported range. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Value") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Value") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleTypeDecimal) MarshalJSON() ([]byte, error) { + type NoMethod GoogleTypeDecimal + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleTypeTimeZone: Represents a time zone from the IANA Time Zone +// Database (https://www.iana.org/time-zones). +type GoogleTypeTimeZone struct { + // Id: IANA Time Zone Database time zone, e.g. "America/New_York". + Id string `json:"id,omitempty"` + + // Version: Optional. IANA Time Zone Database version number, e.g. + // "2019a". + Version string `json:"version,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Id") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Id") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleTypeTimeZone) MarshalJSON() ([]byte, error) { + type NoMethod GoogleTypeTimeZone + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "datapipelines.projects.locations.computeSchema": + +type ProjectsLocationsComputeSchemaCall struct { + s *Service + location string + googleclouddatapipelinesv1computeschemarequest *GoogleCloudDatapipelinesV1ComputeSchemaRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// ComputeSchema: Computes the schema for the transform. Computation +// from `raw_schema` will always occur if it is set. This requires that +// the transform supports that encoding. If no raw schema is provided +// and if the transform is for an IO, then this will attempt to connect +// to the resource using the details provided in `config` and infer the +// schema from that. If the transform is not an IO, is a sink that +// doesn't exist yet, or is a sink with no schema requirement, then this +// will fall back to basing the schema off the one provided in +// `input_schemas`. The computed schema will be validated. +// +// - location: The full location formatted as +// "projects/{your-project}/locations/{google-cloud-region}". If +// attempting to infer the schema from an existing Google Cloud +// resource, the default Data Pipelines service account for this +// project will be used in making requests for the resource. If the +// region given for "{google-cloud-region}" is different than the +// region where the resource is stored, then the data will be +// transferred to and processed in the region specified here, but it +// will not be persistently stored in this region. +func (r *ProjectsLocationsService) ComputeSchema(location string, googleclouddatapipelinesv1computeschemarequest *GoogleCloudDatapipelinesV1ComputeSchemaRequest) *ProjectsLocationsComputeSchemaCall { + c := &ProjectsLocationsComputeSchemaCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.location = location + c.googleclouddatapipelinesv1computeschemarequest = googleclouddatapipelinesv1computeschemarequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsComputeSchemaCall) Fields(s ...googleapi.Field) *ProjectsLocationsComputeSchemaCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsComputeSchemaCall) Context(ctx context.Context) *ProjectsLocationsComputeSchemaCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsComputeSchemaCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsComputeSchemaCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddatapipelinesv1computeschemarequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+location}:computeSchema") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "location": c.location, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "datapipelines.projects.locations.computeSchema" call. +// Exactly one of *GoogleCloudDatapipelinesV1Schema or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDatapipelinesV1Schema.ServerResponse.Header or (if +// a response was returned at all) in error.(*googleapi.Error).Header. +// Use googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsComputeSchemaCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatapipelinesV1Schema, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudDatapipelinesV1Schema{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Computes the schema for the transform. Computation from `raw_schema` will always occur if it is set. This requires that the transform supports that encoding. If no raw schema is provided and if the transform is for an IO, then this will attempt to connect to the resource using the details provided in `config` and infer the schema from that. If the transform is not an IO, is a sink that doesn't exist yet, or is a sink with no schema requirement, then this will fall back to basing the schema off the one provided in `input_schemas`. The computed schema will be validated.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:computeSchema", + // "httpMethod": "POST", + // "id": "datapipelines.projects.locations.computeSchema", + // "parameterOrder": [ + // "location" + // ], + // "parameters": { + // "location": { + // "description": "Required. The full location formatted as \"projects/{your-project}/locations/{google-cloud-region}\". If attempting to infer the schema from an existing Google Cloud resource, the default Data Pipelines service account for this project will be used in making requests for the resource. If the region given for \"{google-cloud-region}\" is different than the region where the resource is stored, then the data will be transferred to and processed in the region specified here, but it will not be persistently stored in this region.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+location}:computeSchema", + // "request": { + // "$ref": "GoogleCloudDatapipelinesV1ComputeSchemaRequest" + // }, + // "response": { + // "$ref": "GoogleCloudDatapipelinesV1Schema" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "datapipelines.projects.locations.listPipelines": type ProjectsLocationsListPipelinesCall struct { @@ -2449,3 +3631,322 @@ func (c *ProjectsLocationsPipelinesJobsListCall) Pages(ctx context.Context, f fu c.PageToken(x.NextPageToken) } } + +// method id "datapipelines.projects.locations.transformDescriptions.batchGet": + +type ProjectsLocationsTransformDescriptionsBatchGetCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// BatchGet: Gets transform descriptions in a batch, associated with a +// list of provided uniform resource names. +// +// - parent: The project and location shared by all transform +// descriptions being retrieved, formatted as +// "projects/{project}/locations/{location}". +func (r *ProjectsLocationsTransformDescriptionsService) BatchGet(parent string) *ProjectsLocationsTransformDescriptionsBatchGetCall { + c := &ProjectsLocationsTransformDescriptionsBatchGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Names sets the optional parameter "names": The names of the transform +// descriptions being retrieved, formatted as +// "projects/{project}/locations/{location}/transformdescriptions/{transf +// orm_description}". If no name is provided, all of the transform +// descriptions will be returned. +func (c *ProjectsLocationsTransformDescriptionsBatchGetCall) Names(names ...string) *ProjectsLocationsTransformDescriptionsBatchGetCall { + c.urlParams_.SetMulti("names", append([]string{}, names...)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsTransformDescriptionsBatchGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsTransformDescriptionsBatchGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsTransformDescriptionsBatchGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsTransformDescriptionsBatchGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsTransformDescriptionsBatchGetCall) Context(ctx context.Context) *ProjectsLocationsTransformDescriptionsBatchGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsTransformDescriptionsBatchGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsTransformDescriptionsBatchGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/transformDescriptions:batchGet") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "datapipelines.projects.locations.transformDescriptions.batchGet" call. +// Exactly one of +// *GoogleCloudDatapipelinesV1BatchGetTransformDescriptionsResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDatapipelinesV1BatchGetTransformDescriptionsResponse.Serve +// rResponse.Header or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsLocationsTransformDescriptionsBatchGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatapipelinesV1BatchGetTransformDescriptionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudDatapipelinesV1BatchGetTransformDescriptionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets transform descriptions in a batch, associated with a list of provided uniform resource names.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transformDescriptions:batchGet", + // "httpMethod": "GET", + // "id": "datapipelines.projects.locations.transformDescriptions.batchGet", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "names": { + // "description": "Optional. The names of the transform descriptions being retrieved, formatted as \"projects/{project}/locations/{location}/transformdescriptions/{transform_description}\". If no name is provided, all of the transform descriptions will be returned.", + // "location": "query", + // "repeated": true, + // "type": "string" + // }, + // "parent": { + // "description": "Required. The project and location shared by all transform descriptions being retrieved, formatted as \"projects/{project}/locations/{location}\".", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/transformDescriptions:batchGet", + // "response": { + // "$ref": "GoogleCloudDatapipelinesV1BatchGetTransformDescriptionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "datapipelines.projects.locations.transformDescriptions.get": + +type ProjectsLocationsTransformDescriptionsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the transform description associated with the provided +// uniform resource name. +// +// - name: The full name formatted as +// "projects/{your-project}/locations/{google-cloud-region}/transformde +// scriptions/{uniform-resource-name}". +func (r *ProjectsLocationsTransformDescriptionsService) Get(name string) *ProjectsLocationsTransformDescriptionsGetCall { + c := &ProjectsLocationsTransformDescriptionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsTransformDescriptionsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsTransformDescriptionsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsTransformDescriptionsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsTransformDescriptionsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsTransformDescriptionsGetCall) Context(ctx context.Context) *ProjectsLocationsTransformDescriptionsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsTransformDescriptionsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsTransformDescriptionsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "datapipelines.projects.locations.transformDescriptions.get" call. +// Exactly one of *GoogleCloudDatapipelinesV1TransformDescription or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDatapipelinesV1TransformDescription.ServerResponse.Header +// or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsLocationsTransformDescriptionsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDatapipelinesV1TransformDescription, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudDatapipelinesV1TransformDescription{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the transform description associated with the provided uniform resource name.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transformDescriptions/{transformDescriptionsId}", + // "httpMethod": "GET", + // "id": "datapipelines.projects.locations.transformDescriptions.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The full name formatted as \"projects/{your-project}/locations/{google-cloud-region}/transformdescriptions/{uniform-resource-name}\".", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/transformDescriptions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleCloudDatapipelinesV1TransformDescription" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} diff --git a/dataproc/v1/dataproc-api.json b/dataproc/v1/dataproc-api.json index 305ef371d5c..0fc15a9ddfd 100644 --- a/dataproc/v1/dataproc-api.json +++ b/dataproc/v1/dataproc-api.json @@ -2564,7 +2564,7 @@ } } }, - "revision": "20221025", + "revision": "20221114", "rootUrl": "https://dataproc.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -3371,7 +3371,7 @@ "id": "ExecutionConfig", "properties": { "idleTtl": { - "description": "Optional. The duration to keep the session alive while it's idling. Passing this threshold will cause the session to be terminated. Minimum value is 30 minutes; maximum value is 14 days (see JSON representation of Duration (https://developers.google.com/protocol-buffers/docs/proto3#json)).", + "description": "Optional. The duration to keep the session alive while it's idling. Passing this threshold will cause the session to be terminated. Minimum value is 10 minutes; maximum value is 14 days (see JSON representation of Duration (https://developers.google.com/protocol-buffers/docs/proto3#json)). Defaults to 10 minutes if not set.", "format": "google-duration", "type": "string" }, @@ -5178,7 +5178,7 @@ "properties": { "approximateUsage": { "$ref": "UsageMetrics", - "description": "Output only. Approximate workload resource usage calculated after workload finishes.", + "description": "Output only. Approximate workload resource usage calculated after workload finishes (see Dataproc Serverless pricing (https://cloud.google.com/dataproc-serverless/pricing)).", "readOnly": true }, "diagnosticOutputUri": { @@ -5327,6 +5327,7 @@ "HIVE_WEBHCAT", "JUPYTER", "PRESTO", + "TRINO", "RANGER", "SOLR", "ZEPPELIN", @@ -5342,6 +5343,7 @@ "The Hive Web HCatalog (the REST service for accessing HCatalog).", "The Jupyter Notebook.", "The Presto query engine.", + "The Trino query engine.", "The Ranger service.", "The Solr service.", "The Zeppelin notebook.", @@ -5850,16 +5852,16 @@ "type": "object" }, "UsageMetrics": { - "description": "Usage metrics represent total resources consumed by a workload.", + "description": "Usage metrics represent approximate total resources consumed by a workload.", "id": "UsageMetrics", "properties": { "milliDcuSeconds": { - "description": "Optional. DCU usage in milliDCU*seconds.", + "description": "Optional. DCU (Dataproc Compute Units) usage in (milliDCU x seconds) (see Dataproc Serverless pricing (https://cloud.google.com/dataproc-serverless/pricing)).", "format": "int64", "type": "string" }, "shuffleStorageGbSeconds": { - "description": "Optional. Shuffle storage usage in GB*Seconds", + "description": "Optional. Shuffle storage usage in (GB x seconds) (see Dataproc Serverless pricing (https://cloud.google.com/dataproc-serverless/pricing)).", "format": "int64", "type": "string" } diff --git a/dataproc/v1/dataproc-gen.go b/dataproc/v1/dataproc-gen.go index 06293249511..2a36c50704d 100644 --- a/dataproc/v1/dataproc-gen.go +++ b/dataproc/v1/dataproc-gen.go @@ -1557,9 +1557,10 @@ func (s *EnvironmentConfig) MarshalJSON() ([]byte, error) { type ExecutionConfig struct { // IdleTtl: Optional. The duration to keep the session alive while it's // idling. Passing this threshold will cause the session to be - // terminated. Minimum value is 30 minutes; maximum value is 14 days + // terminated. Minimum value is 10 minutes; maximum value is 14 days // (see JSON representation of Duration // (https://developers.google.com/protocol-buffers/docs/proto3#json)). + // Defaults to 10 minutes if not set. IdleTtl string `json:"idleTtl,omitempty"` // KmsKey: Optional. The Cloud KMS key to use for encryption. @@ -4563,7 +4564,8 @@ func (s *RuntimeConfig) MarshalJSON() ([]byte, error) { // RuntimeInfo: Runtime information about workload execution. type RuntimeInfo struct { // ApproximateUsage: Output only. Approximate workload resource usage - // calculated after workload finishes. + // calculated after workload finishes (see Dataproc Serverless pricing + // (https://cloud.google.com/dataproc-serverless/pricing)). ApproximateUsage *UsageMetrics `json:"approximateUsage,omitempty"` // DiagnosticOutputUri: Output only. A URI pointing to the location of @@ -4793,6 +4795,7 @@ type SoftwareConfig struct { // accessing HCatalog). // "JUPYTER" - The Jupyter Notebook. // "PRESTO" - The Presto query engine. + // "TRINO" - The Trino query engine. // "RANGER" - The Ranger service. // "SOLR" - The Solr service. // "ZEPPELIN" - The Zeppelin notebook. @@ -5658,14 +5661,17 @@ func (s *TrinoJob) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// UsageMetrics: Usage metrics represent total resources consumed by a -// workload. +// UsageMetrics: Usage metrics represent approximate total resources +// consumed by a workload. type UsageMetrics struct { - // MilliDcuSeconds: Optional. DCU usage in milliDCU*seconds. + // MilliDcuSeconds: Optional. DCU (Dataproc Compute Units) usage in + // (milliDCU x seconds) (see Dataproc Serverless pricing + // (https://cloud.google.com/dataproc-serverless/pricing)). MilliDcuSeconds int64 `json:"milliDcuSeconds,omitempty,string"` - // ShuffleStorageGbSeconds: Optional. Shuffle storage usage in - // GB*Seconds + // ShuffleStorageGbSeconds: Optional. Shuffle storage usage in (GB x + // seconds) (see Dataproc Serverless pricing + // (https://cloud.google.com/dataproc-serverless/pricing)). ShuffleStorageGbSeconds int64 `json:"shuffleStorageGbSeconds,omitempty,string"` // ForceSendFields is a list of field names (e.g. "MilliDcuSeconds") to diff --git a/dialogflow/v2/dialogflow-api.json b/dialogflow/v2/dialogflow-api.json index b71200067f3..cb0d2094c7b 100644 --- a/dialogflow/v2/dialogflow-api.json +++ b/dialogflow/v2/dialogflow-api.json @@ -8077,7 +8077,7 @@ } } }, - "revision": "20221026", + "revision": "20221109", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AudioInput": { @@ -12091,6 +12091,10 @@ ], "type": "string" }, + "cxCurrentPage": { + "description": "The unique identifier of the current Dialogflow CX conversation page. Format: `projects//locations//agents//flows//pages/`.", + "type": "string" + }, "detectIntentResponse": { "$ref": "GoogleCloudDialogflowV2DetectIntentResponse", "description": "Response of the Dialogflow Sessions.DetectIntent call." diff --git a/dialogflow/v2/dialogflow-gen.go b/dialogflow/v2/dialogflow-gen.go index 17b5081e614..d418a316ac5 100644 --- a/dialogflow/v2/dialogflow-gen.go +++ b/dialogflow/v2/dialogflow-gen.go @@ -8365,6 +8365,11 @@ type GoogleCloudDialogflowV2AutomatedAgentReply struct { // "FINAL" - Final reply. AutomatedAgentReplyType string `json:"automatedAgentReplyType,omitempty"` + // CxCurrentPage: The unique identifier of the current Dialogflow CX + // conversation page. Format: + // `projects//locations//agents//flows//pages/`. + CxCurrentPage string `json:"cxCurrentPage,omitempty"` + // DetectIntentResponse: Response of the Dialogflow // Sessions.DetectIntent call. DetectIntentResponse *GoogleCloudDialogflowV2DetectIntentResponse `json:"detectIntentResponse,omitempty"` diff --git a/dialogflow/v2beta1/dialogflow-api.json b/dialogflow/v2beta1/dialogflow-api.json index 2e2b65f1e4a..a49935641c8 100644 --- a/dialogflow/v2beta1/dialogflow-api.json +++ b/dialogflow/v2beta1/dialogflow-api.json @@ -7507,7 +7507,7 @@ } } }, - "revision": "20221026", + "revision": "20221109", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AudioInput": { @@ -13678,6 +13678,10 @@ ], "type": "string" }, + "cxCurrentPage": { + "description": "The unique identifier of the current Dialogflow CX conversation page. Format: `projects//locations//agents//flows//pages/`.", + "type": "string" + }, "cxSessionParameters": { "additionalProperties": { "description": "Properties of the object.", diff --git a/dialogflow/v2beta1/dialogflow-gen.go b/dialogflow/v2beta1/dialogflow-gen.go index c0bbcac4ebb..acc43f92030 100644 --- a/dialogflow/v2beta1/dialogflow-gen.go +++ b/dialogflow/v2beta1/dialogflow-gen.go @@ -11930,6 +11930,11 @@ type GoogleCloudDialogflowV2beta1AutomatedAgentReply struct { // "FINAL" - Final reply. AutomatedAgentReplyType string `json:"automatedAgentReplyType,omitempty"` + // CxCurrentPage: The unique identifier of the current Dialogflow CX + // conversation page. Format: + // `projects//locations//agents//flows//pages/`. + CxCurrentPage string `json:"cxCurrentPage,omitempty"` + // CxSessionParameters: The collection of current Dialogflow CX agent // session parameters at the time of this response. Deprecated: Use // `parameters` instead. diff --git a/dialogflow/v3/dialogflow-api.json b/dialogflow/v3/dialogflow-api.json index a219d39cc49..fff860f8d66 100644 --- a/dialogflow/v3/dialogflow-api.json +++ b/dialogflow/v3/dialogflow-api.json @@ -3820,7 +3820,7 @@ } } }, - "revision": "20221026", + "revision": "20221109", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { @@ -6909,7 +6909,7 @@ "type": "string" }, "retentionWindowDays": { - "description": "Retains data in interaction logging for the specified number of days. This does not apply to Cloud logging, which is owned by the user - not Dialogflow. User must set a value lower than Dialogflow's default 365d TTL (time to live). Setting a value higher than that has no effect. A missing value or setting to 0 also means we use Dialogflow's default TTL.", + "description": "Retains the data for the specified number of days. User must set a value lower than Dialogflow's default 365d TTL (30 days for Agent Assist traffic), higher value will be ignored and use default. Setting a value higher than that has no effect. A missing value or setting to 0 also means we use default TTL.", "format": "int32", "type": "integer" } diff --git a/dialogflow/v3/dialogflow-gen.go b/dialogflow/v3/dialogflow-gen.go index 5f735f43333..f9152281ff6 100644 --- a/dialogflow/v3/dialogflow-gen.go +++ b/dialogflow/v3/dialogflow-gen.go @@ -6261,12 +6261,11 @@ type GoogleCloudDialogflowCxV3SecuritySettings struct { // to be persisted. RedactionStrategy string `json:"redactionStrategy,omitempty"` - // RetentionWindowDays: Retains data in interaction logging for the - // specified number of days. This does not apply to Cloud logging, which - // is owned by the user - not Dialogflow. User must set a value lower - // than Dialogflow's default 365d TTL (time to live). Setting a value - // higher than that has no effect. A missing value or setting to 0 also - // means we use Dialogflow's default TTL. + // RetentionWindowDays: Retains the data for the specified number of + // days. User must set a value lower than Dialogflow's default 365d TTL + // (30 days for Agent Assist traffic), higher value will be ignored and + // use default. Setting a value higher than that has no effect. A + // missing value or setting to 0 also means we use default TTL. RetentionWindowDays int64 `json:"retentionWindowDays,omitempty"` // ServerResponse contains the HTTP response code and headers from the diff --git a/dialogflow/v3beta1/dialogflow-api.json b/dialogflow/v3beta1/dialogflow-api.json index 956a5216dca..d5f94c162fa 100644 --- a/dialogflow/v3beta1/dialogflow-api.json +++ b/dialogflow/v3beta1/dialogflow-api.json @@ -3820,7 +3820,7 @@ } } }, - "revision": "20221026", + "revision": "20221109", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AudioInput": { @@ -8700,7 +8700,7 @@ "type": "string" }, "retentionWindowDays": { - "description": "Retains data in interaction logging for the specified number of days. This does not apply to Cloud logging, which is owned by the user - not Dialogflow. User must set a value lower than Dialogflow's default 365d TTL (time to live). Setting a value higher than that has no effect. A missing value or setting to 0 also means we use Dialogflow's default TTL.", + "description": "Retains data in interaction logging for the specified number of days. This does not apply to Cloud logging, which is owned by the user - not Dialogflow. User must set a value lower than Dialogflow's default 365d TTL (30 days for Agent Assist traffic), higher value will be ignored and use default. Setting a value higher than that has no effect. A missing value or setting to 0 also means we use default TTL.", "format": "int32", "type": "integer" } diff --git a/dialogflow/v3beta1/dialogflow-gen.go b/dialogflow/v3beta1/dialogflow-gen.go index f4a18067103..0547ec4d2d0 100644 --- a/dialogflow/v3beta1/dialogflow-gen.go +++ b/dialogflow/v3beta1/dialogflow-gen.go @@ -9682,9 +9682,10 @@ type GoogleCloudDialogflowCxV3beta1SecuritySettings struct { // RetentionWindowDays: Retains data in interaction logging for the // specified number of days. This does not apply to Cloud logging, which // is owned by the user - not Dialogflow. User must set a value lower - // than Dialogflow's default 365d TTL (time to live). Setting a value - // higher than that has no effect. A missing value or setting to 0 also - // means we use Dialogflow's default TTL. + // than Dialogflow's default 365d TTL (30 days for Agent Assist + // traffic), higher value will be ignored and use default. Setting a + // value higher than that has no effect. A missing value or setting to 0 + // also means we use default TTL. RetentionWindowDays int64 `json:"retentionWindowDays,omitempty"` // ServerResponse contains the HTTP response code and headers from the diff --git a/displayvideo/v1/displayvideo-api.json b/displayvideo/v1/displayvideo-api.json index d25de9ada6f..e17c64c73f5 100644 --- a/displayvideo/v1/displayvideo-api.json +++ b/displayvideo/v1/displayvideo-api.json @@ -2264,7 +2264,7 @@ "lineItems": { "methods": { "bulkEditLineItemAssignedTargetingOptions": { - "description": "Bulk edits targeting options under a single line item. The operation will delete the assigned targeting options provided in BulkEditLineItemAssignedTargetingOptionsRequest.delete_requests and then create the assigned targeting options provided in BulkEditLineItemAssignedTargetingOptionsRequest.create_requests. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", + "description": "Bulk edits targeting options under a single line item. The operation will delete the assigned targeting options provided in BulkEditLineItemAssignedTargetingOptionsRequest.delete_requests and then create the assigned targeting options provided in BulkEditLineItemAssignedTargetingOptionsRequest.create_requests. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", "flatPath": "v1/advertisers/{advertisersId}/lineItems/{lineItemsId}:bulkEditLineItemAssignedTargetingOptions", "httpMethod": "POST", "id": "displayvideo.advertisers.lineItems.bulkEditLineItemAssignedTargetingOptions", @@ -2533,7 +2533,7 @@ ] }, "patch": { - "description": "Updates an existing line item. Returns the updated line item if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", + "description": "Updates an existing line item. Returns the updated line item if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * BulkUpdateLineItems * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", "flatPath": "v1/advertisers/{advertisersId}/lineItems/{lineItemsId}", "httpMethod": "PATCH", "id": "displayvideo.advertisers.lineItems.patch", @@ -2583,7 +2583,7 @@ "assignedTargetingOptions": { "methods": { "create": { - "description": "Assigns a targeting option to a line item. Returns the assigned targeting option if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", + "description": "Assigns a targeting option to a line item. Returns the assigned targeting option if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * BulkUpdate * UpdateLineItem * DeleteLineItemAssignedTargetingOption", "flatPath": "v1/advertisers/{advertisersId}/lineItems/{lineItemsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions", "httpMethod": "POST", "id": "displayvideo.advertisers.lineItems.targetingTypes.assignedTargetingOptions.create", @@ -2725,7 +2725,7 @@ ] }, "delete": { - "description": "Deletes an assigned targeting option from a line item. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", + "description": "Deletes an assigned targeting option from a line item. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * BulkUpdate * UpdateLineItem * CreateLineItemAssignedTargetingOption", "flatPath": "v1/advertisers/{advertisersId}/lineItems/{lineItemsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions/{assignedTargetingOptionsId}", "httpMethod": "DELETE", "id": "displayvideo.advertisers.lineItems.targetingTypes.assignedTargetingOptions.delete", @@ -8146,7 +8146,7 @@ } } }, - "revision": "20221107", + "revision": "20221110", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActivateManualTriggerRequest": { diff --git a/displayvideo/v1/displayvideo-gen.go b/displayvideo/v1/displayvideo-gen.go index 977698ad726..f0b76262838 100644 --- a/displayvideo/v1/displayvideo-gen.go +++ b/displayvideo/v1/displayvideo-gen.go @@ -24368,8 +24368,7 @@ type AdvertisersLineItemsBulkEditLineItemAssignedTargetingOptionsCall struct { // then create the assigned targeting options provided in // BulkEditLineItemAssignedTargetingOptionsRequest.create_requests. // Requests to this endpoint cannot be made concurrently with the -// following requests updating the same line item: * -// BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * +// following requests updating the same line item: * UpdateLineItem * // CreateLineItemAssignedTargetingOption * // DeleteLineItemAssignedTargetingOption // @@ -24478,7 +24477,7 @@ func (c *AdvertisersLineItemsBulkEditLineItemAssignedTargetingOptionsCall) Do(op } return ret, nil // { - // "description": "Bulk edits targeting options under a single line item. The operation will delete the assigned targeting options provided in BulkEditLineItemAssignedTargetingOptionsRequest.delete_requests and then create the assigned targeting options provided in BulkEditLineItemAssignedTargetingOptionsRequest.create_requests. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", + // "description": "Bulk edits targeting options under a single line item. The operation will delete the assigned targeting options provided in BulkEditLineItemAssignedTargetingOptionsRequest.delete_requests and then create the assigned targeting options provided in BulkEditLineItemAssignedTargetingOptionsRequest.create_requests. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", // "flatPath": "v1/advertisers/{advertisersId}/lineItems/{lineItemsId}:bulkEditLineItemAssignedTargetingOptions", // "httpMethod": "POST", // "id": "displayvideo.advertisers.lineItems.bulkEditLineItemAssignedTargetingOptions", @@ -25648,7 +25647,7 @@ type AdvertisersLineItemsPatchCall struct { // Patch: Updates an existing line item. Returns the updated line item // if successful. Requests to this endpoint cannot be made concurrently // with the following requests updating the same line item: * -// BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * +// BulkEditAssignedTargetingOptions * BulkUpdateLineItems * // CreateLineItemAssignedTargetingOption * // DeleteLineItemAssignedTargetingOption // @@ -25763,7 +25762,7 @@ func (c *AdvertisersLineItemsPatchCall) Do(opts ...googleapi.CallOption) (*LineI } return ret, nil // { - // "description": "Updates an existing line item. Returns the updated line item if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", + // "description": "Updates an existing line item. Returns the updated line item if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * BulkUpdateLineItems * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", // "flatPath": "v1/advertisers/{advertisersId}/lineItems/{lineItemsId}", // "httpMethod": "PATCH", // "id": "displayvideo.advertisers.lineItems.patch", @@ -25825,9 +25824,8 @@ type AdvertisersLineItemsTargetingTypesAssignedTargetingOptionsCreateCall struct // Create: Assigns a targeting option to a line item. Returns the // assigned targeting option if successful. Requests to this endpoint // cannot be made concurrently with the following requests updating the -// same line item: * BulkEditLineItemAssignedTargetingOptions * -// UpdateLineItem * CreateLineItemAssignedTargetingOption * -// DeleteLineItemAssignedTargetingOption +// same line item: * BulkEditAssignedTargetingOptions * BulkUpdate * +// UpdateLineItem * DeleteLineItemAssignedTargetingOption // // - advertiserId: The ID of the advertiser the line item belongs to. // - lineItemId: The ID of the line item the assigned targeting option @@ -25936,7 +25934,7 @@ func (c *AdvertisersLineItemsTargetingTypesAssignedTargetingOptionsCreateCall) D } return ret, nil // { - // "description": "Assigns a targeting option to a line item. Returns the assigned targeting option if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", + // "description": "Assigns a targeting option to a line item. Returns the assigned targeting option if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * BulkUpdate * UpdateLineItem * DeleteLineItemAssignedTargetingOption", // "flatPath": "v1/advertisers/{advertisersId}/lineItems/{lineItemsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions", // "httpMethod": "POST", // "id": "displayvideo.advertisers.lineItems.targetingTypes.assignedTargetingOptions.create", @@ -26096,9 +26094,8 @@ type AdvertisersLineItemsTargetingTypesAssignedTargetingOptionsDeleteCall struct // Delete: Deletes an assigned targeting option from a line item. // Requests to this endpoint cannot be made concurrently with the // following requests updating the same line item: * -// BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * -// CreateLineItemAssignedTargetingOption * -// DeleteLineItemAssignedTargetingOption +// BulkEditAssignedTargetingOptions * BulkUpdate * UpdateLineItem * +// CreateLineItemAssignedTargetingOption // // - advertiserId: The ID of the advertiser the line item belongs to. // - assignedTargetingOptionId: The ID of the assigned targeting option @@ -26205,7 +26202,7 @@ func (c *AdvertisersLineItemsTargetingTypesAssignedTargetingOptionsDeleteCall) D } return ret, nil // { - // "description": "Deletes an assigned targeting option from a line item. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", + // "description": "Deletes an assigned targeting option from a line item. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * BulkUpdate * UpdateLineItem * CreateLineItemAssignedTargetingOption", // "flatPath": "v1/advertisers/{advertisersId}/lineItems/{lineItemsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions/{assignedTargetingOptionsId}", // "httpMethod": "DELETE", // "id": "displayvideo.advertisers.lineItems.targetingTypes.assignedTargetingOptions.delete", diff --git a/displayvideo/v2/displayvideo-api.json b/displayvideo/v2/displayvideo-api.json index d5983fddb4e..7c7e9f07835 100644 --- a/displayvideo/v2/displayvideo-api.json +++ b/displayvideo/v2/displayvideo-api.json @@ -2553,7 +2553,7 @@ "lineItems": { "methods": { "bulkEditAssignedTargetingOptions": { - "description": "Bulk edits targeting options under multiple line items. The operation will delete the assigned targeting options provided in BulkEditAssignedTargetingOptionsRequest.delete_requests and then create the assigned targeting options provided in BulkEditAssignedTargetingOptionsRequest.create_requests .", + "description": "Bulk edits targeting options under multiple line items. The operation will delete the assigned targeting options provided in BulkEditAssignedTargetingOptionsRequest.delete_requests and then create the assigned targeting options provided in BulkEditAssignedTargetingOptionsRequest.create_requests. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkUpdate * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", "flatPath": "v2/advertisers/{advertisersId}/lineItems:bulkEditAssignedTargetingOptions", "httpMethod": "POST", "id": "displayvideo.advertisers.lineItems.bulkEditAssignedTargetingOptions", @@ -2636,7 +2636,7 @@ ] }, "bulkUpdate": { - "description": "Updates multiple line items.", + "description": "Updates multiple line items. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", "flatPath": "v2/advertisers/{advertisersId}/lineItems:bulkUpdate", "httpMethod": "POST", "id": "displayvideo.advertisers.lineItems.bulkUpdate", @@ -2875,7 +2875,7 @@ ] }, "patch": { - "description": "Updates an existing line item. Returns the updated line item if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", + "description": "Updates an existing line item. Returns the updated line item if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * BulkUpdateLineItems * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", "flatPath": "v2/advertisers/{advertisersId}/lineItems/{lineItemsId}", "httpMethod": "PATCH", "id": "displayvideo.advertisers.lineItems.patch", @@ -2925,7 +2925,7 @@ "assignedTargetingOptions": { "methods": { "create": { - "description": "Assigns a targeting option to a line item. Returns the assigned targeting option if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", + "description": "Assigns a targeting option to a line item. Returns the assigned targeting option if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * BulkUpdate * UpdateLineItem * DeleteLineItemAssignedTargetingOption", "flatPath": "v2/advertisers/{advertisersId}/lineItems/{lineItemsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions", "httpMethod": "POST", "id": "displayvideo.advertisers.lineItems.targetingTypes.assignedTargetingOptions.create", @@ -3067,7 +3067,7 @@ ] }, "delete": { - "description": "Deletes an assigned targeting option from a line item. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", + "description": "Deletes an assigned targeting option from a line item. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * BulkUpdate * UpdateLineItem * CreateLineItemAssignedTargetingOption", "flatPath": "v2/advertisers/{advertisersId}/lineItems/{lineItemsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions/{assignedTargetingOptionsId}", "httpMethod": "DELETE", "id": "displayvideo.advertisers.lineItems.targetingTypes.assignedTargetingOptions.delete", @@ -8488,7 +8488,7 @@ } } }, - "revision": "20221107", + "revision": "20221110", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActivateManualTriggerRequest": { @@ -8751,7 +8751,13 @@ "AdvertiserBillingConfig": { "description": "Billing related settings of an advertiser.", "id": "AdvertiserBillingConfig", - "properties": {}, + "properties": { + "billingProfileId": { + "description": "The ID of a billing profile assigned to the advertiser.", + "format": "int64", + "type": "string" + } + }, "type": "object" }, "AdvertiserCreativeConfig": { @@ -14084,7 +14090,10 @@ "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE", "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_AUDIO", "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_REACH", - "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_SIMPLE" + "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_SIMPLE", + "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_NON_SKIPPABLE_OVER_THE_TOP", + "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_REACH_OVER_THE_TOP", + "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_SIMPLE_OVER_THE_TOP" ], "enumDescriptions": [ "Type value is not specified or is unknown in this version. Line items of this type and their targeting cannot be created or updated using the API.", @@ -14101,7 +14110,10 @@ "YouTube video ads that show a story in a particular sequence using a mix of formats. Line items of this type and their targeting cannot be created or updated using the API.", "YouTube audio ads. Line items of this type and their targeting cannot be created or updated using the API.", "YouTube video ads that optimize reaching more unique users at lower cost. May include bumper ads, skippable in-stream ads, or a mix of types. Line items of this type and their targeting cannot be created or updated using the API.", - "Default YouTube video ads. Line items of this type and their targeting cannot be created or updated using the API." + "Default YouTube video ads. Line items of this type and their targeting cannot be created or updated using the API.", + "Connected TV youTube video ads (up to 15 seconds) that cannot be skipped. Line items of this type and their targeting cannot be created or updated using the API.", + "Connected TV youTube video ads that optimize reaching more unique users at lower cost. May include bumper ads, skippable in-stream ads, or a mix of types. Line items of this type and their targeting cannot be created or updated using the API.", + "Connected TV default YouTube video ads. Only include in-stream ad-format. Line items of this type and their targeting cannot be created or updated using the API." ], "type": "string" }, @@ -15944,7 +15956,10 @@ "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE", "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_AUDIO", "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_REACH", - "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_SIMPLE" + "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_SIMPLE", + "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_NON_SKIPPABLE_OVER_THE_TOP", + "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_REACH_OVER_THE_TOP", + "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_SIMPLE_OVER_THE_TOP" ], "enumDescriptions": [ "Type value is not specified or is unknown in this version. Line items of this type and their targeting cannot be created or updated using the API.", @@ -15961,7 +15976,10 @@ "YouTube video ads that show a story in a particular sequence using a mix of formats. Line items of this type and their targeting cannot be created or updated using the API.", "YouTube audio ads. Line items of this type and their targeting cannot be created or updated using the API.", "YouTube video ads that optimize reaching more unique users at lower cost. May include bumper ads, skippable in-stream ads, or a mix of types. Line items of this type and their targeting cannot be created or updated using the API.", - "Default YouTube video ads. Line items of this type and their targeting cannot be created or updated using the API." + "Default YouTube video ads. Line items of this type and their targeting cannot be created or updated using the API.", + "Connected TV youTube video ads (up to 15 seconds) that cannot be skipped. Line items of this type and their targeting cannot be created or updated using the API.", + "Connected TV youTube video ads that optimize reaching more unique users at lower cost. May include bumper ads, skippable in-stream ads, or a mix of types. Line items of this type and their targeting cannot be created or updated using the API.", + "Connected TV default YouTube video ads. Only include in-stream ad-format. Line items of this type and their targeting cannot be created or updated using the API." ], "type": "string" }, diff --git a/displayvideo/v2/displayvideo-gen.go b/displayvideo/v2/displayvideo-gen.go index 2678e8d1334..66c197729b6 100644 --- a/displayvideo/v2/displayvideo-gen.go +++ b/displayvideo/v2/displayvideo-gen.go @@ -972,6 +972,32 @@ func (s *AdvertiserAdServerConfig) MarshalJSON() ([]byte, error) { // AdvertiserBillingConfig: Billing related settings of an advertiser. type AdvertiserBillingConfig struct { + // BillingProfileId: The ID of a billing profile assigned to the + // advertiser. + BillingProfileId int64 `json:"billingProfileId,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "BillingProfileId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BillingProfileId") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AdvertiserBillingConfig) MarshalJSON() ([]byte, error) { + type NoMethod AdvertiserBillingConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // AdvertiserCreativeConfig: Creatives related settings of an @@ -8782,6 +8808,19 @@ type GenerateDefaultLineItemRequest struct { // "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_SIMPLE" - Default YouTube // video ads. Line items of this type and their targeting cannot be // created or updated using the API. + // "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_NON_SKIPPABLE_OVER_THE_TOP" - + // Connected TV youTube video ads (up to 15 seconds) that cannot be + // skipped. Line items of this type and their targeting cannot be + // created or updated using the API. + // "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_REACH_OVER_THE_TOP" - + // Connected TV youTube video ads that optimize reaching more unique + // users at lower cost. May include bumper ads, skippable in-stream ads, + // or a mix of types. Line items of this type and their targeting cannot + // be created or updated using the API. + // "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_SIMPLE_OVER_THE_TOP" - + // Connected TV default YouTube video ads. Only include in-stream + // ad-format. Line items of this type and their targeting cannot be + // created or updated using the API. LineItemType string `json:"lineItemType,omitempty"` // MobileApp: The mobile app promoted by the line item. This is @@ -10994,6 +11033,19 @@ type LineItem struct { // "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_SIMPLE" - Default YouTube // video ads. Line items of this type and their targeting cannot be // created or updated using the API. + // "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_NON_SKIPPABLE_OVER_THE_TOP" - + // Connected TV youTube video ads (up to 15 seconds) that cannot be + // skipped. Line items of this type and their targeting cannot be + // created or updated using the API. + // "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_REACH_OVER_THE_TOP" - + // Connected TV youTube video ads that optimize reaching more unique + // users at lower cost. May include bumper ads, skippable in-stream ads, + // or a mix of types. Line items of this type and their targeting cannot + // be created or updated using the API. + // "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_SIMPLE_OVER_THE_TOP" - + // Connected TV default YouTube video ads. Only include in-stream + // ad-format. Line items of this type and their targeting cannot be + // created or updated using the API. LineItemType string `json:"lineItemType,omitempty"` // MobileApp: The mobile app promoted by the line item. This is @@ -25559,7 +25611,11 @@ type AdvertisersLineItemsBulkEditAssignedTargetingOptionsCall struct { // options provided in // BulkEditAssignedTargetingOptionsRequest.delete_requests and then // create the assigned targeting options provided in -// BulkEditAssignedTargetingOptionsRequest.create_requests . +// BulkEditAssignedTargetingOptionsRequest.create_requests. Requests to +// this endpoint cannot be made concurrently with the following requests +// updating the same line item: * BulkUpdate * UpdateLineItem * +// CreateLineItemAssignedTargetingOption * +// DeleteLineItemAssignedTargetingOption // // - advertiserId: The ID of the advertiser the line items belong to. func (r *AdvertisersLineItemsService) BulkEditAssignedTargetingOptions(advertiserId int64, bulkeditassignedtargetingoptionsrequest *BulkEditAssignedTargetingOptionsRequest) *AdvertisersLineItemsBulkEditAssignedTargetingOptionsCall { @@ -25662,7 +25718,7 @@ func (c *AdvertisersLineItemsBulkEditAssignedTargetingOptionsCall) Do(opts ...go } return ret, nil // { - // "description": "Bulk edits targeting options under multiple line items. The operation will delete the assigned targeting options provided in BulkEditAssignedTargetingOptionsRequest.delete_requests and then create the assigned targeting options provided in BulkEditAssignedTargetingOptionsRequest.create_requests .", + // "description": "Bulk edits targeting options under multiple line items. The operation will delete the assigned targeting options provided in BulkEditAssignedTargetingOptionsRequest.delete_requests and then create the assigned targeting options provided in BulkEditAssignedTargetingOptionsRequest.create_requests. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkUpdate * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", // "flatPath": "v2/advertisers/{advertisersId}/lineItems:bulkEditAssignedTargetingOptions", // "httpMethod": "POST", // "id": "displayvideo.advertisers.lineItems.bulkEditAssignedTargetingOptions", @@ -25961,7 +26017,11 @@ type AdvertisersLineItemsBulkUpdateCall struct { header_ http.Header } -// BulkUpdate: Updates multiple line items. +// BulkUpdate: Updates multiple line items. Requests to this endpoint +// cannot be made concurrently with the following requests updating the +// same line item: * BulkEditAssignedTargetingOptions * UpdateLineItem * +// CreateLineItemAssignedTargetingOption * +// DeleteLineItemAssignedTargetingOption // // - advertisersId: . func (r *AdvertisersLineItemsService) BulkUpdate(advertisersId string, bulkupdatelineitemsrequest *BulkUpdateLineItemsRequest) *AdvertisersLineItemsBulkUpdateCall { @@ -26062,7 +26122,7 @@ func (c *AdvertisersLineItemsBulkUpdateCall) Do(opts ...googleapi.CallOption) (* } return ret, nil // { - // "description": "Updates multiple line items.", + // "description": "Updates multiple line items. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", // "flatPath": "v2/advertisers/{advertisersId}/lineItems:bulkUpdate", // "httpMethod": "POST", // "id": "displayvideo.advertisers.lineItems.bulkUpdate", @@ -27124,7 +27184,7 @@ type AdvertisersLineItemsPatchCall struct { // Patch: Updates an existing line item. Returns the updated line item // if successful. Requests to this endpoint cannot be made concurrently // with the following requests updating the same line item: * -// BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * +// BulkEditAssignedTargetingOptions * BulkUpdateLineItems * // CreateLineItemAssignedTargetingOption * // DeleteLineItemAssignedTargetingOption // @@ -27239,7 +27299,7 @@ func (c *AdvertisersLineItemsPatchCall) Do(opts ...googleapi.CallOption) (*LineI } return ret, nil // { - // "description": "Updates an existing line item. Returns the updated line item if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", + // "description": "Updates an existing line item. Returns the updated line item if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * BulkUpdateLineItems * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", // "flatPath": "v2/advertisers/{advertisersId}/lineItems/{lineItemsId}", // "httpMethod": "PATCH", // "id": "displayvideo.advertisers.lineItems.patch", @@ -27301,9 +27361,8 @@ type AdvertisersLineItemsTargetingTypesAssignedTargetingOptionsCreateCall struct // Create: Assigns a targeting option to a line item. Returns the // assigned targeting option if successful. Requests to this endpoint // cannot be made concurrently with the following requests updating the -// same line item: * BulkEditLineItemAssignedTargetingOptions * -// UpdateLineItem * CreateLineItemAssignedTargetingOption * -// DeleteLineItemAssignedTargetingOption +// same line item: * BulkEditAssignedTargetingOptions * BulkUpdate * +// UpdateLineItem * DeleteLineItemAssignedTargetingOption // // - advertiserId: The ID of the advertiser the line item belongs to. // - lineItemId: The ID of the line item the assigned targeting option @@ -27412,7 +27471,7 @@ func (c *AdvertisersLineItemsTargetingTypesAssignedTargetingOptionsCreateCall) D } return ret, nil // { - // "description": "Assigns a targeting option to a line item. Returns the assigned targeting option if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", + // "description": "Assigns a targeting option to a line item. Returns the assigned targeting option if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * BulkUpdate * UpdateLineItem * DeleteLineItemAssignedTargetingOption", // "flatPath": "v2/advertisers/{advertisersId}/lineItems/{lineItemsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions", // "httpMethod": "POST", // "id": "displayvideo.advertisers.lineItems.targetingTypes.assignedTargetingOptions.create", @@ -27572,9 +27631,8 @@ type AdvertisersLineItemsTargetingTypesAssignedTargetingOptionsDeleteCall struct // Delete: Deletes an assigned targeting option from a line item. // Requests to this endpoint cannot be made concurrently with the // following requests updating the same line item: * -// BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * -// CreateLineItemAssignedTargetingOption * -// DeleteLineItemAssignedTargetingOption +// BulkEditAssignedTargetingOptions * BulkUpdate * UpdateLineItem * +// CreateLineItemAssignedTargetingOption // // - advertiserId: The ID of the advertiser the line item belongs to. // - assignedTargetingOptionId: The ID of the assigned targeting option @@ -27681,7 +27739,7 @@ func (c *AdvertisersLineItemsTargetingTypesAssignedTargetingOptionsDeleteCall) D } return ret, nil // { - // "description": "Deletes an assigned targeting option from a line item. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditLineItemAssignedTargetingOptions * UpdateLineItem * CreateLineItemAssignedTargetingOption * DeleteLineItemAssignedTargetingOption", + // "description": "Deletes an assigned targeting option from a line item. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * BulkUpdate * UpdateLineItem * CreateLineItemAssignedTargetingOption", // "flatPath": "v2/advertisers/{advertisersId}/lineItems/{lineItemsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions/{assignedTargetingOptionsId}", // "httpMethod": "DELETE", // "id": "displayvideo.advertisers.lineItems.targetingTypes.assignedTargetingOptions.delete", diff --git a/dlp/v2/dlp-api.json b/dlp/v2/dlp-api.json index 6c96b15f240..02623aa4c4a 100644 --- a/dlp/v2/dlp-api.json +++ b/dlp/v2/dlp-api.json @@ -3412,7 +3412,7 @@ } } }, - "revision": "20221029", + "revision": "20221106", "rootUrl": "https://dlp.googleapis.com/", "schemas": { "GooglePrivacyDlpV2Action": { @@ -4743,7 +4743,7 @@ }, "item": { "$ref": "GooglePrivacyDlpV2ContentItem", - "description": "The item to de-identify. Will be treated as text." + "description": "The item to de-identify. Will be treated as text. This value must be of type Table if your deidentify_config is a RecordTransformations object." }, "locationId": { "description": "Deprecated. This field has no effect.", @@ -5620,7 +5620,8 @@ "UNITED_STATES", "URUGUAY", "VENEZUELA", - "INTERNAL" + "INTERNAL", + "NEW_ZEALAND" ], "enumDescriptions": [ "Unused location", @@ -5663,7 +5664,8 @@ "The infoType is typically used in the United States.", "The infoType is typically used in Uruguay.", "The infoType is typically used in Venezuela.", - "The infoType is typically used in Google internally." + "The infoType is typically used in Google internally.", + "The infoType is typically used in New Zealand." ], "type": "string" }, diff --git a/dlp/v2/dlp-gen.go b/dlp/v2/dlp-gen.go index c91d3a5e0e8..9a175ea3909 100644 --- a/dlp/v2/dlp-gen.go +++ b/dlp/v2/dlp-gen.go @@ -2862,7 +2862,9 @@ type GooglePrivacyDlpV2DeidentifyContentRequest struct { // Singular sub-messages and groups are recursively merged. InspectTemplateName string `json:"inspectTemplateName,omitempty"` - // Item: The item to de-identify. Will be treated as text. + // Item: The item to de-identify. Will be treated as text. This value + // must be of type Table if your deidentify_config is a + // RecordTransformations object. Item *GooglePrivacyDlpV2ContentItem `json:"item,omitempty"` // LocationId: Deprecated. This field has no effect. @@ -4521,6 +4523,7 @@ type GooglePrivacyDlpV2InfoTypeCategory struct { // "URUGUAY" - The infoType is typically used in Uruguay. // "VENEZUELA" - The infoType is typically used in Venezuela. // "INTERNAL" - The infoType is typically used in Google internally. + // "NEW_ZEALAND" - The infoType is typically used in New Zealand. LocationCategory string `json:"locationCategory,omitempty"` // TypeCategory: The class of identifiers where this infoType belongs diff --git a/dns/v1/dns-api.json b/dns/v1/dns-api.json index a7721407c40..0608c6afaed 100644 --- a/dns/v1/dns-api.json +++ b/dns/v1/dns-api.json @@ -1824,7 +1824,7 @@ } } }, - "revision": "20221013", + "revision": "20221110", "rootUrl": "https://dns.googleapis.com/", "schemas": { "Change": { @@ -2450,6 +2450,10 @@ "description": "IPv4 address of a target name server.", "type": "string" }, + "ipv6Address": { + "description": "IPv6 address of a target name server. Does not accept both fields (ipv4 \u0026 ipv6) being populated. Public preview as of November 2022.", + "type": "string" + }, "kind": { "default": "dns#managedZoneForwardingConfigNameServerTarget", "type": "string" @@ -2837,6 +2841,10 @@ "description": "IPv4 address to forward queries to.", "type": "string" }, + "ipv6Address": { + "description": "IPv6 address to forward to. Does not accept both fields (ipv4 \u0026 ipv6) being populated. Public preview as of November 2022.", + "type": "string" + }, "kind": { "default": "dns#policyAlternativeNameServerConfigTargetNameServer", "type": "string" diff --git a/dns/v1/dns-gen.go b/dns/v1/dns-gen.go index daf21e4cd7d..378d5a5ef91 100644 --- a/dns/v1/dns-gen.go +++ b/dns/v1/dns-gen.go @@ -1367,6 +1367,11 @@ type ManagedZoneForwardingConfigNameServerTarget struct { // Ipv4Address: IPv4 address of a target name server. Ipv4Address string `json:"ipv4Address,omitempty"` + // Ipv6Address: IPv6 address of a target name server. Does not accept + // both fields (ipv4 & ipv6) being populated. Public preview as of + // November 2022. + Ipv6Address string `json:"ipv6Address,omitempty"` + Kind string `json:"kind,omitempty"` // ForceSendFields is a list of field names (e.g. "ForwardingPath") to @@ -2108,6 +2113,10 @@ type PolicyAlternativeNameServerConfigTargetNameServer struct { // Ipv4Address: IPv4 address to forward queries to. Ipv4Address string `json:"ipv4Address,omitempty"` + // Ipv6Address: IPv6 address to forward to. Does not accept both fields + // (ipv4 & ipv6) being populated. Public preview as of November 2022. + Ipv6Address string `json:"ipv6Address,omitempty"` + Kind string `json:"kind,omitempty"` // ForceSendFields is a list of field names (e.g. "ForwardingPath") to diff --git a/dns/v1beta2/dns-api.json b/dns/v1beta2/dns-api.json index e4b789d3c9b..6a9c6e8bb36 100644 --- a/dns/v1beta2/dns-api.json +++ b/dns/v1beta2/dns-api.json @@ -1821,7 +1821,7 @@ } } }, - "revision": "20221013", + "revision": "20221110", "rootUrl": "https://dns.googleapis.com/", "schemas": { "Change": { @@ -2448,7 +2448,7 @@ "type": "string" }, "ipv6Address": { - "description": "IPv6 address of a target name server. Does not accept both fields (ipv4 \u0026 ipv6) being populated.", + "description": "IPv6 address of a target name server. Does not accept both fields (ipv4 \u0026 ipv6) being populated. Public preview as of November 2022.", "type": "string" }, "kind": { @@ -2839,7 +2839,7 @@ "type": "string" }, "ipv6Address": { - "description": "IPv6 address to forward to. Does not accept both fields (ipv4 \u0026 ipv6) being populated.", + "description": "IPv6 address to forward to. Does not accept both fields (ipv4 \u0026 ipv6) being populated. Public preview as of November 2022.", "type": "string" }, "kind": { diff --git a/dns/v1beta2/dns-gen.go b/dns/v1beta2/dns-gen.go index a1eae6dd2f7..4cd920f4cc7 100644 --- a/dns/v1beta2/dns-gen.go +++ b/dns/v1beta2/dns-gen.go @@ -1368,7 +1368,8 @@ type ManagedZoneForwardingConfigNameServerTarget struct { Ipv4Address string `json:"ipv4Address,omitempty"` // Ipv6Address: IPv6 address of a target name server. Does not accept - // both fields (ipv4 & ipv6) being populated. + // both fields (ipv4 & ipv6) being populated. Public preview as of + // November 2022. Ipv6Address string `json:"ipv6Address,omitempty"` Kind string `json:"kind,omitempty"` @@ -2113,7 +2114,7 @@ type PolicyAlternativeNameServerConfigTargetNameServer struct { Ipv4Address string `json:"ipv4Address,omitempty"` // Ipv6Address: IPv6 address to forward to. Does not accept both fields - // (ipv4 & ipv6) being populated. + // (ipv4 & ipv6) being populated. Public preview as of November 2022. Ipv6Address string `json:"ipv6Address,omitempty"` Kind string `json:"kind,omitempty"` diff --git a/documentai/v1/documentai-api.json b/documentai/v1/documentai-api.json index 487e8795b7a..102be59b476 100644 --- a/documentai/v1/documentai-api.json +++ b/documentai/v1/documentai-api.json @@ -1069,7 +1069,7 @@ } } }, - "revision": "20221106", + "revision": "20221108", "rootUrl": "https://documentai.googleapis.com/", "schemas": { "GoogleCloudDocumentaiUiv1beta3BatchDeleteDocumentsMetadata": { @@ -3080,10 +3080,6 @@ "description": "User defined name for the type.", "type": "string" }, - "entityTypeMetadata": { - "$ref": "GoogleCloudDocumentaiV1EntityTypeMetadata", - "description": "Metadata for the entity type." - }, "enumValues": { "$ref": "GoogleCloudDocumentaiV1DocumentSchemaEntityTypeEnumValues", "description": "If specified, lists all the possible values for this entity. This should not be more than a handful of values. If the number of values is \u003e10 or could change frequently use the `EntityType.value_ontology` field and specify a list of all possible values in a value ontology file." @@ -3142,10 +3138,6 @@ ], "type": "string" }, - "propertyMetadata": { - "$ref": "GoogleCloudDocumentaiV1PropertyMetadata", - "description": "Any additional metadata about the property can be added here." - }, "valueType": { "description": "A reference to the value type of the property. This type is subject to the same conventions as the `Entity.base_types` field.", "type": "string" @@ -3333,25 +3325,6 @@ "properties": {}, "type": "object" }, - "GoogleCloudDocumentaiV1EntityTypeMetadata": { - "description": "Metadata about an entity type.", - "id": "GoogleCloudDocumentaiV1EntityTypeMetadata", - "properties": { - "humanReviewLabelingMetadata": { - "$ref": "GoogleCloudDocumentaiV1HumanReviewLabelingMetadata", - "description": "Human review labeling config on the property." - }, - "humanReviewMetadata": { - "$ref": "GoogleCloudDocumentaiV1HumanReviewValidationMetadata", - "description": "Human review config on the entity type." - }, - "inactive": { - "description": "Whether the entity type should be considered as \"inactive\".", - "type": "boolean" - } - }, - "type": "object" - }, "GoogleCloudDocumentaiV1FetchProcessorTypesResponse": { "description": "Response message for fetch processor types.", "id": "GoogleCloudDocumentaiV1FetchProcessorTypesResponse", @@ -3406,17 +3379,6 @@ }, "type": "object" }, - "GoogleCloudDocumentaiV1HumanReviewLabelingMetadata": { - "description": "Metadata for human review labeling config.", - "id": "GoogleCloudDocumentaiV1HumanReviewLabelingMetadata", - "properties": { - "enableNormalizationEditing": { - "description": "Whether to enable normalization editing.", - "type": "boolean" - } - }, - "type": "object" - }, "GoogleCloudDocumentaiV1HumanReviewStatus": { "description": "The status of human review on a processed document.", "id": "GoogleCloudDocumentaiV1HumanReviewStatus", @@ -3450,22 +3412,6 @@ }, "type": "object" }, - "GoogleCloudDocumentaiV1HumanReviewValidationMetadata": { - "description": "Metadata for Human Review config.", - "id": "GoogleCloudDocumentaiV1HumanReviewValidationMetadata", - "properties": { - "confidenceThreshold": { - "description": "The confidence threshold if human review validation is enabled.", - "format": "float", - "type": "number" - }, - "enableValidation": { - "description": "Whether to enable human review validation.", - "type": "boolean" - } - }, - "type": "object" - }, "GoogleCloudDocumentaiV1ListProcessorTypesResponse": { "description": "Response message for list processor types.", "id": "GoogleCloudDocumentaiV1ListProcessorTypesResponse", @@ -3721,6 +3667,10 @@ "description": "The display name of the processor version.", "type": "string" }, + "documentSchema": { + "$ref": "GoogleCloudDocumentaiV1DocumentSchema", + "description": "The schema of the processor version. Describes the output." + }, "googleManaged": { "description": "Denotes that this ProcessorVersion is managed by google.", "type": "boolean" @@ -3780,25 +3730,6 @@ }, "type": "object" }, - "GoogleCloudDocumentaiV1PropertyMetadata": { - "description": "Metadata about a property.", - "id": "GoogleCloudDocumentaiV1PropertyMetadata", - "properties": { - "humanReviewLabelingMetadata": { - "$ref": "GoogleCloudDocumentaiV1HumanReviewLabelingMetadata", - "description": "Human review labeling config on the property." - }, - "humanReviewMetadata": { - "$ref": "GoogleCloudDocumentaiV1HumanReviewValidationMetadata", - "description": "Human review validation config on the property." - }, - "inactive": { - "description": "Whether the property should be considered as \"inactive\".", - "type": "boolean" - } - }, - "type": "object" - }, "GoogleCloudDocumentaiV1RawDocument": { "description": "Payload message of raw document content (bytes).", "id": "GoogleCloudDocumentaiV1RawDocument", diff --git a/documentai/v1/documentai-gen.go b/documentai/v1/documentai-gen.go index 5d37a9b8021..bbcc9ca7a89 100644 --- a/documentai/v1/documentai-gen.go +++ b/documentai/v1/documentai-gen.go @@ -3644,9 +3644,6 @@ type GoogleCloudDocumentaiV1DocumentSchemaEntityType struct { // DisplayName: User defined name for the type. DisplayName string `json:"displayName,omitempty"` - // EntityTypeMetadata: Metadata for the entity type. - EntityTypeMetadata *GoogleCloudDocumentaiV1EntityTypeMetadata `json:"entityTypeMetadata,omitempty"` - // EnumValues: If specified, lists all the possible values for this // entity. This should not be more than a handful of values. If the // number of values is >10 or could change frequently use the @@ -3742,10 +3739,6 @@ type GoogleCloudDocumentaiV1DocumentSchemaEntityTypeProperty struct { // times. OccurrenceType string `json:"occurrenceType,omitempty"` - // PropertyMetadata: Any additional metadata about the property can be - // added here. - PropertyMetadata *GoogleCloudDocumentaiV1PropertyMetadata `json:"propertyMetadata,omitempty"` - // ValueType: A reference to the value type of the property. This type // is subject to the same conventions as the `Entity.base_types` field. ValueType string `json:"valueType,omitempty"` @@ -4108,44 +4101,6 @@ type GoogleCloudDocumentaiV1EnableProcessorRequest struct { type GoogleCloudDocumentaiV1EnableProcessorResponse struct { } -// GoogleCloudDocumentaiV1EntityTypeMetadata: Metadata about an entity -// type. -type GoogleCloudDocumentaiV1EntityTypeMetadata struct { - // HumanReviewLabelingMetadata: Human review labeling config on the - // property. - HumanReviewLabelingMetadata *GoogleCloudDocumentaiV1HumanReviewLabelingMetadata `json:"humanReviewLabelingMetadata,omitempty"` - - // HumanReviewMetadata: Human review config on the entity type. - HumanReviewMetadata *GoogleCloudDocumentaiV1HumanReviewValidationMetadata `json:"humanReviewMetadata,omitempty"` - - // Inactive: Whether the entity type should be considered as "inactive". - Inactive bool `json:"inactive,omitempty"` - - // ForceSendFields is a list of field names (e.g. - // "HumanReviewLabelingMetadata") to unconditionally include in API - // requests. By default, fields with empty or default values are omitted - // from API requests. However, any non-pointer, non-interface field - // appearing in ForceSendFields will be sent to the server regardless of - // whether the field is empty or not. This may be used to include empty - // fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. - // "HumanReviewLabelingMetadata") to include in API requests with the - // JSON null value. By default, fields with empty values are omitted - // from API requests. However, any field with an empty value appearing - // in NullFields will be sent to the server as null. It is an error if a - // field in this list has a non-empty value. This may be used to include - // null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *GoogleCloudDocumentaiV1EntityTypeMetadata) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudDocumentaiV1EntityTypeMetadata - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // GoogleCloudDocumentaiV1FetchProcessorTypesResponse: Response message // for fetch processor types. type GoogleCloudDocumentaiV1FetchProcessorTypesResponse struct { @@ -4270,37 +4225,6 @@ func (s *GoogleCloudDocumentaiV1GcsPrefix) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleCloudDocumentaiV1HumanReviewLabelingMetadata: Metadata for -// human review labeling config. -type GoogleCloudDocumentaiV1HumanReviewLabelingMetadata struct { - // EnableNormalizationEditing: Whether to enable normalization editing. - EnableNormalizationEditing bool `json:"enableNormalizationEditing,omitempty"` - - // ForceSendFields is a list of field names (e.g. - // "EnableNormalizationEditing") to unconditionally include in API - // requests. By default, fields with empty or default values are omitted - // from API requests. However, any non-pointer, non-interface field - // appearing in ForceSendFields will be sent to the server regardless of - // whether the field is empty or not. This may be used to include empty - // fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. - // "EnableNormalizationEditing") to include in API requests with the - // JSON null value. By default, fields with empty values are omitted - // from API requests. However, any field with an empty value appearing - // in NullFields will be sent to the server as null. It is an error if a - // field in this list has a non-empty value. This may be used to include - // null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *GoogleCloudDocumentaiV1HumanReviewLabelingMetadata) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudDocumentaiV1HumanReviewLabelingMetadata - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // GoogleCloudDocumentaiV1HumanReviewStatus: The status of human review // on a processed document. type GoogleCloudDocumentaiV1HumanReviewStatus struct { @@ -4356,54 +4280,6 @@ func (s *GoogleCloudDocumentaiV1HumanReviewStatus) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleCloudDocumentaiV1HumanReviewValidationMetadata: Metadata for -// Human Review config. -type GoogleCloudDocumentaiV1HumanReviewValidationMetadata struct { - // ConfidenceThreshold: The confidence threshold if human review - // validation is enabled. - ConfidenceThreshold float64 `json:"confidenceThreshold,omitempty"` - - // EnableValidation: Whether to enable human review validation. - EnableValidation bool `json:"enableValidation,omitempty"` - - // ForceSendFields is a list of field names (e.g. "ConfidenceThreshold") - // to unconditionally include in API requests. By default, fields with - // empty or default values are omitted from API requests. However, any - // non-pointer, non-interface field appearing in ForceSendFields will be - // sent to the server regardless of whether the field is empty or not. - // This may be used to include empty fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. "ConfidenceThreshold") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. - NullFields []string `json:"-"` -} - -func (s *GoogleCloudDocumentaiV1HumanReviewValidationMetadata) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudDocumentaiV1HumanReviewValidationMetadata - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -func (s *GoogleCloudDocumentaiV1HumanReviewValidationMetadata) UnmarshalJSON(data []byte) error { - type NoMethod GoogleCloudDocumentaiV1HumanReviewValidationMetadata - var s1 struct { - ConfidenceThreshold gensupport.JSONFloat64 `json:"confidenceThreshold"` - *NoMethod - } - s1.NoMethod = (*NoMethod)(s) - if err := json.Unmarshal(data, &s1); err != nil { - return err - } - s.ConfidenceThreshold = float64(s1.ConfidenceThreshold) - return nil -} - // GoogleCloudDocumentaiV1ListProcessorTypesResponse: Response message // for list processor types. type GoogleCloudDocumentaiV1ListProcessorTypesResponse struct { @@ -4853,6 +4729,10 @@ type GoogleCloudDocumentaiV1ProcessorVersion struct { // DisplayName: The display name of the processor version. DisplayName string `json:"displayName,omitempty"` + // DocumentSchema: The schema of the processor version. Describes the + // output. + DocumentSchema *GoogleCloudDocumentaiV1DocumentSchema `json:"documentSchema,omitempty"` + // GoogleManaged: Denotes that this ProcessorVersion is managed by // google. GoogleManaged bool `json:"googleManaged,omitempty"` @@ -4947,43 +4827,6 @@ func (s *GoogleCloudDocumentaiV1ProcessorVersionDeprecationInfo) MarshalJSON() ( return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleCloudDocumentaiV1PropertyMetadata: Metadata about a property. -type GoogleCloudDocumentaiV1PropertyMetadata struct { - // HumanReviewLabelingMetadata: Human review labeling config on the - // property. - HumanReviewLabelingMetadata *GoogleCloudDocumentaiV1HumanReviewLabelingMetadata `json:"humanReviewLabelingMetadata,omitempty"` - - // HumanReviewMetadata: Human review validation config on the property. - HumanReviewMetadata *GoogleCloudDocumentaiV1HumanReviewValidationMetadata `json:"humanReviewMetadata,omitempty"` - - // Inactive: Whether the property should be considered as "inactive". - Inactive bool `json:"inactive,omitempty"` - - // ForceSendFields is a list of field names (e.g. - // "HumanReviewLabelingMetadata") to unconditionally include in API - // requests. By default, fields with empty or default values are omitted - // from API requests. However, any non-pointer, non-interface field - // appearing in ForceSendFields will be sent to the server regardless of - // whether the field is empty or not. This may be used to include empty - // fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. - // "HumanReviewLabelingMetadata") to include in API requests with the - // JSON null value. By default, fields with empty values are omitted - // from API requests. However, any field with an empty value appearing - // in NullFields will be sent to the server as null. It is an error if a - // field in this list has a non-empty value. This may be used to include - // null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *GoogleCloudDocumentaiV1PropertyMetadata) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudDocumentaiV1PropertyMetadata - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // GoogleCloudDocumentaiV1RawDocument: Payload message of raw document // content (bytes). type GoogleCloudDocumentaiV1RawDocument struct { diff --git a/documentai/v1beta3/documentai-api.json b/documentai/v1beta3/documentai-api.json index 673c53bfbef..2c2fd1f16f4 100644 --- a/documentai/v1beta3/documentai-api.json +++ b/documentai/v1beta3/documentai-api.json @@ -710,6 +710,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "evaluateProcessorVersion": { + "description": "Evaluates a ProcessorVersion against annotated documents, producing an Evaluation.", + "flatPath": "v1beta3/projects/{projectsId}/locations/{locationsId}/processors/{processorsId}/processorVersions/{processorVersionsId}:evaluateProcessorVersion", + "httpMethod": "POST", + "id": "documentai.projects.locations.processors.processorVersions.evaluateProcessorVersion", + "parameterOrder": [ + "processorVersion" + ], + "parameters": { + "processorVersion": { + "description": "Required. The resource name of the ProcessorVersion to evaluate. `projects/{project}/locations/{location}/processors/{processor}/processorVersions/{processorVersion}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/processors/[^/]+/processorVersions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta3/{+processorVersion}:evaluateProcessorVersion", + "request": { + "$ref": "GoogleCloudDocumentaiV1beta3EvaluateProcessorVersionRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { "description": "Gets a processor version detail.", "flatPath": "v1beta3/projects/{projectsId}/locations/{locationsId}/processors/{processorsId}/processorVersions/{processorVersionsId}", @@ -799,6 +827,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "train": { + "description": "Trains a new processor version. Operation metadata is returned as cloud_documentai_core.TrainProcessorVersionMetadata.", + "flatPath": "v1beta3/projects/{projectsId}/locations/{locationsId}/processors/{processorsId}/processorVersions:train", + "httpMethod": "POST", + "id": "documentai.projects.locations.processors.processorVersions.train", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent (project, location and processor) to create the new version for. Format: `projects/{project}/locations/{location}/processors/{processor}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/processors/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta3/{+parent}/processorVersions:train", + "request": { + "$ref": "GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "undeploy": { "description": "Undeploys the processor version.", "flatPath": "v1beta3/projects/{projectsId}/locations/{locationsId}/processors/{processorsId}/processorVersions/{processorVersionsId}:undeploy", @@ -827,6 +883,73 @@ "https://www.googleapis.com/auth/cloud-platform" ] } + }, + "resources": { + "evaluations": { + "methods": { + "get": { + "description": "Retrieves a specific evaluation.", + "flatPath": "v1beta3/projects/{projectsId}/locations/{locationsId}/processors/{processorsId}/processorVersions/{processorVersionsId}/evaluations/{evaluationsId}", + "httpMethod": "GET", + "id": "documentai.projects.locations.processors.processorVersions.evaluations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the Evaluation to get. `projects/{project}/locations/{location}/processors/{processor}/processorVersions/{processorVersion}/evaluations/{evaluation}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/processors/[^/]+/processorVersions/[^/]+/evaluations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta3/{+name}", + "response": { + "$ref": "GoogleCloudDocumentaiV1beta3Evaluation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Retrieves a set of evaluations for a given processor version.", + "flatPath": "v1beta3/projects/{projectsId}/locations/{locationsId}/processors/{processorsId}/processorVersions/{processorVersionsId}/evaluations", + "httpMethod": "GET", + "id": "documentai.projects.locations.processors.processorVersions.evaluations.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The standard list page size. If unspecified, at most 5 evaluations will be returned. The maximum value is 100; values above 100 will be coerced to 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token, received from a previous `ListEvaluations` call. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the ProcessorVersion to list evaluations for. `projects/{project}/locations/{location}/processors/{processor}/processorVersions/{processorVersion}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/processors/[^/]+/processorVersions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta3/{+parent}/evaluations", + "response": { + "$ref": "GoogleCloudDocumentaiV1beta3ListEvaluationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } } } } @@ -836,7 +959,7 @@ } } }, - "revision": "20221106", + "revision": "20221108", "rootUrl": "https://documentai.googleapis.com/", "schemas": { "GoogleCloudDocumentaiUiv1beta3BatchDeleteDocumentsMetadata": { @@ -5832,10 +5955,6 @@ "description": "User defined name for the type.", "type": "string" }, - "entityTypeMetadata": { - "$ref": "GoogleCloudDocumentaiV1beta3EntityTypeMetadata", - "description": "Metadata for the entity type." - }, "enumValues": { "$ref": "GoogleCloudDocumentaiV1beta3DocumentSchemaEntityTypeEnumValues", "description": "If specified, lists all the possible values for this entity. This should not be more than a handful of values. If the number of values is \u003e10 or could change frequently use the `EntityType.value_ontology` field and specify a list of all possible values in a value ontology file." @@ -5894,10 +6013,6 @@ ], "type": "string" }, - "propertyMetadata": { - "$ref": "GoogleCloudDocumentaiV1beta3PropertyMetadata", - "description": "Any additional metadata about the property can be added here." - }, "valueType": { "description": "A reference to the value type of the property. This type is subject to the same conventions as the `Entity.base_types` field.", "type": "string" @@ -6085,21 +6200,210 @@ "properties": {}, "type": "object" }, - "GoogleCloudDocumentaiV1beta3EntityTypeMetadata": { - "description": "Metadata about an entity type.", - "id": "GoogleCloudDocumentaiV1beta3EntityTypeMetadata", + "GoogleCloudDocumentaiV1beta3EvaluateProcessorVersionRequest": { + "description": "Evaluates the given ProcessorVersion against the supplied documents.", + "id": "GoogleCloudDocumentaiV1beta3EvaluateProcessorVersionRequest", + "properties": { + "evaluationDocuments": { + "$ref": "GoogleCloudDocumentaiV1beta3BatchDocumentsInputConfig", + "description": "Optional. The documents used in the evaluation. If unspecified, use the processor's dataset as evaluation input." + } + }, + "type": "object" + }, + "GoogleCloudDocumentaiV1beta3Evaluation": { + "description": "An evaluation of a ProcessorVersion's performance.", + "id": "GoogleCloudDocumentaiV1beta3Evaluation", "properties": { - "humanReviewLabelingMetadata": { - "$ref": "GoogleCloudDocumentaiV1beta3HumanReviewLabelingMetadata", - "description": "Human review labeling config on the property." + "allEntitiesMetrics": { + "$ref": "GoogleCloudDocumentaiV1beta3EvaluationMultiConfidenceMetrics", + "description": "Metrics for all the entities in aggregate." }, - "humanReviewMetadata": { - "$ref": "GoogleCloudDocumentaiV1beta3HumanReviewValidationMetadata", - "description": "Human review config on the entity type." + "createTime": { + "description": "The time that the evaluation was created.", + "format": "google-datetime", + "type": "string" }, - "inactive": { - "description": "Whether the entity type should be considered as \"inactive\".", - "type": "boolean" + "documentCounters": { + "$ref": "GoogleCloudDocumentaiV1beta3EvaluationCounters", + "description": "Counters for the documents used in the evaluation." + }, + "entityMetrics": { + "additionalProperties": { + "$ref": "GoogleCloudDocumentaiV1beta3EvaluationMultiConfidenceMetrics" + }, + "description": "Metrics across confidence levels, for different entities.", + "type": "object" + }, + "kmsKeyName": { + "description": "The KMS key name used for encryption.", + "type": "string" + }, + "kmsKeyVersionName": { + "description": "The KMS key version with which data is encrypted.", + "type": "string" + }, + "name": { + "description": "The resource name of the evaluation. Format: `projects/{project}/locations/{location}/processors/{processor}/processorVersions/{processor_version}/evaluations/{evaluation}`", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDocumentaiV1beta3EvaluationConfidenceLevelMetrics": { + "description": "Evaluations metrics, at a specific confidence level.", + "id": "GoogleCloudDocumentaiV1beta3EvaluationConfidenceLevelMetrics", + "properties": { + "confidenceLevel": { + "description": "The confidence level.", + "format": "float", + "type": "number" + }, + "metrics": { + "$ref": "GoogleCloudDocumentaiV1beta3EvaluationMetrics", + "description": "The metrics at the specific confidence level." + } + }, + "type": "object" + }, + "GoogleCloudDocumentaiV1beta3EvaluationCounters": { + "description": "Evaluation counters for the documents that were used.", + "id": "GoogleCloudDocumentaiV1beta3EvaluationCounters", + "properties": { + "evaluatedDocumentsCount": { + "description": "How many documents were used in the evaluation.", + "format": "int32", + "type": "integer" + }, + "failedDocumentsCount": { + "description": "How many documents were not included in the evaluation as Document AI failed to process them.", + "format": "int32", + "type": "integer" + }, + "inputDocumentsCount": { + "description": "How many documents were sent for evaluation.", + "format": "int32", + "type": "integer" + }, + "invalidDocumentsCount": { + "description": "How many documents were not included in the evaluation as they didn't pass validation.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudDocumentaiV1beta3EvaluationMetrics": { + "description": "Evaluation metrics, either in aggregate or about a specific entity.", + "id": "GoogleCloudDocumentaiV1beta3EvaluationMetrics", + "properties": { + "f1Score": { + "description": "The calculated f1 score.", + "format": "float", + "type": "number" + }, + "falseNegativesCount": { + "description": "The amount of false negatives.", + "format": "int32", + "type": "integer" + }, + "falsePositivesCount": { + "description": "The amount of false positives.", + "format": "int32", + "type": "integer" + }, + "groundTruthDocumentCount": { + "description": "The amount of documents with a ground truth occurrence.", + "format": "int32", + "type": "integer" + }, + "groundTruthOccurrencesCount": { + "description": "The amount of occurrences in ground truth documents.", + "format": "int32", + "type": "integer" + }, + "precision": { + "description": "The calculated precision.", + "format": "float", + "type": "number" + }, + "predictedDocumentCount": { + "description": "The amount of documents with a predicted occurrence.", + "format": "int32", + "type": "integer" + }, + "predictedOccurrencesCount": { + "description": "The amount of occurrences in predicted documents.", + "format": "int32", + "type": "integer" + }, + "recall": { + "description": "The calculated recall.", + "format": "float", + "type": "number" + }, + "totalDocumentsCount": { + "description": "The amount of documents that had an occurrence of this label.", + "format": "int32", + "type": "integer" + }, + "truePositivesCount": { + "description": "The amount of true positives.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudDocumentaiV1beta3EvaluationMultiConfidenceMetrics": { + "description": "Metrics across multiple confidence levels.", + "id": "GoogleCloudDocumentaiV1beta3EvaluationMultiConfidenceMetrics", + "properties": { + "auprc": { + "description": "The calculated area under the precision recall curve (AUPRC), computed by integrating over all confidence thresholds.", + "format": "float", + "type": "number" + }, + "auprcExact": { + "description": "The AUPRC for metrics with fuzzy matching disabled, i.e., exact matching only.", + "format": "float", + "type": "number" + }, + "confidenceLevelMetrics": { + "description": "Metrics across confidence levels with fuzzy matching enabled.", + "items": { + "$ref": "GoogleCloudDocumentaiV1beta3EvaluationConfidenceLevelMetrics" + }, + "type": "array" + }, + "confidenceLevelMetricsExact": { + "description": "Metrics across confidence levels with only exact matching.", + "items": { + "$ref": "GoogleCloudDocumentaiV1beta3EvaluationConfidenceLevelMetrics" + }, + "type": "array" + }, + "estimatedCalibrationError": { + "description": "The Estimated Calibration Error (ECE) of the confidence of the predicted entities.", + "format": "float", + "type": "number" + }, + "estimatedCalibrationErrorExact": { + "description": "The ECE for the predicted entities with fuzzy matching disabled, i.e., exact matching only.", + "format": "float", + "type": "number" + }, + "metricsType": { + "description": "The metrics type for the label.", + "enum": [ + "METRICS_TYPE_UNSPECIFIED", + "AGGREGATE" + ], + "enumDescriptions": [ + "The metrics type is unspecified. By default, metrics without a particular specification are for leaf entity types (i.e., top-level entity types without child types, or child types which are not parent types themselves).", + "Indicates whether metrics for this particular label type represent an aggregate of metrics for other types instead of being based on actual TP/FP/FN values for the label type. Metrics for parent (i.e., non-leaf) entity types are an aggregate of metrics for their children." + ], + "type": "string" } }, "type": "object" @@ -6158,17 +6462,6 @@ }, "type": "object" }, - "GoogleCloudDocumentaiV1beta3HumanReviewLabelingMetadata": { - "description": "Metadata for human review labeling config.", - "id": "GoogleCloudDocumentaiV1beta3HumanReviewLabelingMetadata", - "properties": { - "enableNormalizationEditing": { - "description": "Whether to enable normalization editing.", - "type": "boolean" - } - }, - "type": "object" - }, "GoogleCloudDocumentaiV1beta3HumanReviewStatus": { "description": "The status of human review on a processed document.", "id": "GoogleCloudDocumentaiV1beta3HumanReviewStatus", @@ -6202,18 +6495,20 @@ }, "type": "object" }, - "GoogleCloudDocumentaiV1beta3HumanReviewValidationMetadata": { - "description": "Metadata for Human Review config.", - "id": "GoogleCloudDocumentaiV1beta3HumanReviewValidationMetadata", + "GoogleCloudDocumentaiV1beta3ListEvaluationsResponse": { + "description": "The response from ListEvaluations.", + "id": "GoogleCloudDocumentaiV1beta3ListEvaluationsResponse", "properties": { - "confidenceThreshold": { - "description": "The confidence threshold if human review validation is enabled.", - "format": "float", - "type": "number" + "evaluations": { + "description": "The evaluations requested.", + "items": { + "$ref": "GoogleCloudDocumentaiV1beta3Evaluation" + }, + "type": "array" }, - "enableValidation": { - "description": "Whether to enable human review validation.", - "type": "boolean" + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" } }, "type": "object" @@ -6481,6 +6776,10 @@ "description": "The display name of the processor version.", "type": "string" }, + "documentSchema": { + "$ref": "GoogleCloudDocumentaiV1beta3DocumentSchema", + "description": "The schema of the processor version. Describes the output." + }, "googleManaged": { "description": "Denotes that this ProcessorVersion is managed by google.", "type": "boolean" @@ -6540,25 +6839,6 @@ }, "type": "object" }, - "GoogleCloudDocumentaiV1beta3PropertyMetadata": { - "description": "Metadata about a property.", - "id": "GoogleCloudDocumentaiV1beta3PropertyMetadata", - "properties": { - "humanReviewLabelingMetadata": { - "$ref": "GoogleCloudDocumentaiV1beta3HumanReviewLabelingMetadata", - "description": "Human review labeling config on the property." - }, - "humanReviewMetadata": { - "$ref": "GoogleCloudDocumentaiV1beta3HumanReviewValidationMetadata", - "description": "Human review validation config on the property." - }, - "inactive": { - "description": "Whether the property should be considered as \"inactive\".", - "type": "boolean" - } - }, - "type": "object" - }, "GoogleCloudDocumentaiV1beta3RawDocument": { "description": "Payload message of raw document content (bytes).", "id": "GoogleCloudDocumentaiV1beta3RawDocument", @@ -6716,6 +6996,44 @@ "properties": {}, "type": "object" }, + "GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequest": { + "description": "Request message for the create processor version method.", + "id": "GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequest", + "properties": { + "baseProcessorVersion": { + "description": "Optional. The processor version to use as a base for training. This processor version must be a child of `parent`. Format: `projects/{project}/locations/{location}/processors/{processor}/processorVersions/{processorVersion}`.", + "type": "string" + }, + "documentSchema": { + "$ref": "GoogleCloudDocumentaiV1beta3DocumentSchema", + "description": "Optional. The schema the processor version will be trained with." + }, + "inputData": { + "$ref": "GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequestInputData", + "description": "Optional. The input data used to train the `ProcessorVersion`." + }, + "processorVersion": { + "$ref": "GoogleCloudDocumentaiV1beta3ProcessorVersion", + "description": "Required. The processor version to be created." + } + }, + "type": "object" + }, + "GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequestInputData": { + "description": "The input data used to train a new `ProcessorVersion`.", + "id": "GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequestInputData", + "properties": { + "testDocuments": { + "$ref": "GoogleCloudDocumentaiV1beta3BatchDocumentsInputConfig", + "description": "The documents used for testing the trained version." + }, + "trainingDocuments": { + "$ref": "GoogleCloudDocumentaiV1beta3BatchDocumentsInputConfig", + "description": "The documents used for training the new version." + } + }, + "type": "object" + }, "GoogleCloudDocumentaiV1beta3UndeployProcessorVersionMetadata": { "description": "The long running operation metadata for the undeploy processor version method.", "id": "GoogleCloudDocumentaiV1beta3UndeployProcessorVersionMetadata", diff --git a/documentai/v1beta3/documentai-gen.go b/documentai/v1beta3/documentai-gen.go index a953ec696b4..89f6d2a57c9 100644 --- a/documentai/v1beta3/documentai-gen.go +++ b/documentai/v1beta3/documentai-gen.go @@ -211,11 +211,23 @@ type ProjectsLocationsProcessorsHumanReviewConfigService struct { func NewProjectsLocationsProcessorsProcessorVersionsService(s *Service) *ProjectsLocationsProcessorsProcessorVersionsService { rs := &ProjectsLocationsProcessorsProcessorVersionsService{s: s} + rs.Evaluations = NewProjectsLocationsProcessorsProcessorVersionsEvaluationsService(s) return rs } type ProjectsLocationsProcessorsProcessorVersionsService struct { s *Service + + Evaluations *ProjectsLocationsProcessorsProcessorVersionsEvaluationsService +} + +func NewProjectsLocationsProcessorsProcessorVersionsEvaluationsService(s *Service) *ProjectsLocationsProcessorsProcessorVersionsEvaluationsService { + rs := &ProjectsLocationsProcessorsProcessorVersionsEvaluationsService{s: s} + return rs +} + +type ProjectsLocationsProcessorsProcessorVersionsEvaluationsService struct { + s *Service } type GoogleCloudDocumentaiUiv1beta3BatchDeleteDocumentsMetadata struct { @@ -8528,9 +8540,6 @@ type GoogleCloudDocumentaiV1beta3DocumentSchemaEntityType struct { // DisplayName: User defined name for the type. DisplayName string `json:"displayName,omitempty"` - // EntityTypeMetadata: Metadata for the entity type. - EntityTypeMetadata *GoogleCloudDocumentaiV1beta3EntityTypeMetadata `json:"entityTypeMetadata,omitempty"` - // EnumValues: If specified, lists all the possible values for this // entity. This should not be more than a handful of values. If the // number of values is >10 or could change frequently use the @@ -8626,10 +8635,6 @@ type GoogleCloudDocumentaiV1beta3DocumentSchemaEntityTypeProperty struct { // times. OccurrenceType string `json:"occurrenceType,omitempty"` - // PropertyMetadata: Any additional metadata about the property can be - // added here. - PropertyMetadata *GoogleCloudDocumentaiV1beta3PropertyMetadata `json:"propertyMetadata,omitempty"` - // ValueType: A reference to the value type of the property. This type // is subject to the same conventions as the `Entity.base_types` field. ValueType string `json:"valueType,omitempty"` @@ -8993,21 +8998,159 @@ type GoogleCloudDocumentaiV1beta3EnableProcessorRequest struct { type GoogleCloudDocumentaiV1beta3EnableProcessorResponse struct { } -// GoogleCloudDocumentaiV1beta3EntityTypeMetadata: Metadata about an -// entity type. -type GoogleCloudDocumentaiV1beta3EntityTypeMetadata struct { - // HumanReviewLabelingMetadata: Human review labeling config on the - // property. - HumanReviewLabelingMetadata *GoogleCloudDocumentaiV1beta3HumanReviewLabelingMetadata `json:"humanReviewLabelingMetadata,omitempty"` +// GoogleCloudDocumentaiV1beta3EvaluateProcessorVersionRequest: +// Evaluates the given ProcessorVersion against the supplied documents. +type GoogleCloudDocumentaiV1beta3EvaluateProcessorVersionRequest struct { + // EvaluationDocuments: Optional. The documents used in the evaluation. + // If unspecified, use the processor's dataset as evaluation input. + EvaluationDocuments *GoogleCloudDocumentaiV1beta3BatchDocumentsInputConfig `json:"evaluationDocuments,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EvaluationDocuments") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EvaluationDocuments") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDocumentaiV1beta3EvaluateProcessorVersionRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDocumentaiV1beta3EvaluateProcessorVersionRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDocumentaiV1beta3Evaluation: An evaluation of a +// ProcessorVersion's performance. +type GoogleCloudDocumentaiV1beta3Evaluation struct { + // AllEntitiesMetrics: Metrics for all the entities in aggregate. + AllEntitiesMetrics *GoogleCloudDocumentaiV1beta3EvaluationMultiConfidenceMetrics `json:"allEntitiesMetrics,omitempty"` + + // CreateTime: The time that the evaluation was created. + CreateTime string `json:"createTime,omitempty"` + + // DocumentCounters: Counters for the documents used in the evaluation. + DocumentCounters *GoogleCloudDocumentaiV1beta3EvaluationCounters `json:"documentCounters,omitempty"` + + // EntityMetrics: Metrics across confidence levels, for different + // entities. + EntityMetrics map[string]GoogleCloudDocumentaiV1beta3EvaluationMultiConfidenceMetrics `json:"entityMetrics,omitempty"` + + // KmsKeyName: The KMS key name used for encryption. + KmsKeyName string `json:"kmsKeyName,omitempty"` + + // KmsKeyVersionName: The KMS key version with which data is encrypted. + KmsKeyVersionName string `json:"kmsKeyVersionName,omitempty"` + + // Name: The resource name of the evaluation. Format: + // `projects/{project}/locations/{location}/processors/{processor}/proces + // sorVersions/{processor_version}/evaluations/{evaluation}` + Name string `json:"name,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AllEntitiesMetrics") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AllEntitiesMetrics") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDocumentaiV1beta3Evaluation) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDocumentaiV1beta3Evaluation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDocumentaiV1beta3EvaluationConfidenceLevelMetrics: +// Evaluations metrics, at a specific confidence level. +type GoogleCloudDocumentaiV1beta3EvaluationConfidenceLevelMetrics struct { + // ConfidenceLevel: The confidence level. + ConfidenceLevel float64 `json:"confidenceLevel,omitempty"` + + // Metrics: The metrics at the specific confidence level. + Metrics *GoogleCloudDocumentaiV1beta3EvaluationMetrics `json:"metrics,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ConfidenceLevel") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ConfidenceLevel") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDocumentaiV1beta3EvaluationConfidenceLevelMetrics) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDocumentaiV1beta3EvaluationConfidenceLevelMetrics + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudDocumentaiV1beta3EvaluationConfidenceLevelMetrics) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudDocumentaiV1beta3EvaluationConfidenceLevelMetrics + var s1 struct { + ConfidenceLevel gensupport.JSONFloat64 `json:"confidenceLevel"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.ConfidenceLevel = float64(s1.ConfidenceLevel) + return nil +} + +// GoogleCloudDocumentaiV1beta3EvaluationCounters: Evaluation counters +// for the documents that were used. +type GoogleCloudDocumentaiV1beta3EvaluationCounters struct { + // EvaluatedDocumentsCount: How many documents were used in the + // evaluation. + EvaluatedDocumentsCount int64 `json:"evaluatedDocumentsCount,omitempty"` - // HumanReviewMetadata: Human review config on the entity type. - HumanReviewMetadata *GoogleCloudDocumentaiV1beta3HumanReviewValidationMetadata `json:"humanReviewMetadata,omitempty"` + // FailedDocumentsCount: How many documents were not included in the + // evaluation as Document AI failed to process them. + FailedDocumentsCount int64 `json:"failedDocumentsCount,omitempty"` - // Inactive: Whether the entity type should be considered as "inactive". - Inactive bool `json:"inactive,omitempty"` + // InputDocumentsCount: How many documents were sent for evaluation. + InputDocumentsCount int64 `json:"inputDocumentsCount,omitempty"` + + // InvalidDocumentsCount: How many documents were not included in the + // evaluation as they didn't pass validation. + InvalidDocumentsCount int64 `json:"invalidDocumentsCount,omitempty"` // ForceSendFields is a list of field names (e.g. - // "HumanReviewLabelingMetadata") to unconditionally include in API + // "EvaluatedDocumentsCount") to unconditionally include in API // requests. By default, fields with empty or default values are omitted // from API requests. However, any non-pointer, non-interface field // appearing in ForceSendFields will be sent to the server regardless of @@ -9015,22 +9158,188 @@ type GoogleCloudDocumentaiV1beta3EntityTypeMetadata struct { // fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. - // "HumanReviewLabelingMetadata") to include in API requests with the - // JSON null value. By default, fields with empty values are omitted - // from API requests. However, any field with an empty value appearing - // in NullFields will be sent to the server as null. It is an error if a - // field in this list has a non-empty value. This may be used to include - // null fields in Patch requests. + // NullFields is a list of field names (e.g. "EvaluatedDocumentsCount") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDocumentaiV1beta3EvaluationCounters) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDocumentaiV1beta3EvaluationCounters + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDocumentaiV1beta3EvaluationMetrics: Evaluation metrics, +// either in aggregate or about a specific entity. +type GoogleCloudDocumentaiV1beta3EvaluationMetrics struct { + // F1Score: The calculated f1 score. + F1Score float64 `json:"f1Score,omitempty"` + + // FalseNegativesCount: The amount of false negatives. + FalseNegativesCount int64 `json:"falseNegativesCount,omitempty"` + + // FalsePositivesCount: The amount of false positives. + FalsePositivesCount int64 `json:"falsePositivesCount,omitempty"` + + // GroundTruthDocumentCount: The amount of documents with a ground truth + // occurrence. + GroundTruthDocumentCount int64 `json:"groundTruthDocumentCount,omitempty"` + + // GroundTruthOccurrencesCount: The amount of occurrences in ground + // truth documents. + GroundTruthOccurrencesCount int64 `json:"groundTruthOccurrencesCount,omitempty"` + + // Precision: The calculated precision. + Precision float64 `json:"precision,omitempty"` + + // PredictedDocumentCount: The amount of documents with a predicted + // occurrence. + PredictedDocumentCount int64 `json:"predictedDocumentCount,omitempty"` + + // PredictedOccurrencesCount: The amount of occurrences in predicted + // documents. + PredictedOccurrencesCount int64 `json:"predictedOccurrencesCount,omitempty"` + + // Recall: The calculated recall. + Recall float64 `json:"recall,omitempty"` + + // TotalDocumentsCount: The amount of documents that had an occurrence + // of this label. + TotalDocumentsCount int64 `json:"totalDocumentsCount,omitempty"` + + // TruePositivesCount: The amount of true positives. + TruePositivesCount int64 `json:"truePositivesCount,omitempty"` + + // ForceSendFields is a list of field names (e.g. "F1Score") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "F1Score") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDocumentaiV1beta3EvaluationMetrics) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDocumentaiV1beta3EvaluationMetrics + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudDocumentaiV1beta3EvaluationMetrics) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudDocumentaiV1beta3EvaluationMetrics + var s1 struct { + F1Score gensupport.JSONFloat64 `json:"f1Score"` + Precision gensupport.JSONFloat64 `json:"precision"` + Recall gensupport.JSONFloat64 `json:"recall"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.F1Score = float64(s1.F1Score) + s.Precision = float64(s1.Precision) + s.Recall = float64(s1.Recall) + return nil +} + +// GoogleCloudDocumentaiV1beta3EvaluationMultiConfidenceMetrics: Metrics +// across multiple confidence levels. +type GoogleCloudDocumentaiV1beta3EvaluationMultiConfidenceMetrics struct { + // Auprc: The calculated area under the precision recall curve (AUPRC), + // computed by integrating over all confidence thresholds. + Auprc float64 `json:"auprc,omitempty"` + + // AuprcExact: The AUPRC for metrics with fuzzy matching disabled, i.e., + // exact matching only. + AuprcExact float64 `json:"auprcExact,omitempty"` + + // ConfidenceLevelMetrics: Metrics across confidence levels with fuzzy + // matching enabled. + ConfidenceLevelMetrics []*GoogleCloudDocumentaiV1beta3EvaluationConfidenceLevelMetrics `json:"confidenceLevelMetrics,omitempty"` + + // ConfidenceLevelMetricsExact: Metrics across confidence levels with + // only exact matching. + ConfidenceLevelMetricsExact []*GoogleCloudDocumentaiV1beta3EvaluationConfidenceLevelMetrics `json:"confidenceLevelMetricsExact,omitempty"` + + // EstimatedCalibrationError: The Estimated Calibration Error (ECE) of + // the confidence of the predicted entities. + EstimatedCalibrationError float64 `json:"estimatedCalibrationError,omitempty"` + + // EstimatedCalibrationErrorExact: The ECE for the predicted entities + // with fuzzy matching disabled, i.e., exact matching only. + EstimatedCalibrationErrorExact float64 `json:"estimatedCalibrationErrorExact,omitempty"` + + // MetricsType: The metrics type for the label. + // + // Possible values: + // "METRICS_TYPE_UNSPECIFIED" - The metrics type is unspecified. By + // default, metrics without a particular specification are for leaf + // entity types (i.e., top-level entity types without child types, or + // child types which are not parent types themselves). + // "AGGREGATE" - Indicates whether metrics for this particular label + // type represent an aggregate of metrics for other types instead of + // being based on actual TP/FP/FN values for the label type. Metrics for + // parent (i.e., non-leaf) entity types are an aggregate of metrics for + // their children. + MetricsType string `json:"metricsType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Auprc") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Auprc") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } -func (s *GoogleCloudDocumentaiV1beta3EntityTypeMetadata) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudDocumentaiV1beta3EntityTypeMetadata +func (s *GoogleCloudDocumentaiV1beta3EvaluationMultiConfidenceMetrics) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDocumentaiV1beta3EvaluationMultiConfidenceMetrics raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +func (s *GoogleCloudDocumentaiV1beta3EvaluationMultiConfidenceMetrics) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudDocumentaiV1beta3EvaluationMultiConfidenceMetrics + var s1 struct { + Auprc gensupport.JSONFloat64 `json:"auprc"` + AuprcExact gensupport.JSONFloat64 `json:"auprcExact"` + EstimatedCalibrationError gensupport.JSONFloat64 `json:"estimatedCalibrationError"` + EstimatedCalibrationErrorExact gensupport.JSONFloat64 `json:"estimatedCalibrationErrorExact"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Auprc = float64(s1.Auprc) + s.AuprcExact = float64(s1.AuprcExact) + s.EstimatedCalibrationError = float64(s1.EstimatedCalibrationError) + s.EstimatedCalibrationErrorExact = float64(s1.EstimatedCalibrationErrorExact) + return nil +} + // GoogleCloudDocumentaiV1beta3FetchProcessorTypesResponse: Response // message for fetch processor types. type GoogleCloudDocumentaiV1beta3FetchProcessorTypesResponse struct { @@ -9155,37 +9464,6 @@ func (s *GoogleCloudDocumentaiV1beta3GcsPrefix) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleCloudDocumentaiV1beta3HumanReviewLabelingMetadata: Metadata for -// human review labeling config. -type GoogleCloudDocumentaiV1beta3HumanReviewLabelingMetadata struct { - // EnableNormalizationEditing: Whether to enable normalization editing. - EnableNormalizationEditing bool `json:"enableNormalizationEditing,omitempty"` - - // ForceSendFields is a list of field names (e.g. - // "EnableNormalizationEditing") to unconditionally include in API - // requests. By default, fields with empty or default values are omitted - // from API requests. However, any non-pointer, non-interface field - // appearing in ForceSendFields will be sent to the server regardless of - // whether the field is empty or not. This may be used to include empty - // fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. - // "EnableNormalizationEditing") to include in API requests with the - // JSON null value. By default, fields with empty values are omitted - // from API requests. However, any field with an empty value appearing - // in NullFields will be sent to the server as null. It is an error if a - // field in this list has a non-empty value. This may be used to include - // null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *GoogleCloudDocumentaiV1beta3HumanReviewLabelingMetadata) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudDocumentaiV1beta3HumanReviewLabelingMetadata - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // GoogleCloudDocumentaiV1beta3HumanReviewStatus: The status of human // review on a processed document. type GoogleCloudDocumentaiV1beta3HumanReviewStatus struct { @@ -9241,54 +9519,44 @@ func (s *GoogleCloudDocumentaiV1beta3HumanReviewStatus) MarshalJSON() ([]byte, e return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleCloudDocumentaiV1beta3HumanReviewValidationMetadata: Metadata -// for Human Review config. -type GoogleCloudDocumentaiV1beta3HumanReviewValidationMetadata struct { - // ConfidenceThreshold: The confidence threshold if human review - // validation is enabled. - ConfidenceThreshold float64 `json:"confidenceThreshold,omitempty"` +// GoogleCloudDocumentaiV1beta3ListEvaluationsResponse: The response +// from ListEvaluations. +type GoogleCloudDocumentaiV1beta3ListEvaluationsResponse struct { + // Evaluations: The evaluations requested. + Evaluations []*GoogleCloudDocumentaiV1beta3Evaluation `json:"evaluations,omitempty"` - // EnableValidation: Whether to enable human review validation. - EnableValidation bool `json:"enableValidation,omitempty"` + // NextPageToken: A token, which can be sent as `page_token` to retrieve + // the next page. If this field is omitted, there are no subsequent + // pages. + NextPageToken string `json:"nextPageToken,omitempty"` - // ForceSendFields is a list of field names (e.g. "ConfidenceThreshold") - // to unconditionally include in API requests. By default, fields with + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Evaluations") to + // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be // sent to the server regardless of whether the field is empty or not. // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "ConfidenceThreshold") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. + // NullFields is a list of field names (e.g. "Evaluations") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } -func (s *GoogleCloudDocumentaiV1beta3HumanReviewValidationMetadata) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudDocumentaiV1beta3HumanReviewValidationMetadata +func (s *GoogleCloudDocumentaiV1beta3ListEvaluationsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDocumentaiV1beta3ListEvaluationsResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -func (s *GoogleCloudDocumentaiV1beta3HumanReviewValidationMetadata) UnmarshalJSON(data []byte) error { - type NoMethod GoogleCloudDocumentaiV1beta3HumanReviewValidationMetadata - var s1 struct { - ConfidenceThreshold gensupport.JSONFloat64 `json:"confidenceThreshold"` - *NoMethod - } - s1.NoMethod = (*NoMethod)(s) - if err := json.Unmarshal(data, &s1); err != nil { - return err - } - s.ConfidenceThreshold = float64(s1.ConfidenceThreshold) - return nil -} - // GoogleCloudDocumentaiV1beta3ListProcessorTypesResponse: Response // message for list processor types. type GoogleCloudDocumentaiV1beta3ListProcessorTypesResponse struct { @@ -9748,6 +10016,10 @@ type GoogleCloudDocumentaiV1beta3ProcessorVersion struct { // DisplayName: The display name of the processor version. DisplayName string `json:"displayName,omitempty"` + // DocumentSchema: The schema of the processor version. Describes the + // output. + DocumentSchema *GoogleCloudDocumentaiV1beta3DocumentSchema `json:"documentSchema,omitempty"` + // GoogleManaged: Denotes that this ProcessorVersion is managed by // google. GoogleManaged bool `json:"googleManaged,omitempty"` @@ -9842,53 +10114,15 @@ func (s *GoogleCloudDocumentaiV1beta3ProcessorVersionDeprecationInfo) MarshalJSO return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleCloudDocumentaiV1beta3PropertyMetadata: Metadata about a -// property. -type GoogleCloudDocumentaiV1beta3PropertyMetadata struct { - // HumanReviewLabelingMetadata: Human review labeling config on the - // property. - HumanReviewLabelingMetadata *GoogleCloudDocumentaiV1beta3HumanReviewLabelingMetadata `json:"humanReviewLabelingMetadata,omitempty"` - - // HumanReviewMetadata: Human review validation config on the property. - HumanReviewMetadata *GoogleCloudDocumentaiV1beta3HumanReviewValidationMetadata `json:"humanReviewMetadata,omitempty"` +// GoogleCloudDocumentaiV1beta3RawDocument: Payload message of raw +// document content (bytes). +type GoogleCloudDocumentaiV1beta3RawDocument struct { + // Content: Inline document content. + Content string `json:"content,omitempty"` - // Inactive: Whether the property should be considered as "inactive". - Inactive bool `json:"inactive,omitempty"` - - // ForceSendFields is a list of field names (e.g. - // "HumanReviewLabelingMetadata") to unconditionally include in API - // requests. By default, fields with empty or default values are omitted - // from API requests. However, any non-pointer, non-interface field - // appearing in ForceSendFields will be sent to the server regardless of - // whether the field is empty or not. This may be used to include empty - // fields in Patch requests. - ForceSendFields []string `json:"-"` - - // NullFields is a list of field names (e.g. - // "HumanReviewLabelingMetadata") to include in API requests with the - // JSON null value. By default, fields with empty values are omitted - // from API requests. However, any field with an empty value appearing - // in NullFields will be sent to the server as null. It is an error if a - // field in this list has a non-empty value. This may be used to include - // null fields in Patch requests. - NullFields []string `json:"-"` -} - -func (s *GoogleCloudDocumentaiV1beta3PropertyMetadata) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudDocumentaiV1beta3PropertyMetadata - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// GoogleCloudDocumentaiV1beta3RawDocument: Payload message of raw -// document content (bytes). -type GoogleCloudDocumentaiV1beta3RawDocument struct { - // Content: Inline document content. - Content string `json:"content,omitempty"` - - // MimeType: An IANA MIME type (RFC6838) indicating the nature and - // format of the [content]. - MimeType string `json:"mimeType,omitempty"` + // MimeType: An IANA MIME type (RFC6838) indicating the nature and + // format of the [content]. + MimeType string `json:"mimeType,omitempty"` // ForceSendFields is a list of field names (e.g. "Content") to // unconditionally include in API requests. By default, fields with @@ -10129,6 +10363,84 @@ func (s *GoogleCloudDocumentaiV1beta3SetDefaultProcessorVersionRequest) MarshalJ type GoogleCloudDocumentaiV1beta3SetDefaultProcessorVersionResponse struct { } +// GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequest: Request +// message for the create processor version method. +type GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequest struct { + // BaseProcessorVersion: Optional. The processor version to use as a + // base for training. This processor version must be a child of + // `parent`. Format: + // `projects/{project}/locations/{location}/processors/{processor}/proces + // sorVersions/{processorVersion}`. + BaseProcessorVersion string `json:"baseProcessorVersion,omitempty"` + + // DocumentSchema: Optional. The schema the processor version will be + // trained with. + DocumentSchema *GoogleCloudDocumentaiV1beta3DocumentSchema `json:"documentSchema,omitempty"` + + // InputData: Optional. The input data used to train the + // `ProcessorVersion`. + InputData *GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequestInputData `json:"inputData,omitempty"` + + // ProcessorVersion: Required. The processor version to be created. + ProcessorVersion *GoogleCloudDocumentaiV1beta3ProcessorVersion `json:"processorVersion,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "BaseProcessorVersion") to unconditionally include in API requests. + // By default, fields with empty or default values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BaseProcessorVersion") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequestInputData: +// The input data used to train a new `ProcessorVersion`. +type GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequestInputData struct { + // TestDocuments: The documents used for testing the trained version. + TestDocuments *GoogleCloudDocumentaiV1beta3BatchDocumentsInputConfig `json:"testDocuments,omitempty"` + + // TrainingDocuments: The documents used for training the new version. + TrainingDocuments *GoogleCloudDocumentaiV1beta3BatchDocumentsInputConfig `json:"trainingDocuments,omitempty"` + + // ForceSendFields is a list of field names (e.g. "TestDocuments") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "TestDocuments") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequestInputData) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequestInputData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDocumentaiV1beta3UndeployProcessorVersionMetadata: The // long running operation metadata for the undeploy processor version // method. @@ -14016,6 +14328,152 @@ func (c *ProjectsLocationsProcessorsProcessorVersionsDeployCall) Do(opts ...goog } +// method id "documentai.projects.locations.processors.processorVersions.evaluateProcessorVersion": + +type ProjectsLocationsProcessorsProcessorVersionsEvaluateProcessorVersionCall struct { + s *Service + processorVersion string + googleclouddocumentaiv1beta3evaluateprocessorversionrequest *GoogleCloudDocumentaiV1beta3EvaluateProcessorVersionRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// EvaluateProcessorVersion: Evaluates a ProcessorVersion against +// annotated documents, producing an Evaluation. +// +// - processorVersion: The resource name of the ProcessorVersion to +// evaluate. +// `projects/{project}/locations/{location}/processors/{processor}/proc +// essorVersions/{processorVersion}`. +func (r *ProjectsLocationsProcessorsProcessorVersionsService) EvaluateProcessorVersion(processorVersion string, googleclouddocumentaiv1beta3evaluateprocessorversionrequest *GoogleCloudDocumentaiV1beta3EvaluateProcessorVersionRequest) *ProjectsLocationsProcessorsProcessorVersionsEvaluateProcessorVersionCall { + c := &ProjectsLocationsProcessorsProcessorVersionsEvaluateProcessorVersionCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.processorVersion = processorVersion + c.googleclouddocumentaiv1beta3evaluateprocessorversionrequest = googleclouddocumentaiv1beta3evaluateprocessorversionrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluateProcessorVersionCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessorsProcessorVersionsEvaluateProcessorVersionCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluateProcessorVersionCall) Context(ctx context.Context) *ProjectsLocationsProcessorsProcessorVersionsEvaluateProcessorVersionCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluateProcessorVersionCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluateProcessorVersionCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddocumentaiv1beta3evaluateprocessorversionrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta3/{+processorVersion}:evaluateProcessorVersion") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "processorVersion": c.processorVersion, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "documentai.projects.locations.processors.processorVersions.evaluateProcessorVersion" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluateProcessorVersionCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Evaluates a ProcessorVersion against annotated documents, producing an Evaluation.", + // "flatPath": "v1beta3/projects/{projectsId}/locations/{locationsId}/processors/{processorsId}/processorVersions/{processorVersionsId}:evaluateProcessorVersion", + // "httpMethod": "POST", + // "id": "documentai.projects.locations.processors.processorVersions.evaluateProcessorVersion", + // "parameterOrder": [ + // "processorVersion" + // ], + // "parameters": { + // "processorVersion": { + // "description": "Required. The resource name of the ProcessorVersion to evaluate. `projects/{project}/locations/{location}/processors/{processor}/processorVersions/{processorVersion}`", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/processors/[^/]+/processorVersions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta3/{+processorVersion}:evaluateProcessorVersion", + // "request": { + // "$ref": "GoogleCloudDocumentaiV1beta3EvaluateProcessorVersionRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "documentai.projects.locations.processors.processorVersions.get": type ProjectsLocationsProcessorsProcessorVersionsGetCall struct { @@ -14514,31 +14972,34 @@ func (c *ProjectsLocationsProcessorsProcessorVersionsProcessCall) Do(opts ...goo } -// method id "documentai.projects.locations.processors.processorVersions.undeploy": +// method id "documentai.projects.locations.processors.processorVersions.train": -type ProjectsLocationsProcessorsProcessorVersionsUndeployCall struct { - s *Service - name string - googleclouddocumentaiv1beta3undeployprocessorversionrequest *GoogleCloudDocumentaiV1beta3UndeployProcessorVersionRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header +type ProjectsLocationsProcessorsProcessorVersionsTrainCall struct { + s *Service + parent string + googleclouddocumentaiv1beta3trainprocessorversionrequest *GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } -// Undeploy: Undeploys the processor version. +// Train: Trains a new processor version. Operation metadata is returned +// as cloud_documentai_core.TrainProcessorVersionMetadata. // -// - name: The processor version resource name to be undeployed. -func (r *ProjectsLocationsProcessorsProcessorVersionsService) Undeploy(name string, googleclouddocumentaiv1beta3undeployprocessorversionrequest *GoogleCloudDocumentaiV1beta3UndeployProcessorVersionRequest) *ProjectsLocationsProcessorsProcessorVersionsUndeployCall { - c := &ProjectsLocationsProcessorsProcessorVersionsUndeployCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.name = name - c.googleclouddocumentaiv1beta3undeployprocessorversionrequest = googleclouddocumentaiv1beta3undeployprocessorversionrequest +// - parent: The parent (project, location and processor) to create the +// new version for. Format: +// `projects/{project}/locations/{location}/processors/{processor}`. +func (r *ProjectsLocationsProcessorsProcessorVersionsService) Train(parent string, googleclouddocumentaiv1beta3trainprocessorversionrequest *GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequest) *ProjectsLocationsProcessorsProcessorVersionsTrainCall { + c := &ProjectsLocationsProcessorsProcessorVersionsTrainCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddocumentaiv1beta3trainprocessorversionrequest = googleclouddocumentaiv1beta3trainprocessorversionrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. -func (c *ProjectsLocationsProcessorsProcessorVersionsUndeployCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessorsProcessorVersionsUndeployCall { +func (c *ProjectsLocationsProcessorsProcessorVersionsTrainCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessorsProcessorVersionsTrainCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -14546,21 +15007,21 @@ func (c *ProjectsLocationsProcessorsProcessorVersionsUndeployCall) Fields(s ...g // Context sets the context to be used in this call's Do method. Any // pending HTTP request will be aborted if the provided context is // canceled. -func (c *ProjectsLocationsProcessorsProcessorVersionsUndeployCall) Context(ctx context.Context) *ProjectsLocationsProcessorsProcessorVersionsUndeployCall { +func (c *ProjectsLocationsProcessorsProcessorVersionsTrainCall) Context(ctx context.Context) *ProjectsLocationsProcessorsProcessorVersionsTrainCall { c.ctx_ = ctx return c } // Header returns an http.Header that can be modified by the caller to // add HTTP headers to the request. -func (c *ProjectsLocationsProcessorsProcessorVersionsUndeployCall) Header() http.Header { +func (c *ProjectsLocationsProcessorsProcessorVersionsTrainCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsProcessorsProcessorVersionsUndeployCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsProcessorsProcessorVersionsTrainCall) doRequest(alt string) (*http.Response, error) { reqHeaders := make(http.Header) reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) for k, v := range c.header_ { @@ -14568,14 +15029,14 @@ func (c *ProjectsLocationsProcessorsProcessorVersionsUndeployCall) doRequest(alt } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddocumentaiv1beta3undeployprocessorversionrequest) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddocumentaiv1beta3trainprocessorversionrequest) if err != nil { return nil, err } reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta3/{+name}:undeploy") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta3/{+parent}/processorVersions:train") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { @@ -14583,19 +15044,19 @@ func (c *ProjectsLocationsProcessorsProcessorVersionsUndeployCall) doRequest(alt } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "name": c.name, + "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "documentai.projects.locations.processors.processorVersions.undeploy" call. +// Do executes the "documentai.projects.locations.processors.processorVersions.train" call. // Exactly one of *GoogleLongrunningOperation or error will be non-nil. // Any non-2xx status code is an error. Response headers are in either // *GoogleLongrunningOperation.ServerResponse.Header or (if a response // was returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was // because http.StatusNotModified was returned. -func (c *ProjectsLocationsProcessorsProcessorVersionsUndeployCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { +func (c *ProjectsLocationsProcessorsProcessorVersionsTrainCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -14626,25 +15087,25 @@ func (c *ProjectsLocationsProcessorsProcessorVersionsUndeployCall) Do(opts ...go } return ret, nil // { - // "description": "Undeploys the processor version.", - // "flatPath": "v1beta3/projects/{projectsId}/locations/{locationsId}/processors/{processorsId}/processorVersions/{processorVersionsId}:undeploy", + // "description": "Trains a new processor version. Operation metadata is returned as cloud_documentai_core.TrainProcessorVersionMetadata.", + // "flatPath": "v1beta3/projects/{projectsId}/locations/{locationsId}/processors/{processorsId}/processorVersions:train", // "httpMethod": "POST", - // "id": "documentai.projects.locations.processors.processorVersions.undeploy", + // "id": "documentai.projects.locations.processors.processorVersions.train", // "parameterOrder": [ - // "name" + // "parent" // ], // "parameters": { - // "name": { - // "description": "Required. The processor version resource name to be undeployed.", + // "parent": { + // "description": "Required. The parent (project, location and processor) to create the new version for. Format: `projects/{project}/locations/{location}/processors/{processor}`.", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/processors/[^/]+/processorVersions/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/processors/[^/]+$", // "required": true, // "type": "string" // } // }, - // "path": "v1beta3/{+name}:undeploy", + // "path": "v1beta3/{+parent}/processorVersions:train", // "request": { - // "$ref": "GoogleCloudDocumentaiV1beta3UndeployProcessorVersionRequest" + // "$ref": "GoogleCloudDocumentaiV1beta3TrainProcessorVersionRequest" // }, // "response": { // "$ref": "GoogleLongrunningOperation" @@ -14655,3 +15116,493 @@ func (c *ProjectsLocationsProcessorsProcessorVersionsUndeployCall) Do(opts ...go // } } + +// method id "documentai.projects.locations.processors.processorVersions.undeploy": + +type ProjectsLocationsProcessorsProcessorVersionsUndeployCall struct { + s *Service + name string + googleclouddocumentaiv1beta3undeployprocessorversionrequest *GoogleCloudDocumentaiV1beta3UndeployProcessorVersionRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Undeploy: Undeploys the processor version. +// +// - name: The processor version resource name to be undeployed. +func (r *ProjectsLocationsProcessorsProcessorVersionsService) Undeploy(name string, googleclouddocumentaiv1beta3undeployprocessorversionrequest *GoogleCloudDocumentaiV1beta3UndeployProcessorVersionRequest) *ProjectsLocationsProcessorsProcessorVersionsUndeployCall { + c := &ProjectsLocationsProcessorsProcessorVersionsUndeployCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleclouddocumentaiv1beta3undeployprocessorversionrequest = googleclouddocumentaiv1beta3undeployprocessorversionrequest + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsProcessorsProcessorVersionsUndeployCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessorsProcessorVersionsUndeployCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsProcessorsProcessorVersionsUndeployCall) Context(ctx context.Context) *ProjectsLocationsProcessorsProcessorVersionsUndeployCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsProcessorsProcessorVersionsUndeployCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsProcessorsProcessorVersionsUndeployCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddocumentaiv1beta3undeployprocessorversionrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta3/{+name}:undeploy") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "documentai.projects.locations.processors.processorVersions.undeploy" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsProcessorsProcessorVersionsUndeployCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Undeploys the processor version.", + // "flatPath": "v1beta3/projects/{projectsId}/locations/{locationsId}/processors/{processorsId}/processorVersions/{processorVersionsId}:undeploy", + // "httpMethod": "POST", + // "id": "documentai.projects.locations.processors.processorVersions.undeploy", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The processor version resource name to be undeployed.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/processors/[^/]+/processorVersions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta3/{+name}:undeploy", + // "request": { + // "$ref": "GoogleCloudDocumentaiV1beta3UndeployProcessorVersionRequest" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "documentai.projects.locations.processors.processorVersions.evaluations.get": + +type ProjectsLocationsProcessorsProcessorVersionsEvaluationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Retrieves a specific evaluation. +// +// - name: The resource name of the Evaluation to get. +// `projects/{project}/locations/{location}/processors/{processor}/proc +// essorVersions/{processorVersion}/evaluations/{evaluation}`. +func (r *ProjectsLocationsProcessorsProcessorVersionsEvaluationsService) Get(name string) *ProjectsLocationsProcessorsProcessorVersionsEvaluationsGetCall { + c := &ProjectsLocationsProcessorsProcessorVersionsEvaluationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessorsProcessorVersionsEvaluationsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsProcessorsProcessorVersionsEvaluationsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluationsGetCall) Context(ctx context.Context) *ProjectsLocationsProcessorsProcessorVersionsEvaluationsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluationsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta3/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "documentai.projects.locations.processors.processorVersions.evaluations.get" call. +// Exactly one of *GoogleCloudDocumentaiV1beta3Evaluation or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleCloudDocumentaiV1beta3Evaluation.ServerResponse.Header or (if +// a response was returned at all) in error.(*googleapi.Error).Header. +// Use googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDocumentaiV1beta3Evaluation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudDocumentaiV1beta3Evaluation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves a specific evaluation.", + // "flatPath": "v1beta3/projects/{projectsId}/locations/{locationsId}/processors/{processorsId}/processorVersions/{processorVersionsId}/evaluations/{evaluationsId}", + // "httpMethod": "GET", + // "id": "documentai.projects.locations.processors.processorVersions.evaluations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The resource name of the Evaluation to get. `projects/{project}/locations/{location}/processors/{processor}/processorVersions/{processorVersion}/evaluations/{evaluation}`", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/processors/[^/]+/processorVersions/[^/]+/evaluations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta3/{+name}", + // "response": { + // "$ref": "GoogleCloudDocumentaiV1beta3Evaluation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "documentai.projects.locations.processors.processorVersions.evaluations.list": + +type ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Retrieves a set of evaluations for a given processor version. +// +// - parent: The resource name of the ProcessorVersion to list +// evaluations for. +// `projects/{project}/locations/{location}/processors/{processor}/proc +// essorVersions/{processorVersion}`. +func (r *ProjectsLocationsProcessorsProcessorVersionsEvaluationsService) List(parent string) *ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall { + c := &ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The standard list +// page size. If unspecified, at most 5 evaluations will be returned. +// The maximum value is 100; values above 100 will be coerced to 100. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall) PageSize(pageSize int64) *ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token, +// received from a previous `ListEvaluations` call. Provide this to +// retrieve the subsequent page. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall) PageToken(pageToken string) *ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall) Context(ctx context.Context) *ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta3/{+parent}/evaluations") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "documentai.projects.locations.processors.processorVersions.evaluations.list" call. +// Exactly one of *GoogleCloudDocumentaiV1beta3ListEvaluationsResponse +// or error will be non-nil. Any non-2xx status code is an error. +// Response headers are in either +// *GoogleCloudDocumentaiV1beta3ListEvaluationsResponse.ServerResponse.He +// ader or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDocumentaiV1beta3ListEvaluationsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudDocumentaiV1beta3ListEvaluationsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Retrieves a set of evaluations for a given processor version.", + // "flatPath": "v1beta3/projects/{projectsId}/locations/{locationsId}/processors/{processorsId}/processorVersions/{processorVersionsId}/evaluations", + // "httpMethod": "GET", + // "id": "documentai.projects.locations.processors.processorVersions.evaluations.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "The standard list page size. If unspecified, at most 5 evaluations will be returned. The maximum value is 100; values above 100 will be coerced to 100.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A page token, received from a previous `ListEvaluations` call. Provide this to retrieve the subsequent page.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The resource name of the ProcessorVersion to list evaluations for. `projects/{project}/locations/{location}/processors/{processor}/processorVersions/{processorVersion}`", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/processors/[^/]+/processorVersions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta3/{+parent}/evaluations", + // "response": { + // "$ref": "GoogleCloudDocumentaiV1beta3ListEvaluationsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsLocationsProcessorsProcessorVersionsEvaluationsListCall) Pages(ctx context.Context, f func(*GoogleCloudDocumentaiV1beta3ListEvaluationsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} diff --git a/domains/v1/domains-api.json b/domains/v1/domains-api.json index f75d233655c..cbd81bb10b9 100644 --- a/domains/v1/domains-api.json +++ b/domains/v1/domains-api.json @@ -843,7 +843,7 @@ } } }, - "revision": "20220830", + "revision": "20221101", "rootUrl": "https://domains.googleapis.com/", "schemas": { "AuditConfig": { @@ -914,7 +914,7 @@ "description": "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)." }, "members": { - "description": "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. * `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`. * `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. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. ", + "description": "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`. * `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. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. ", "items": { "type": "string" }, diff --git a/domains/v1/domains-gen.go b/domains/v1/domains-gen.go index 12c27537335..fa9256d5b3e 100644 --- a/domains/v1/domains-gen.go +++ b/domains/v1/domains-gen.go @@ -329,11 +329,12 @@ type Binding struct { // `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. * - // `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, + // 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 diff --git a/domains/v1alpha2/domains-api.json b/domains/v1alpha2/domains-api.json index 6faa5fe7ee5..81a49c26013 100644 --- a/domains/v1alpha2/domains-api.json +++ b/domains/v1alpha2/domains-api.json @@ -843,7 +843,7 @@ } } }, - "revision": "20220830", + "revision": "20221101", "rootUrl": "https://domains.googleapis.com/", "schemas": { "AuditConfig": { @@ -914,7 +914,7 @@ "description": "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)." }, "members": { - "description": "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. * `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`. * `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. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. ", + "description": "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`. * `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. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. ", "items": { "type": "string" }, diff --git a/domains/v1alpha2/domains-gen.go b/domains/v1alpha2/domains-gen.go index 76886034d1b..26df4d83f93 100644 --- a/domains/v1alpha2/domains-gen.go +++ b/domains/v1alpha2/domains-gen.go @@ -329,11 +329,12 @@ type Binding struct { // `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. * - // `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, + // 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 diff --git a/domains/v1beta1/domains-api.json b/domains/v1beta1/domains-api.json index 491c31ef10b..9cf06348590 100644 --- a/domains/v1beta1/domains-api.json +++ b/domains/v1beta1/domains-api.json @@ -843,7 +843,7 @@ } } }, - "revision": "20220830", + "revision": "20221101", "rootUrl": "https://domains.googleapis.com/", "schemas": { "AuditConfig": { @@ -914,7 +914,7 @@ "description": "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)." }, "members": { - "description": "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. * `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`. * `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. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. ", + "description": "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`. * `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. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. ", "items": { "type": "string" }, diff --git a/domains/v1beta1/domains-gen.go b/domains/v1beta1/domains-gen.go index 21cdd1b3aa8..e5c58d67966 100644 --- a/domains/v1beta1/domains-gen.go +++ b/domains/v1beta1/domains-gen.go @@ -329,11 +329,12 @@ type Binding struct { // `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. * - // `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, + // 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 diff --git a/doubleclicksearch/v2/doubleclicksearch-api.json b/doubleclicksearch/v2/doubleclicksearch-api.json index 4b3059570f5..5e4a7a807f5 100644 --- a/doubleclicksearch/v2/doubleclicksearch-api.json +++ b/doubleclicksearch/v2/doubleclicksearch-api.json @@ -106,13 +106,15 @@ "resources": { "conversion": { "methods": { - "GetCustomerId": { + "get": { "description": "Retrieves a list of conversions from a DoubleClick Search engine account.", - "flatPath": "doubleclicksearch/v2/customer/{customerId}/conversion", + "flatPath": "doubleclicksearch/v2/agency/{agencyId}/advertiser/{advertiserId}/engine/{engineAccountId}/conversion", "httpMethod": "GET", - "id": "doubleclicksearch.conversion.GetCustomerId", + "id": "doubleclicksearch.conversion.get", "parameterOrder": [ - "customerId", + "agencyId", + "advertiserId", + "engineAccountId", "endDate", "rowCount", "startDate", @@ -134,13 +136,15 @@ "advertiserId": { "description": "Numeric ID of the advertiser.", "format": "int64", - "location": "query", + "location": "path", + "required": true, "type": "string" }, "agencyId": { "description": "Numeric ID of the agency.", "format": "int64", - "location": "query", + "location": "path", + "required": true, "type": "string" }, "campaignId": { @@ -157,8 +161,7 @@ }, "customerId": { "description": "Customer ID of a client account in the new Search Ads 360 experience.", - "location": "path", - "required": true, + "location": "query", "type": "string" }, "endDate": { @@ -173,7 +176,8 @@ "engineAccountId": { "description": "Numeric ID of the engine account.", "format": "int64", - "location": "query", + "location": "path", + "required": true, "type": "string" }, "rowCount": { @@ -202,7 +206,7 @@ "type": "integer" } }, - "path": "doubleclicksearch/v2/customer/{customerId}/conversion", + "path": "doubleclicksearch/v2/agency/{agencyId}/advertiser/{advertiserId}/engine/{engineAccountId}/conversion", "response": { "$ref": "ConversionList" }, @@ -210,15 +214,13 @@ "https://www.googleapis.com/auth/doubleclicksearch" ] }, - "get": { + "getByCustomerId": { "description": "Retrieves a list of conversions from a DoubleClick Search engine account.", - "flatPath": "doubleclicksearch/v2/agency/{agencyId}/advertiser/{advertiserId}/engine/{engineAccountId}/conversion", + "flatPath": "doubleclicksearch/v2/customer/{customerId}/conversion", "httpMethod": "GET", - "id": "doubleclicksearch.conversion.get", + "id": "doubleclicksearch.conversion.getByCustomerId", "parameterOrder": [ - "agencyId", - "advertiserId", - "engineAccountId", + "customerId", "endDate", "rowCount", "startDate", @@ -240,15 +242,13 @@ "advertiserId": { "description": "Numeric ID of the advertiser.", "format": "int64", - "location": "path", - "required": true, + "location": "query", "type": "string" }, "agencyId": { "description": "Numeric ID of the agency.", "format": "int64", - "location": "path", - "required": true, + "location": "query", "type": "string" }, "campaignId": { @@ -265,7 +265,8 @@ }, "customerId": { "description": "Customer ID of a client account in the new Search Ads 360 experience.", - "location": "query", + "location": "path", + "required": true, "type": "string" }, "endDate": { @@ -280,8 +281,7 @@ "engineAccountId": { "description": "Numeric ID of the engine account.", "format": "int64", - "location": "path", - "required": true, + "location": "query", "type": "string" }, "rowCount": { @@ -310,7 +310,7 @@ "type": "integer" } }, - "path": "doubleclicksearch/v2/agency/{agencyId}/advertiser/{advertiserId}/engine/{engineAccountId}/conversion", + "path": "doubleclicksearch/v2/customer/{customerId}/conversion", "response": { "$ref": "ConversionList" }, @@ -543,7 +543,7 @@ } } }, - "revision": "20221025", + "revision": "20221108", "rootUrl": "https://doubleclicksearch.googleapis.com/", "schemas": { "Availability": { diff --git a/doubleclicksearch/v2/doubleclicksearch-gen.go b/doubleclicksearch/v2/doubleclicksearch-gen.go index 4b49a8a7ead..efac53a9409 100644 --- a/doubleclicksearch/v2/doubleclicksearch-gen.go +++ b/doubleclicksearch/v2/doubleclicksearch-gen.go @@ -1081,32 +1081,37 @@ func (s *UpdateAvailabilityResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// method id "doubleclicksearch.conversion.GetCustomerId": +// method id "doubleclicksearch.conversion.get": -type ConversionGetCustomerIdCall struct { - s *Service - customerId string - urlParams_ gensupport.URLParams - ifNoneMatch_ string - ctx_ context.Context - header_ http.Header +type ConversionGetCall struct { + s *Service + agencyId int64 + advertiserId int64 + engineAccountId int64 + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header } -// GetCustomerId: Retrieves a list of conversions from a DoubleClick -// Search engine account. +// Get: Retrieves a list of conversions from a DoubleClick Search engine +// account. // -// - customerId: Customer ID of a client account in the new Search Ads -// 360 experience. +// - advertiserId: Numeric ID of the advertiser. +// - agencyId: Numeric ID of the agency. // - endDate: Last date (inclusive) on which to retrieve conversions. // Format is yyyymmdd. +// - engineAccountId: Numeric ID of the engine account. // - rowCount: The number of conversions to return per call. // - startDate: First date (inclusive) on which to retrieve conversions. // Format is yyyymmdd. // - startRow: The 0-based starting index for retrieving conversions // results. -func (r *ConversionService) GetCustomerId(customerId string, endDate int64, rowCount int64, startDate int64, startRow int64) *ConversionGetCustomerIdCall { - c := &ConversionGetCustomerIdCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.customerId = customerId +func (r *ConversionService) Get(agencyId int64, advertiserId int64, engineAccountId int64, endDate int64, rowCount int64, startDate int64, startRow int64) *ConversionGetCall { + c := &ConversionGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.agencyId = agencyId + c.advertiserId = advertiserId + c.engineAccountId = engineAccountId c.urlParams_.Set("endDate", fmt.Sprint(endDate)) c.urlParams_.Set("rowCount", fmt.Sprint(rowCount)) c.urlParams_.Set("startDate", fmt.Sprint(startDate)) @@ -1116,56 +1121,42 @@ func (r *ConversionService) GetCustomerId(customerId string, endDate int64, rowC // AdGroupId sets the optional parameter "adGroupId": Numeric ID of the // ad group. -func (c *ConversionGetCustomerIdCall) AdGroupId(adGroupId int64) *ConversionGetCustomerIdCall { +func (c *ConversionGetCall) AdGroupId(adGroupId int64) *ConversionGetCall { c.urlParams_.Set("adGroupId", fmt.Sprint(adGroupId)) return c } // AdId sets the optional parameter "adId": Numeric ID of the ad. -func (c *ConversionGetCustomerIdCall) AdId(adId int64) *ConversionGetCustomerIdCall { +func (c *ConversionGetCall) AdId(adId int64) *ConversionGetCall { c.urlParams_.Set("adId", fmt.Sprint(adId)) return c } -// AdvertiserId sets the optional parameter "advertiserId": Numeric ID -// of the advertiser. -func (c *ConversionGetCustomerIdCall) AdvertiserId(advertiserId int64) *ConversionGetCustomerIdCall { - c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId)) - return c -} - -// AgencyId sets the optional parameter "agencyId": Numeric ID of the -// agency. -func (c *ConversionGetCustomerIdCall) AgencyId(agencyId int64) *ConversionGetCustomerIdCall { - c.urlParams_.Set("agencyId", fmt.Sprint(agencyId)) - return c -} - // CampaignId sets the optional parameter "campaignId": Numeric ID of // the campaign. -func (c *ConversionGetCustomerIdCall) CampaignId(campaignId int64) *ConversionGetCustomerIdCall { +func (c *ConversionGetCall) CampaignId(campaignId int64) *ConversionGetCall { c.urlParams_.Set("campaignId", fmt.Sprint(campaignId)) return c } // CriterionId sets the optional parameter "criterionId": Numeric ID of // the criterion. -func (c *ConversionGetCustomerIdCall) CriterionId(criterionId int64) *ConversionGetCustomerIdCall { +func (c *ConversionGetCall) CriterionId(criterionId int64) *ConversionGetCall { c.urlParams_.Set("criterionId", fmt.Sprint(criterionId)) return c } -// EngineAccountId sets the optional parameter "engineAccountId": -// Numeric ID of the engine account. -func (c *ConversionGetCustomerIdCall) EngineAccountId(engineAccountId int64) *ConversionGetCustomerIdCall { - c.urlParams_.Set("engineAccountId", fmt.Sprint(engineAccountId)) +// CustomerId sets the optional parameter "customerId": Customer ID of a +// client account in the new Search Ads 360 experience. +func (c *ConversionGetCall) CustomerId(customerId string) *ConversionGetCall { + c.urlParams_.Set("customerId", customerId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. -func (c *ConversionGetCustomerIdCall) Fields(s ...googleapi.Field) *ConversionGetCustomerIdCall { +func (c *ConversionGetCall) Fields(s ...googleapi.Field) *ConversionGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -1175,7 +1166,7 @@ func (c *ConversionGetCustomerIdCall) Fields(s ...googleapi.Field) *ConversionGe // getting updates only after the object has changed since the last // request. Use googleapi.IsNotModified to check whether the response // error from Do is the result of In-None-Match. -func (c *ConversionGetCustomerIdCall) IfNoneMatch(entityTag string) *ConversionGetCustomerIdCall { +func (c *ConversionGetCall) IfNoneMatch(entityTag string) *ConversionGetCall { c.ifNoneMatch_ = entityTag return c } @@ -1183,21 +1174,21 @@ func (c *ConversionGetCustomerIdCall) IfNoneMatch(entityTag string) *ConversionG // Context sets the context to be used in this call's Do method. Any // pending HTTP request will be aborted if the provided context is // canceled. -func (c *ConversionGetCustomerIdCall) Context(ctx context.Context) *ConversionGetCustomerIdCall { +func (c *ConversionGetCall) Context(ctx context.Context) *ConversionGetCall { c.ctx_ = ctx return c } // Header returns an http.Header that can be modified by the caller to // add HTTP headers to the request. -func (c *ConversionGetCustomerIdCall) Header() http.Header { +func (c *ConversionGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ConversionGetCustomerIdCall) doRequest(alt string) (*http.Response, error) { +func (c *ConversionGetCall) doRequest(alt string) (*http.Response, error) { reqHeaders := make(http.Header) reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) for k, v := range c.header_ { @@ -1210,7 +1201,7 @@ func (c *ConversionGetCustomerIdCall) doRequest(alt string) (*http.Response, err var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "doubleclicksearch/v2/customer/{customerId}/conversion") + urls := googleapi.ResolveRelative(c.s.BasePath, "doubleclicksearch/v2/agency/{agencyId}/advertiser/{advertiserId}/engine/{engineAccountId}/conversion") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { @@ -1218,19 +1209,21 @@ func (c *ConversionGetCustomerIdCall) doRequest(alt string) (*http.Response, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "customerId": c.customerId, + "agencyId": strconv.FormatInt(c.agencyId, 10), + "advertiserId": strconv.FormatInt(c.advertiserId, 10), + "engineAccountId": strconv.FormatInt(c.engineAccountId, 10), }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "doubleclicksearch.conversion.GetCustomerId" call. +// Do executes the "doubleclicksearch.conversion.get" call. // Exactly one of *ConversionList or error will be non-nil. Any non-2xx // status code is an error. Response headers are in either // *ConversionList.ServerResponse.Header or (if a response was returned // at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was // because http.StatusNotModified was returned. -func (c *ConversionGetCustomerIdCall) Do(opts ...googleapi.CallOption) (*ConversionList, error) { +func (c *ConversionGetCall) Do(opts ...googleapi.CallOption) (*ConversionList, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -1262,11 +1255,13 @@ func (c *ConversionGetCustomerIdCall) Do(opts ...googleapi.CallOption) (*Convers return ret, nil // { // "description": "Retrieves a list of conversions from a DoubleClick Search engine account.", - // "flatPath": "doubleclicksearch/v2/customer/{customerId}/conversion", + // "flatPath": "doubleclicksearch/v2/agency/{agencyId}/advertiser/{advertiserId}/engine/{engineAccountId}/conversion", // "httpMethod": "GET", - // "id": "doubleclicksearch.conversion.GetCustomerId", + // "id": "doubleclicksearch.conversion.get", // "parameterOrder": [ - // "customerId", + // "agencyId", + // "advertiserId", + // "engineAccountId", // "endDate", // "rowCount", // "startDate", @@ -1288,13 +1283,15 @@ func (c *ConversionGetCustomerIdCall) Do(opts ...googleapi.CallOption) (*Convers // "advertiserId": { // "description": "Numeric ID of the advertiser.", // "format": "int64", - // "location": "query", + // "location": "path", + // "required": true, // "type": "string" // }, // "agencyId": { // "description": "Numeric ID of the agency.", // "format": "int64", - // "location": "query", + // "location": "path", + // "required": true, // "type": "string" // }, // "campaignId": { @@ -1311,8 +1308,7 @@ func (c *ConversionGetCustomerIdCall) Do(opts ...googleapi.CallOption) (*Convers // }, // "customerId": { // "description": "Customer ID of a client account in the new Search Ads 360 experience.", - // "location": "path", - // "required": true, + // "location": "query", // "type": "string" // }, // "endDate": { @@ -1327,7 +1323,8 @@ func (c *ConversionGetCustomerIdCall) Do(opts ...googleapi.CallOption) (*Convers // "engineAccountId": { // "description": "Numeric ID of the engine account.", // "format": "int64", - // "location": "query", + // "location": "path", + // "required": true, // "type": "string" // }, // "rowCount": { @@ -1356,7 +1353,7 @@ func (c *ConversionGetCustomerIdCall) Do(opts ...googleapi.CallOption) (*Convers // "type": "integer" // } // }, - // "path": "doubleclicksearch/v2/customer/{customerId}/conversion", + // "path": "doubleclicksearch/v2/agency/{agencyId}/advertiser/{advertiserId}/engine/{engineAccountId}/conversion", // "response": { // "$ref": "ConversionList" // }, @@ -1367,37 +1364,32 @@ func (c *ConversionGetCustomerIdCall) Do(opts ...googleapi.CallOption) (*Convers } -// method id "doubleclicksearch.conversion.get": +// method id "doubleclicksearch.conversion.getByCustomerId": -type ConversionGetCall struct { - s *Service - agencyId int64 - advertiserId int64 - engineAccountId int64 - urlParams_ gensupport.URLParams - ifNoneMatch_ string - ctx_ context.Context - header_ http.Header +type ConversionGetByCustomerIdCall struct { + s *Service + customerId string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header } -// Get: Retrieves a list of conversions from a DoubleClick Search engine -// account. +// GetByCustomerId: Retrieves a list of conversions from a DoubleClick +// Search engine account. // -// - advertiserId: Numeric ID of the advertiser. -// - agencyId: Numeric ID of the agency. +// - customerId: Customer ID of a client account in the new Search Ads +// 360 experience. // - endDate: Last date (inclusive) on which to retrieve conversions. // Format is yyyymmdd. -// - engineAccountId: Numeric ID of the engine account. // - rowCount: The number of conversions to return per call. // - startDate: First date (inclusive) on which to retrieve conversions. // Format is yyyymmdd. // - startRow: The 0-based starting index for retrieving conversions // results. -func (r *ConversionService) Get(agencyId int64, advertiserId int64, engineAccountId int64, endDate int64, rowCount int64, startDate int64, startRow int64) *ConversionGetCall { - c := &ConversionGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.agencyId = agencyId - c.advertiserId = advertiserId - c.engineAccountId = engineAccountId +func (r *ConversionService) GetByCustomerId(customerId string, endDate int64, rowCount int64, startDate int64, startRow int64) *ConversionGetByCustomerIdCall { + c := &ConversionGetByCustomerIdCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.customerId = customerId c.urlParams_.Set("endDate", fmt.Sprint(endDate)) c.urlParams_.Set("rowCount", fmt.Sprint(rowCount)) c.urlParams_.Set("startDate", fmt.Sprint(startDate)) @@ -1407,42 +1399,56 @@ func (r *ConversionService) Get(agencyId int64, advertiserId int64, engineAccoun // AdGroupId sets the optional parameter "adGroupId": Numeric ID of the // ad group. -func (c *ConversionGetCall) AdGroupId(adGroupId int64) *ConversionGetCall { +func (c *ConversionGetByCustomerIdCall) AdGroupId(adGroupId int64) *ConversionGetByCustomerIdCall { c.urlParams_.Set("adGroupId", fmt.Sprint(adGroupId)) return c } // AdId sets the optional parameter "adId": Numeric ID of the ad. -func (c *ConversionGetCall) AdId(adId int64) *ConversionGetCall { +func (c *ConversionGetByCustomerIdCall) AdId(adId int64) *ConversionGetByCustomerIdCall { c.urlParams_.Set("adId", fmt.Sprint(adId)) return c } +// AdvertiserId sets the optional parameter "advertiserId": Numeric ID +// of the advertiser. +func (c *ConversionGetByCustomerIdCall) AdvertiserId(advertiserId int64) *ConversionGetByCustomerIdCall { + c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId)) + return c +} + +// AgencyId sets the optional parameter "agencyId": Numeric ID of the +// agency. +func (c *ConversionGetByCustomerIdCall) AgencyId(agencyId int64) *ConversionGetByCustomerIdCall { + c.urlParams_.Set("agencyId", fmt.Sprint(agencyId)) + return c +} + // CampaignId sets the optional parameter "campaignId": Numeric ID of // the campaign. -func (c *ConversionGetCall) CampaignId(campaignId int64) *ConversionGetCall { +func (c *ConversionGetByCustomerIdCall) CampaignId(campaignId int64) *ConversionGetByCustomerIdCall { c.urlParams_.Set("campaignId", fmt.Sprint(campaignId)) return c } // CriterionId sets the optional parameter "criterionId": Numeric ID of // the criterion. -func (c *ConversionGetCall) CriterionId(criterionId int64) *ConversionGetCall { +func (c *ConversionGetByCustomerIdCall) CriterionId(criterionId int64) *ConversionGetByCustomerIdCall { c.urlParams_.Set("criterionId", fmt.Sprint(criterionId)) return c } -// CustomerId sets the optional parameter "customerId": Customer ID of a -// client account in the new Search Ads 360 experience. -func (c *ConversionGetCall) CustomerId(customerId string) *ConversionGetCall { - c.urlParams_.Set("customerId", customerId) +// EngineAccountId sets the optional parameter "engineAccountId": +// Numeric ID of the engine account. +func (c *ConversionGetByCustomerIdCall) EngineAccountId(engineAccountId int64) *ConversionGetByCustomerIdCall { + c.urlParams_.Set("engineAccountId", fmt.Sprint(engineAccountId)) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. -func (c *ConversionGetCall) Fields(s ...googleapi.Field) *ConversionGetCall { +func (c *ConversionGetByCustomerIdCall) Fields(s ...googleapi.Field) *ConversionGetByCustomerIdCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -1452,7 +1458,7 @@ func (c *ConversionGetCall) Fields(s ...googleapi.Field) *ConversionGetCall { // getting updates only after the object has changed since the last // request. Use googleapi.IsNotModified to check whether the response // error from Do is the result of In-None-Match. -func (c *ConversionGetCall) IfNoneMatch(entityTag string) *ConversionGetCall { +func (c *ConversionGetByCustomerIdCall) IfNoneMatch(entityTag string) *ConversionGetByCustomerIdCall { c.ifNoneMatch_ = entityTag return c } @@ -1460,21 +1466,21 @@ func (c *ConversionGetCall) IfNoneMatch(entityTag string) *ConversionGetCall { // Context sets the context to be used in this call's Do method. Any // pending HTTP request will be aborted if the provided context is // canceled. -func (c *ConversionGetCall) Context(ctx context.Context) *ConversionGetCall { +func (c *ConversionGetByCustomerIdCall) Context(ctx context.Context) *ConversionGetByCustomerIdCall { c.ctx_ = ctx return c } // Header returns an http.Header that can be modified by the caller to // add HTTP headers to the request. -func (c *ConversionGetCall) Header() http.Header { +func (c *ConversionGetByCustomerIdCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ConversionGetCall) doRequest(alt string) (*http.Response, error) { +func (c *ConversionGetByCustomerIdCall) doRequest(alt string) (*http.Response, error) { reqHeaders := make(http.Header) reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) for k, v := range c.header_ { @@ -1487,7 +1493,7 @@ func (c *ConversionGetCall) doRequest(alt string) (*http.Response, error) { var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "doubleclicksearch/v2/agency/{agencyId}/advertiser/{advertiserId}/engine/{engineAccountId}/conversion") + urls := googleapi.ResolveRelative(c.s.BasePath, "doubleclicksearch/v2/customer/{customerId}/conversion") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { @@ -1495,21 +1501,19 @@ func (c *ConversionGetCall) doRequest(alt string) (*http.Response, error) { } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "agencyId": strconv.FormatInt(c.agencyId, 10), - "advertiserId": strconv.FormatInt(c.advertiserId, 10), - "engineAccountId": strconv.FormatInt(c.engineAccountId, 10), + "customerId": c.customerId, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "doubleclicksearch.conversion.get" call. +// Do executes the "doubleclicksearch.conversion.getByCustomerId" call. // Exactly one of *ConversionList or error will be non-nil. Any non-2xx // status code is an error. Response headers are in either // *ConversionList.ServerResponse.Header or (if a response was returned // at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was // because http.StatusNotModified was returned. -func (c *ConversionGetCall) Do(opts ...googleapi.CallOption) (*ConversionList, error) { +func (c *ConversionGetByCustomerIdCall) Do(opts ...googleapi.CallOption) (*ConversionList, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -1541,13 +1545,11 @@ func (c *ConversionGetCall) Do(opts ...googleapi.CallOption) (*ConversionList, e return ret, nil // { // "description": "Retrieves a list of conversions from a DoubleClick Search engine account.", - // "flatPath": "doubleclicksearch/v2/agency/{agencyId}/advertiser/{advertiserId}/engine/{engineAccountId}/conversion", + // "flatPath": "doubleclicksearch/v2/customer/{customerId}/conversion", // "httpMethod": "GET", - // "id": "doubleclicksearch.conversion.get", + // "id": "doubleclicksearch.conversion.getByCustomerId", // "parameterOrder": [ - // "agencyId", - // "advertiserId", - // "engineAccountId", + // "customerId", // "endDate", // "rowCount", // "startDate", @@ -1569,15 +1571,13 @@ func (c *ConversionGetCall) Do(opts ...googleapi.CallOption) (*ConversionList, e // "advertiserId": { // "description": "Numeric ID of the advertiser.", // "format": "int64", - // "location": "path", - // "required": true, + // "location": "query", // "type": "string" // }, // "agencyId": { // "description": "Numeric ID of the agency.", // "format": "int64", - // "location": "path", - // "required": true, + // "location": "query", // "type": "string" // }, // "campaignId": { @@ -1594,7 +1594,8 @@ func (c *ConversionGetCall) Do(opts ...googleapi.CallOption) (*ConversionList, e // }, // "customerId": { // "description": "Customer ID of a client account in the new Search Ads 360 experience.", - // "location": "query", + // "location": "path", + // "required": true, // "type": "string" // }, // "endDate": { @@ -1609,8 +1610,7 @@ func (c *ConversionGetCall) Do(opts ...googleapi.CallOption) (*ConversionList, e // "engineAccountId": { // "description": "Numeric ID of the engine account.", // "format": "int64", - // "location": "path", - // "required": true, + // "location": "query", // "type": "string" // }, // "rowCount": { @@ -1639,7 +1639,7 @@ func (c *ConversionGetCall) Do(opts ...googleapi.CallOption) (*ConversionList, e // "type": "integer" // } // }, - // "path": "doubleclicksearch/v2/agency/{agencyId}/advertiser/{advertiserId}/engine/{engineAccountId}/conversion", + // "path": "doubleclicksearch/v2/customer/{customerId}/conversion", // "response": { // "$ref": "ConversionList" // }, diff --git a/firebasedatabase/v1beta/firebasedatabase-api.json b/firebasedatabase/v1beta/firebasedatabase-api.json index dedfdedd035..a2d87b2c41b 100644 --- a/firebasedatabase/v1beta/firebasedatabase-api.json +++ b/firebasedatabase/v1beta/firebasedatabase-api.json @@ -135,7 +135,7 @@ "type": "string" }, "parent": { - "description": "The parent project for which to create a database instance, in the form: `projects/{project-number}/locations/{location-id}`.", + "description": "Required. The parent project for which to create a database instance, in the form: `projects/{project-number}/locations/{location-id}`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -169,7 +169,7 @@ ], "parameters": { "name": { - "description": "The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`", + "description": "Required. The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/instances/[^/]+$", "required": true, @@ -195,7 +195,7 @@ ], "parameters": { "name": { - "description": "The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`", + "description": "Required. The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/instances/[^/]+$", "required": true, @@ -224,7 +224,7 @@ ], "parameters": { "name": { - "description": "The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`. `database-id` is a globally unique identifier across all parent collections. For convenience, this method allows you to supply `-` as a wildcard character in place of specific collections under `projects` and `locations`. The resulting wildcarding form of the method is: `projects/-/locations/-/instances/{database-id}`.", + "description": "Required. The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`. `database-id` is a globally unique identifier across all parent collections. For convenience, this method allows you to supply `-` as a wildcard character in place of specific collections under `projects` and `locations`. The resulting wildcarding form of the method is: `projects/-/locations/-/instances/{database-id}`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/instances/[^/]+$", "required": true, @@ -263,7 +263,7 @@ "type": "string" }, "parent": { - "description": "The parent project for which to list database instances, in the form: `projects/{project-number}/locations/{location-id}` To list across all locations, use a parent in the form: `projects/{project-number}/locations/-`", + "description": "Required. The parent project for which to list database instances, in the form: `projects/{project-number}/locations/{location-id}` To list across all locations, use a parent in the form: `projects/{project-number}/locations/-`", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -296,7 +296,7 @@ ], "parameters": { "name": { - "description": "The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`", + "description": "Required. The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/instances/[^/]+$", "required": true, @@ -325,7 +325,7 @@ ], "parameters": { "name": { - "description": "The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`", + "description": "Required. The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/instances/[^/]+$", "required": true, @@ -351,7 +351,7 @@ } } }, - "revision": "20220913", + "revision": "20221114", "rootUrl": "https://firebasedatabase.googleapis.com/", "schemas": { "DatabaseInstance": { diff --git a/firebasedatabase/v1beta/firebasedatabase-gen.go b/firebasedatabase/v1beta/firebasedatabase-gen.go index c496bc23a8d..f90e24f125a 100644 --- a/firebasedatabase/v1beta/firebasedatabase-gen.go +++ b/firebasedatabase/v1beta/firebasedatabase-gen.go @@ -460,7 +460,7 @@ func (c *ProjectsLocationsInstancesCreateCall) Do(opts ...googleapi.CallOption) // "type": "string" // }, // "parent": { - // "description": "The parent project for which to create a database instance, in the form: `projects/{project-number}/locations/{location-id}`.", + // "description": "Required. The parent project for which to create a database instance, in the form: `projects/{project-number}/locations/{location-id}`.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+$", // "required": true, @@ -608,7 +608,7 @@ func (c *ProjectsLocationsInstancesDeleteCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "name": { - // "description": "The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`", + // "description": "Required. The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/instances/[^/]+$", // "required": true, @@ -754,7 +754,7 @@ func (c *ProjectsLocationsInstancesDisableCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "name": { - // "description": "The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`", + // "description": "Required. The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/instances/[^/]+$", // "required": true, @@ -912,7 +912,7 @@ func (c *ProjectsLocationsInstancesGetCall) Do(opts ...googleapi.CallOption) (*D // ], // "parameters": { // "name": { - // "description": "The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`. `database-id` is a globally unique identifier across all parent collections. For convenience, this method allows you to supply `-` as a wildcard character in place of specific collections under `projects` and `locations`. The resulting wildcarding form of the method is: `projects/-/locations/-/instances/{database-id}`.", + // "description": "Required. The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`. `database-id` is a globally unique identifier across all parent collections. For convenience, this method allows you to supply `-` as a wildcard character in place of specific collections under `projects` and `locations`. The resulting wildcarding form of the method is: `projects/-/locations/-/instances/{database-id}`.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/instances/[^/]+$", // "required": true, @@ -1105,7 +1105,7 @@ func (c *ProjectsLocationsInstancesListCall) Do(opts ...googleapi.CallOption) (* // "type": "string" // }, // "parent": { - // "description": "The parent project for which to list database instances, in the form: `projects/{project-number}/locations/{location-id}` To list across all locations, use a parent in the form: `projects/{project-number}/locations/-`", + // "description": "Required. The parent project for which to list database instances, in the form: `projects/{project-number}/locations/{location-id}` To list across all locations, use a parent in the form: `projects/{project-number}/locations/-`", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+$", // "required": true, @@ -1278,7 +1278,7 @@ func (c *ProjectsLocationsInstancesReenableCall) Do(opts ...googleapi.CallOption // ], // "parameters": { // "name": { - // "description": "The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`", + // "description": "Required. The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/instances/[^/]+$", // "required": true, @@ -1429,7 +1429,7 @@ func (c *ProjectsLocationsInstancesUndeleteCall) Do(opts ...googleapi.CallOption // ], // "parameters": { // "name": { - // "description": "The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`", + // "description": "Required. The fully qualified resource name of the database instance, in the form: `projects/{project-number}/locations/{location-id}/instances/{database-id}`", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/instances/[^/]+$", // "required": true, diff --git a/firestore/v1/firestore-api.json b/firestore/v1/firestore-api.json index b5660ff46a8..23cf94090a1 100644 --- a/firestore/v1/firestore-api.json +++ b/firestore/v1/firestore-api.json @@ -1382,7 +1382,7 @@ } } }, - "revision": "20221017", + "revision": "20221029", "rootUrl": "https://firestore.googleapis.com/", "schemas": { "Aggregation": { @@ -2285,6 +2285,18 @@ "description": "Cloud Firestore indexes enable simple and complex queries against documents in a database.", "id": "GoogleFirestoreAdminV1Index", "properties": { + "apiScope": { + "description": "The API scope supported by this index.", + "enum": [ + "ANY_API", + "DATASTORE_MODE_API" + ], + "enumDescriptions": [ + "The index can be used by both Firestore Native and Firestore in Datastore Mode query API. This is the default.", + "The index can only be used by the Firestore in Datastore Mode query API." + ], + "type": "string" + }, "fields": { "description": "The fields supported by this index. For composite indexes, this requires a minimum of 2 and a maximum of 100 fields. The last field entry is always for the field path `__name__`. If, on creation, `__name__` was not specified as the last field, it will be added automatically with the same direction as that of the last field defined. If the final field in a composite index is not directional, the `__name__` will be ordered ASCENDING (unless explicitly specified). For single field indexes, this will always be exactly one entry with a field path equal to the field path of the associated field.", "items": { @@ -2301,12 +2313,14 @@ "enum": [ "QUERY_SCOPE_UNSPECIFIED", "COLLECTION", - "COLLECTION_GROUP" + "COLLECTION_GROUP", + "COLLECTION_RECURSIVE" ], "enumDescriptions": [ "The query scope is unspecified. Not a valid option.", "Indexes with a collection query scope specified allow queries against a collection that is the child of a specific document, specified at query time, and that has the collection id specified by the index.", - "Indexes with a collection group query scope specified allow queries against all collections that has the collection id specified by the index." + "Indexes with a collection group query scope specified allow queries against all collections that has the collection id specified by the index.", + "Include all the collections's ancestor in the index. Only available for Datastore Mode databases." ], "type": "string" }, diff --git a/firestore/v1/firestore-gen.go b/firestore/v1/firestore-gen.go index d2ce6997544..40bc2b5e533 100644 --- a/firestore/v1/firestore-gen.go +++ b/firestore/v1/firestore-gen.go @@ -1823,6 +1823,15 @@ func (s *GoogleFirestoreAdminV1ImportDocumentsRequest) MarshalJSON() ([]byte, er // GoogleFirestoreAdminV1Index: Cloud Firestore indexes enable simple // and complex queries against documents in a database. type GoogleFirestoreAdminV1Index struct { + // ApiScope: The API scope supported by this index. + // + // Possible values: + // "ANY_API" - The index can be used by both Firestore Native and + // Firestore in Datastore Mode query API. This is the default. + // "DATASTORE_MODE_API" - The index can only be used by the Firestore + // in Datastore Mode query API. + ApiScope string `json:"apiScope,omitempty"` + // Fields: The fields supported by this index. For composite indexes, // this requires a minimum of 2 and a maximum of 100 fields. The last // field entry is always for the field path `__name__`. If, on creation, @@ -1860,6 +1869,8 @@ type GoogleFirestoreAdminV1Index struct { // "COLLECTION_GROUP" - Indexes with a collection group query scope // specified allow queries against all collections that has the // collection id specified by the index. + // "COLLECTION_RECURSIVE" - Include all the collections's ancestor in + // the index. Only available for Datastore Mode databases. QueryScope string `json:"queryScope,omitempty"` // State: Output only. The serving state of the index. @@ -1885,7 +1896,7 @@ type GoogleFirestoreAdminV1Index struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Fields") to + // ForceSendFields is a list of field names (e.g. "ApiScope") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -1893,8 +1904,8 @@ type GoogleFirestoreAdminV1Index struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Fields") to include in API - // requests with the JSON null value. By default, fields with empty + // NullFields is a list of field names (e.g. "ApiScope") to include in + // API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. diff --git a/identitytoolkit/v1/identitytoolkit-api.json b/identitytoolkit/v1/identitytoolkit-api.json index 101b4c200cc..483522d3d65 100644 --- a/identitytoolkit/v1/identitytoolkit-api.json +++ b/identitytoolkit/v1/identitytoolkit-api.json @@ -381,7 +381,7 @@ ] }, "verifyIosClient": { - "description": "Verifies an iOS client is a real iOS device. If the request is valid, a reciept will be sent in the response and a secret will be sent via Apple Push Notification Service. The client should send both of them back to certain Identity Platform APIs in a later call (for example, /accounts:sendVerificationCode), in order to verify the client. The bundle ID is required in the request header as `x-ios-bundle-identifier`. An [API key](https://cloud.google.com/docs/authentication/api-keys) is required in the request in order to identify the Google Cloud project.", + "description": "Verifies an iOS client is a real iOS device. If the request is valid, a receipt will be sent in the response and a secret will be sent via Apple Push Notification Service. The client should send both of them back to certain Identity Platform APIs in a later call (for example, /accounts:sendVerificationCode), in order to verify the client. The bundle ID is required in the request header as `x-ios-bundle-identifier`. An [API key](https://cloud.google.com/docs/authentication/api-keys) is required in the request in order to identify the Google Cloud project.", "flatPath": "v1/accounts:verifyIosClient", "httpMethod": "POST", "id": "identitytoolkit.accounts.verifyIosClient", @@ -521,7 +521,7 @@ ] }, "batchDelete": { - "description": "Batch deletes multiple accounts. For accounts that fail to be deleted, error info is contained in the response. The method ignores accounts that do not exist or are duplicated in the request. This method requires a Google OAuth 2.0 credential with proper permissions. (https://cloud.google.com/identity-platform/docs/access-control)", + "description": "Batch deletes multiple accounts. For accounts that fail to be deleted, error info is contained in the response. The method ignores accounts that do not exist or are duplicated in the request. This method requires a Google OAuth 2.0 credential with proper [permissions] (https://cloud.google.com/identity-platform/docs/access-control).", "flatPath": "v1/projects/{projectsId}/accounts:batchDelete", "httpMethod": "POST", "id": "identitytoolkit.projects.accounts.batchDelete", @@ -719,7 +719,7 @@ ], "parameters": { "targetProjectId": { - "description": "The project ID for the project that the account belongs to. Specifying this field requires Google OAuth 2.0 credential with proper permissions (https://cloud.google.com/identity-platform/docs/access-control). Requests from end users should pass an Identity Platform ID token instead.", + "description": "The project ID for the project that the account belongs to. Specifying this field requires Google OAuth 2.0 credential with proper [permissions] (https://cloud.google.com/identity-platform/docs/access-control). Requests from end users should pass an Identity Platform ID token instead.", "location": "path", "pattern": "^[^/]+$", "required": true, @@ -855,7 +855,7 @@ ] }, "batchDelete": { - "description": "Batch deletes multiple accounts. For accounts that fail to be deleted, error info is contained in the response. The method ignores accounts that do not exist or are duplicated in the request. This method requires a Google OAuth 2.0 credential with proper permissions. (https://cloud.google.com/identity-platform/docs/access-control)", + "description": "Batch deletes multiple accounts. For accounts that fail to be deleted, error info is contained in the response. The method ignores accounts that do not exist or are duplicated in the request. This method requires a Google OAuth 2.0 credential with proper [permissions] (https://cloud.google.com/identity-platform/docs/access-control).", "flatPath": "v1/projects/{projectsId}/tenants/{tenantsId}/accounts:batchDelete", "httpMethod": "POST", "id": "identitytoolkit.projects.tenants.accounts.batchDelete", @@ -1097,7 +1097,7 @@ ], "parameters": { "targetProjectId": { - "description": "The project ID for the project that the account belongs to. Specifying this field requires Google OAuth 2.0 credential with proper permissions (https://cloud.google.com/identity-platform/docs/access-control). Requests from end users should pass an Identity Platform ID token instead.", + "description": "The project ID for the project that the account belongs to. Specifying this field requires Google OAuth 2.0 credential with proper [permissions] (https://cloud.google.com/identity-platform/docs/access-control). Requests from end users should pass an Identity Platform ID token instead.", "location": "path", "pattern": "^[^/]+$", "required": true, @@ -1237,7 +1237,7 @@ } } }, - "revision": "20220815", + "revision": "20221112", "rootUrl": "https://identitytoolkit.googleapis.com/", "schemas": { "GoogleCloudIdentitytoolkitV1Argon2Parameters": { @@ -2412,7 +2412,7 @@ "type": "string" }, "customAttributes": { - "description": "JSON formatted custom attributes to be stored in the Identity Platform ID token. Specifying this field requires a Google OAuth 2.0 credential with proper permissions (https://cloud.google.com/identity-platform/docs/access-control).", + "description": "JSON formatted custom attributes to be stored in the Identity Platform ID token. Specifying this field requires a Google OAuth 2.0 credential with proper [permissions] (https://cloud.google.com/identity-platform/docs/access-control).", "type": "string" }, "delegatedProjectNumber": { @@ -2464,7 +2464,7 @@ "type": "string" }, "emailVerified": { - "description": "Whether the user's email has been verified. Specifying this field requires a Google OAuth 2.0 credential with proper permissions (https://cloud.google.com/identity-platform/docs/access-control).", + "description": "Whether the user's email has been verified. Specifying this field requires a Google OAuth 2.0 credential with proper [permissions] (https://cloud.google.com/identity-platform/docs/access-control).", "type": "boolean" }, "idToken": { @@ -2481,15 +2481,15 @@ }, "linkProviderUserInfo": { "$ref": "GoogleCloudIdentitytoolkitV1ProviderUserInfo", - "description": "The provider to be linked to the user's account. Specifying this field requires a Google OAuth 2.0 credential with proper permissions (https://cloud.google.com/identity-platform/docs/access-control)." + "description": "The provider to be linked to the user's account. Specifying this field requires a Google OAuth 2.0 credential with proper [permissions] (https://cloud.google.com/identity-platform/docs/access-control)." }, "localId": { - "description": "The ID of the user. Specifying this field requires a Google OAuth 2.0 credential with proper permissions (https://cloud.google.com/identity-platform/docs/access-control). For requests from end-users, an ID token should be passed instead.", + "description": "The ID of the user. Specifying this field requires a Google OAuth 2.0 credential with proper [permissions] (https://cloud.google.com/identity-platform/docs/access-control). For requests from end-users, an ID token should be passed instead.", "type": "string" }, "mfa": { "$ref": "GoogleCloudIdentitytoolkitV1MfaInfo", - "description": "The multi-factor authentication related information to be set on the user's account. This will overwrite any previous multi-factor related information on the account. Specifying this field requires a Google OAuth 2.0 credential with proper permissions (https://cloud.google.com/identity-platform/docs/access-control)." + "description": "The multi-factor authentication related information to be set on the user's account. This will overwrite any previous multi-factor related information on the account. Specifying this field requires a Google OAuth 2.0 credential with proper [permissions] (https://cloud.google.com/identity-platform/docs/access-control)." }, "oobCode": { "description": "The out-of-band code to be applied on the user's account. The following out-of-band code types are supported: * VERIFY_EMAIL * RECOVER_EMAIL * REVERT_SECOND_FACTOR_ADDITION * VERIFY_AND_CHANGE_EMAIL", @@ -2519,7 +2519,7 @@ "type": "boolean" }, "targetProjectId": { - "description": "The project ID for the project that the account belongs to. Specifying this field requires Google OAuth 2.0 credential with proper permissions (https://cloud.google.com/identity-platform/docs/access-control). Requests from end users should pass an Identity Platform ID token instead.", + "description": "The project ID for the project that the account belongs to. Specifying this field requires Google OAuth 2.0 credential with proper [permissions] (https://cloud.google.com/identity-platform/docs/access-control). Requests from end users should pass an Identity Platform ID token instead.", "type": "string" }, "tenantId": { diff --git a/identitytoolkit/v1/identitytoolkit-gen.go b/identitytoolkit/v1/identitytoolkit-gen.go index 802f8d12343..4e05f85b366 100644 --- a/identitytoolkit/v1/identitytoolkit-gen.go +++ b/identitytoolkit/v1/identitytoolkit-gen.go @@ -2068,7 +2068,7 @@ type GoogleCloudIdentitytoolkitV1SetAccountInfoRequest struct { // CustomAttributes: JSON formatted custom attributes to be stored in // the Identity Platform ID token. Specifying this field requires a - // Google OAuth 2.0 credential with proper permissions + // Google OAuth 2.0 credential with proper [permissions] // (https://cloud.google.com/identity-platform/docs/access-control). CustomAttributes string `json:"customAttributes,omitempty"` @@ -2109,7 +2109,7 @@ type GoogleCloudIdentitytoolkitV1SetAccountInfoRequest struct { // EmailVerified: Whether the user's email has been verified. Specifying // this field requires a Google OAuth 2.0 credential with proper - // permissions + // [permissions] // (https://cloud.google.com/identity-platform/docs/access-control). EmailVerified bool `json:"emailVerified,omitempty"` @@ -2125,12 +2125,12 @@ type GoogleCloudIdentitytoolkitV1SetAccountInfoRequest struct { // LinkProviderUserInfo: The provider to be linked to the user's // account. Specifying this field requires a Google OAuth 2.0 credential - // with proper permissions + // with proper [permissions] // (https://cloud.google.com/identity-platform/docs/access-control). LinkProviderUserInfo *GoogleCloudIdentitytoolkitV1ProviderUserInfo `json:"linkProviderUserInfo,omitempty"` // LocalId: The ID of the user. Specifying this field requires a Google - // OAuth 2.0 credential with proper permissions + // OAuth 2.0 credential with proper [permissions] // (https://cloud.google.com/identity-platform/docs/access-control). For // requests from end-users, an ID token should be passed instead. LocalId string `json:"localId,omitempty"` @@ -2138,7 +2138,7 @@ type GoogleCloudIdentitytoolkitV1SetAccountInfoRequest struct { // Mfa: The multi-factor authentication related information to be set on // the user's account. This will overwrite any previous multi-factor // related information on the account. Specifying this field requires a - // Google OAuth 2.0 credential with proper permissions + // Google OAuth 2.0 credential with proper [permissions] // (https://cloud.google.com/identity-platform/docs/access-control). Mfa *GoogleCloudIdentitytoolkitV1MfaInfo `json:"mfa,omitempty"` @@ -2171,7 +2171,7 @@ type GoogleCloudIdentitytoolkitV1SetAccountInfoRequest struct { // TargetProjectId: The project ID for the project that the account // belongs to. Specifying this field requires Google OAuth 2.0 - // credential with proper permissions + // credential with proper [permissions] // (https://cloud.google.com/identity-platform/docs/access-control). // Requests from end users should pass an Identity Platform ID token // instead. @@ -5727,7 +5727,7 @@ type AccountsVerifyIosClientCall struct { } // VerifyIosClient: Verifies an iOS client is a real iOS device. If the -// request is valid, a reciept will be sent in the response and a secret +// request is valid, a receipt will be sent in the response and a secret // will be sent via Apple Push Notification Service. The client should // send both of them back to certain Identity Platform APIs in a later // call (for example, /accounts:sendVerificationCode), in order to @@ -5831,7 +5831,7 @@ func (c *AccountsVerifyIosClientCall) Do(opts ...googleapi.CallOption) (*GoogleC } return ret, nil // { - // "description": "Verifies an iOS client is a real iOS device. If the request is valid, a reciept will be sent in the response and a secret will be sent via Apple Push Notification Service. The client should send both of them back to certain Identity Platform APIs in a later call (for example, /accounts:sendVerificationCode), in order to verify the client. The bundle ID is required in the request header as `x-ios-bundle-identifier`. An [API key](https://cloud.google.com/docs/authentication/api-keys) is required in the request in order to identify the Google Cloud project.", + // "description": "Verifies an iOS client is a real iOS device. If the request is valid, a receipt will be sent in the response and a secret will be sent via Apple Push Notification Service. The client should send both of them back to certain Identity Platform APIs in a later call (for example, /accounts:sendVerificationCode), in order to verify the client. The bundle ID is required in the request header as `x-ios-bundle-identifier`. An [API key](https://cloud.google.com/docs/authentication/api-keys) is required in the request in order to identify the Google Cloud project.", // "flatPath": "v1/accounts:verifyIosClient", // "httpMethod": "POST", // "id": "identitytoolkit.accounts.verifyIosClient", @@ -6468,8 +6468,8 @@ type ProjectsAccountsBatchDeleteCall struct { // to be deleted, error info is contained in the response. The method // ignores accounts that do not exist or are duplicated in the request. // This method requires a Google OAuth 2.0 credential with proper -// permissions. -// (https://cloud.google.com/identity-platform/docs/access-control) +// [permissions] +// (https://cloud.google.com/identity-platform/docs/access-control). // // - targetProjectId: If `tenant_id` is specified, the ID of the Google // Cloud project that the Identity Platform tenant belongs to. @@ -6576,7 +6576,7 @@ func (c *ProjectsAccountsBatchDeleteCall) Do(opts ...googleapi.CallOption) (*Goo } return ret, nil // { - // "description": "Batch deletes multiple accounts. For accounts that fail to be deleted, error info is contained in the response. The method ignores accounts that do not exist or are duplicated in the request. This method requires a Google OAuth 2.0 credential with proper permissions. (https://cloud.google.com/identity-platform/docs/access-control)", + // "description": "Batch deletes multiple accounts. For accounts that fail to be deleted, error info is contained in the response. The method ignores accounts that do not exist or are duplicated in the request. This method requires a Google OAuth 2.0 credential with proper [permissions] (https://cloud.google.com/identity-platform/docs/access-control).", // "flatPath": "v1/projects/{projectsId}/accounts:batchDelete", // "httpMethod": "POST", // "id": "identitytoolkit.projects.accounts.batchDelete", @@ -7447,7 +7447,7 @@ type ProjectsAccountsUpdateCall struct { // // - targetProjectId: The project ID for the project that the account // belongs to. Specifying this field requires Google OAuth 2.0 -// credential with proper permissions +// credential with proper [permissions] // (https://cloud.google.com/identity-platform/docs/access-control). // Requests from end users should pass an Identity Platform ID token // instead. @@ -7560,7 +7560,7 @@ func (c *ProjectsAccountsUpdateCall) Do(opts ...googleapi.CallOption) (*GoogleCl // ], // "parameters": { // "targetProjectId": { - // "description": "The project ID for the project that the account belongs to. Specifying this field requires Google OAuth 2.0 credential with proper permissions (https://cloud.google.com/identity-platform/docs/access-control). Requests from end users should pass an Identity Platform ID token instead.", + // "description": "The project ID for the project that the account belongs to. Specifying this field requires Google OAuth 2.0 credential with proper [permissions] (https://cloud.google.com/identity-platform/docs/access-control). Requests from end users should pass an Identity Platform ID token instead.", // "location": "path", // "pattern": "^[^/]+$", // "required": true, @@ -8092,8 +8092,8 @@ type ProjectsTenantsAccountsBatchDeleteCall struct { // to be deleted, error info is contained in the response. The method // ignores accounts that do not exist or are duplicated in the request. // This method requires a Google OAuth 2.0 credential with proper -// permissions. -// (https://cloud.google.com/identity-platform/docs/access-control) +// [permissions] +// (https://cloud.google.com/identity-platform/docs/access-control). // // - targetProjectId: If `tenant_id` is specified, the ID of the Google // Cloud project that the Identity Platform tenant belongs to. @@ -8205,7 +8205,7 @@ func (c *ProjectsTenantsAccountsBatchDeleteCall) Do(opts ...googleapi.CallOption } return ret, nil // { - // "description": "Batch deletes multiple accounts. For accounts that fail to be deleted, error info is contained in the response. The method ignores accounts that do not exist or are duplicated in the request. This method requires a Google OAuth 2.0 credential with proper permissions. (https://cloud.google.com/identity-platform/docs/access-control)", + // "description": "Batch deletes multiple accounts. For accounts that fail to be deleted, error info is contained in the response. The method ignores accounts that do not exist or are duplicated in the request. This method requires a Google OAuth 2.0 credential with proper [permissions] (https://cloud.google.com/identity-platform/docs/access-control).", // "flatPath": "v1/projects/{projectsId}/tenants/{tenantsId}/accounts:batchDelete", // "httpMethod": "POST", // "id": "identitytoolkit.projects.tenants.accounts.batchDelete", @@ -9139,7 +9139,7 @@ type ProjectsTenantsAccountsUpdateCall struct { // // - targetProjectId: The project ID for the project that the account // belongs to. Specifying this field requires Google OAuth 2.0 -// credential with proper permissions +// credential with proper [permissions] // (https://cloud.google.com/identity-platform/docs/access-control). // Requests from end users should pass an Identity Platform ID token // instead. @@ -9258,7 +9258,7 @@ func (c *ProjectsTenantsAccountsUpdateCall) Do(opts ...googleapi.CallOption) (*G // ], // "parameters": { // "targetProjectId": { - // "description": "The project ID for the project that the account belongs to. Specifying this field requires Google OAuth 2.0 credential with proper permissions (https://cloud.google.com/identity-platform/docs/access-control). Requests from end users should pass an Identity Platform ID token instead.", + // "description": "The project ID for the project that the account belongs to. Specifying this field requires Google OAuth 2.0 credential with proper [permissions] (https://cloud.google.com/identity-platform/docs/access-control). Requests from end users should pass an Identity Platform ID token instead.", // "location": "path", // "pattern": "^[^/]+$", // "required": true, diff --git a/identitytoolkit/v2/identitytoolkit-api.json b/identitytoolkit/v2/identitytoolkit-api.json index 6e36cf9b836..9c812181ed2 100644 --- a/identitytoolkit/v2/identitytoolkit-api.json +++ b/identitytoolkit/v2/identitytoolkit-api.json @@ -1559,7 +1559,7 @@ } } }, - "revision": "20220916", + "revision": "20221112", "rootUrl": "https://identitytoolkit.googleapis.com/", "schemas": { "GoogleCloudIdentitytoolkitAdminV2AllowByDefault": { @@ -1725,6 +1725,10 @@ "$ref": "GoogleCloudIdentitytoolkitAdminV2ClientConfig", "description": "Options related to how clients making requests on behalf of a project should be configured." }, + "emailPrivacyConfig": { + "$ref": "GoogleCloudIdentitytoolkitAdminV2EmailPrivacyConfig", + "description": "Configuration for settings related to email privacy and public visibility." + }, "mfa": { "$ref": "GoogleCloudIdentitytoolkitAdminV2MultiFactorAuthConfig", "description": "Configuration for this project's multi-factor authentication, including whether it is active and what factors can be used for the second factor" @@ -1879,6 +1883,17 @@ }, "type": "object" }, + "GoogleCloudIdentitytoolkitAdminV2EmailPrivacyConfig": { + "description": "Configuration for settings related to email privacy and public visibility. Settings in this config protect against email enumeration, but may make some trade-offs in user-friendliness.", + "id": "GoogleCloudIdentitytoolkitAdminV2EmailPrivacyConfig", + "properties": { + "enableImprovedEmailPrivacy": { + "description": "Migrates the project to a state of improved email privacy. For example certain error codes are more generic to avoid giving away information on whether the account exists. In addition, this disables certain features that as a side-effect allow user enumeration. Enabling this toggle disables the fetchSignInMethodsForEmail functionality and changing the user's email to an unverified email. It is recommended to remove dependence on this functionality and enable this toggle to improve user privacy.", + "type": "boolean" + } + }, + "type": "object" + }, "GoogleCloudIdentitytoolkitAdminV2EmailTemplate": { "description": "Email template. The subject and body fields can contain the following placeholders which will be replaced with the appropriate values: %LINK% - The link to use to redeem the send OOB code. %EMAIL% - The email where the email is being sent. %NEW_EMAIL% - The new email being set for the account (when applicable). %APP_NAME% - The GCP project's display name. %DISPLAY_NAME% - The user's display name.", "id": "GoogleCloudIdentitytoolkitAdminV2EmailTemplate", @@ -2630,6 +2645,10 @@ "description": "Display name of the tenant.", "type": "string" }, + "emailPrivacyConfig": { + "$ref": "GoogleCloudIdentitytoolkitAdminV2EmailPrivacyConfig", + "description": "Configuration for settings related to email privacy and public visibility." + }, "enableAnonymousUser": { "description": "Whether to enable anonymous user authentication.", "type": "boolean" diff --git a/identitytoolkit/v2/identitytoolkit-gen.go b/identitytoolkit/v2/identitytoolkit-gen.go index 74b131e8ac1..4cd0dba8a86 100644 --- a/identitytoolkit/v2/identitytoolkit-gen.go +++ b/identitytoolkit/v2/identitytoolkit-gen.go @@ -618,6 +618,10 @@ type GoogleCloudIdentitytoolkitAdminV2Config struct { // project should be configured. Client *GoogleCloudIdentitytoolkitAdminV2ClientConfig `json:"client,omitempty"` + // EmailPrivacyConfig: Configuration for settings related to email + // privacy and public visibility. + EmailPrivacyConfig *GoogleCloudIdentitytoolkitAdminV2EmailPrivacyConfig `json:"emailPrivacyConfig,omitempty"` + // Mfa: Configuration for this project's multi-factor authentication, // including whether it is active and what factors can be used for the // second factor @@ -852,6 +856,46 @@ func (s *GoogleCloudIdentitytoolkitAdminV2Email) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudIdentitytoolkitAdminV2EmailPrivacyConfig: Configuration +// for settings related to email privacy and public visibility. Settings +// in this config protect against email enumeration, but may make some +// trade-offs in user-friendliness. +type GoogleCloudIdentitytoolkitAdminV2EmailPrivacyConfig struct { + // EnableImprovedEmailPrivacy: Migrates the project to a state of + // improved email privacy. For example certain error codes are more + // generic to avoid giving away information on whether the account + // exists. In addition, this disables certain features that as a + // side-effect allow user enumeration. Enabling this toggle disables the + // fetchSignInMethodsForEmail functionality and changing the user's + // email to an unverified email. It is recommended to remove dependence + // on this functionality and enable this toggle to improve user privacy. + EnableImprovedEmailPrivacy bool `json:"enableImprovedEmailPrivacy,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "EnableImprovedEmailPrivacy") to unconditionally include in API + // requests. By default, fields with empty or default values are omitted + // from API requests. However, any non-pointer, non-interface field + // appearing in ForceSendFields will be sent to the server regardless of + // whether the field is empty or not. This may be used to include empty + // fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "EnableImprovedEmailPrivacy") to include in API requests with the + // JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudIdentitytoolkitAdminV2EmailPrivacyConfig) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudIdentitytoolkitAdminV2EmailPrivacyConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudIdentitytoolkitAdminV2EmailTemplate: Email template. The // subject and body fields can contain the following placeholders which // will be replaced with the appropriate values: %LINK% - The link to @@ -2134,6 +2178,10 @@ type GoogleCloudIdentitytoolkitAdminV2Tenant struct { // DisplayName: Display name of the tenant. DisplayName string `json:"displayName,omitempty"` + // EmailPrivacyConfig: Configuration for settings related to email + // privacy and public visibility. + EmailPrivacyConfig *GoogleCloudIdentitytoolkitAdminV2EmailPrivacyConfig `json:"emailPrivacyConfig,omitempty"` + // EnableAnonymousUser: Whether to enable anonymous user authentication. EnableAnonymousUser bool `json:"enableAnonymousUser,omitempty"` diff --git a/monitoring/v1/monitoring-api.json b/monitoring/v1/monitoring-api.json index c2b4fd7b62d..b324ce17c2d 100644 --- a/monitoring/v1/monitoring-api.json +++ b/monitoring/v1/monitoring-api.json @@ -769,7 +769,7 @@ } } }, - "revision": "20221024", + "revision": "20221107", "rootUrl": "https://monitoring.googleapis.com/", "schemas": { "Aggregation": { @@ -976,6 +976,21 @@ }, "type": "object" }, + "ColumnSettings": { + "description": "The persistent settings for a table's columns.", + "id": "ColumnSettings", + "properties": { + "column": { + "description": "Required. The id of the column.", + "type": "string" + }, + "visible": { + "description": "Required. Whether the column should be visible on page load.", + "type": "boolean" + } + }, + "type": "object" + }, "Dashboard": { "description": "A Google Stackdriver dashboard. Dashboards define the content and layout of pages in the Stackdriver web application.", "id": "Dashboard", @@ -2047,6 +2062,13 @@ "description": "A table that displays time series data.", "id": "TimeSeriesTable", "properties": { + "columnSettings": { + "description": "Optional. The list of the persistent column settings for the table.", + "items": { + "$ref": "ColumnSettings" + }, + "type": "array" + }, "dataSets": { "description": "Required. The data displayed in this table.", "items": { diff --git a/monitoring/v1/monitoring-gen.go b/monitoring/v1/monitoring-gen.go index 50908c64ea2..b0043b472dd 100644 --- a/monitoring/v1/monitoring-gen.go +++ b/monitoring/v1/monitoring-gen.go @@ -790,6 +790,37 @@ func (s *ColumnLayout) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ColumnSettings: The persistent settings for a table's columns. +type ColumnSettings struct { + // Column: Required. The id of the column. + Column string `json:"column,omitempty"` + + // Visible: Required. Whether the column should be visible on page load. + Visible bool `json:"visible,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Column") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Column") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ColumnSettings) MarshalJSON() ([]byte, error) { + type NoMethod ColumnSettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Dashboard: A Google Stackdriver dashboard. Dashboards define the // content and layout of pages in the Stackdriver web application. type Dashboard struct { @@ -2608,6 +2639,10 @@ func (s *TimeSeriesQuery) MarshalJSON() ([]byte, error) { // TimeSeriesTable: A table that displays time series data. type TimeSeriesTable struct { + // ColumnSettings: Optional. The list of the persistent column settings + // for the table. + ColumnSettings []*ColumnSettings `json:"columnSettings,omitempty"` + // DataSets: Required. The data displayed in this table. DataSets []*TableDataSet `json:"dataSets,omitempty"` @@ -2619,7 +2654,7 @@ type TimeSeriesTable struct { // "BAR" - Horizontal bar rendering MetricVisualization string `json:"metricVisualization,omitempty"` - // ForceSendFields is a list of field names (e.g. "DataSets") to + // ForceSendFields is a list of field names (e.g. "ColumnSettings") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -2627,12 +2662,13 @@ type TimeSeriesTable struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "DataSets") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "ColumnSettings") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } diff --git a/monitoring/v3/monitoring-api.json b/monitoring/v3/monitoring-api.json index 6a33e863e4c..b5ea7f4569c 100644 --- a/monitoring/v3/monitoring-api.json +++ b/monitoring/v3/monitoring-api.json @@ -2576,7 +2576,7 @@ } } }, - "revision": "20220930", + "revision": "20221107", "rootUrl": "https://monitoring.googleapis.com/", "schemas": { "Aggregation": { @@ -3258,16 +3258,20 @@ "type": "object" }, "Documentation": { - "description": "A content string and a MIME type that describes the content string's format.", + "description": "User-defined documentation of the generated notification.", "id": "Documentation", "properties": { "content": { - "description": "The text of the documentation, interpreted according to mime_type. The content may not exceed 8,192 Unicode characters and may not exceed more than 10,240 bytes when encoded in UTF-8 format, whichever is smaller. This text can be templatized by using variables (https://cloud.google.com/monitoring/alerts/doc-variables).", + "description": "The body of the notification, interpreted according to mime_type. The content may not exceed 8,192 Unicode characters and may not exceed more than 10,240 bytes when encoded in UTF-8 format, whichever is smaller. This text can be templatized by using variables (https://cloud.google.com/monitoring/alerts/doc-variables).", "type": "string" }, "mimeType": { "description": "The format of the content field. Presently, only the value \"text/markdown\" is supported. See Markdown (https://en.wikipedia.org/wiki/Markdown) for more information.", "type": "string" + }, + "subject": { + "description": "A public comment for an internal field, because the linter insists that all fields must have a comment. Sigh.", + "type": "string" } }, "type": "object" diff --git a/monitoring/v3/monitoring-gen.go b/monitoring/v3/monitoring-gen.go index b18ca4d509c..89bc07ab27b 100644 --- a/monitoring/v3/monitoring-gen.go +++ b/monitoring/v3/monitoring-gen.go @@ -1740,10 +1740,10 @@ func (s *DistributionCut) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Documentation: A content string and a MIME type that describes the -// content string's format. +// Documentation: User-defined documentation of the generated +// notification. type Documentation struct { - // Content: The text of the documentation, interpreted according to + // Content: The body of the notification, interpreted according to // mime_type. The content may not exceed 8,192 Unicode characters and // may not exceed more than 10,240 bytes when encoded in UTF-8 format, // whichever is smaller. This text can be templatized by using variables @@ -1755,6 +1755,10 @@ type Documentation struct { // (https://en.wikipedia.org/wiki/Markdown) for more information. MimeType string `json:"mimeType,omitempty"` + // Subject: A public comment for an internal field, because the linter + // insists that all fields must have a comment. Sigh. + Subject string `json:"subject,omitempty"` + // ForceSendFields is a list of field names (e.g. "Content") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any diff --git a/mybusinesslodging/v1/mybusinesslodging-api.json b/mybusinesslodging/v1/mybusinesslodging-api.json index db76dfe40eb..22db8147dac 100644 --- a/mybusinesslodging/v1/mybusinesslodging-api.json +++ b/mybusinesslodging/v1/mybusinesslodging-api.json @@ -194,7 +194,7 @@ } } }, - "revision": "20220914", + "revision": "20221115", "rootUrl": "https://mybusinesslodging.googleapis.com/", "schemas": { "Accessibility": { @@ -1216,6 +1216,26 @@ "Amenity or service availability depends on the day of the week." ], "type": "string" + }, + "kidsFriendly": { + "description": "Kids friendly. The hotel has one or more special features for families with children, such as reduced rates, child-sized beds, kids' club, babysitting service, or suitable place to play on premises.", + "type": "boolean" + }, + "kidsFriendlyException": { + "description": "Kids friendly exception.", + "enum": [ + "EXCEPTION_UNSPECIFIED", + "UNDER_CONSTRUCTION", + "DEPENDENT_ON_SEASON", + "DEPENDENT_ON_DAY_OF_WEEK" + ], + "enumDescriptions": [ + "Default unspecified exception. Use this only if a more specific exception does not match.", + "Amenity or service is unavailable due to ongoing work orders.", + "Amenity or service availability is seasonal.", + "Amenity or service availability depends on the day of the week." + ], + "type": "string" } }, "type": "object" diff --git a/mybusinesslodging/v1/mybusinesslodging-gen.go b/mybusinesslodging/v1/mybusinesslodging-gen.go index dd39dca0147..f16c2f6a153 100644 --- a/mybusinesslodging/v1/mybusinesslodging-gen.go +++ b/mybusinesslodging/v1/mybusinesslodging-gen.go @@ -1250,6 +1250,25 @@ type Families struct { // depends on the day of the week. KidsClubException string `json:"kidsClubException,omitempty"` + // KidsFriendly: Kids friendly. The hotel has one or more special + // features for families with children, such as reduced rates, + // child-sized beds, kids' club, babysitting service, or suitable place + // to play on premises. + KidsFriendly bool `json:"kidsFriendly,omitempty"` + + // KidsFriendlyException: Kids friendly exception. + // + // Possible values: + // "EXCEPTION_UNSPECIFIED" - Default unspecified exception. Use this + // only if a more specific exception does not match. + // "UNDER_CONSTRUCTION" - Amenity or service is unavailable due to + // ongoing work orders. + // "DEPENDENT_ON_SEASON" - Amenity or service availability is + // seasonal. + // "DEPENDENT_ON_DAY_OF_WEEK" - Amenity or service availability + // depends on the day of the week. + KidsFriendlyException string `json:"kidsFriendlyException,omitempty"` + // ForceSendFields is a list of field names (e.g. "Babysitting") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any diff --git a/networkconnectivity/v1alpha1/networkconnectivity-api.json b/networkconnectivity/v1alpha1/networkconnectivity-api.json index c5d1b5b17d2..ec061bc7883 100644 --- a/networkconnectivity/v1alpha1/networkconnectivity-api.json +++ b/networkconnectivity/v1alpha1/networkconnectivity-api.json @@ -452,6 +452,99 @@ }, "internalRanges": { "methods": { + "create": { + "description": "Creates a new InternalRange in a given project and location.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/internalRanges", + "httpMethod": "POST", + "id": "networkconnectivity.projects.locations.internalRanges.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "internalRangeId": { + "description": "Optional. Resource ID (i.e. 'foo' in '[...]/projects/p/locations/l/internalRanges/foo') See https://google.aip.dev/122#resource-id-segments Unique per location.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource's name of the InternalRange.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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. For example, consider a situation where you make an initial request and t he 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).", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha1/{+parent}/internalRanges", + "request": { + "$ref": "InternalRange" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single InternalRange.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/internalRanges/{internalRangesId}", + "httpMethod": "DELETE", + "id": "networkconnectivity.projects.locations.internalRanges.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the InternalRange to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/internalRanges/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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 after the first request. For example, consider a situation where you make an initial request and t he 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).", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single InternalRange.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/internalRanges/{internalRangesId}", + "httpMethod": "GET", + "id": "networkconnectivity.projects.locations.internalRanges.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the InternalRange to get.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/internalRanges/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+name}", + "response": { + "$ref": "InternalRange" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "getIamPolicy": { "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/internalRanges/{internalRangesId}:getIamPolicy", @@ -483,6 +576,91 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "list": { + "description": "Lists InternalRanges in a given project and location.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/internalRanges", + "httpMethod": "GET", + "id": "networkconnectivity.projects.locations.internalRanges.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters the results listed in the response.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Sort the results by a certain order.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results per page that should be returned.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource's name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+parent}/internalRanges", + "response": { + "$ref": "ListInternalRangesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single InternalRange.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/internalRanges/{internalRangesId}", + "httpMethod": "PATCH", + "id": "networkconnectivity.projects.locations.internalRanges.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Immutable. The name of a InternalRange. Format: projects/{project}/locations/{location}/internalRanges/{internal_range} See: https://google.aip.dev/122#fields-representing-resource-names", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/internalRanges/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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. For example, consider a situation where you make an initial request and t he 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).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the InternalRange 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.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha1/{+name}", + "request": { + "$ref": "InternalRange" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "setIamPolicy": { "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.", "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/internalRanges/{internalRangesId}:setIamPolicy", @@ -938,7 +1116,7 @@ } } }, - "revision": "20221031", + "revision": "20221107", "rootUrl": "https://networkconnectivity.googleapis.com/", "schemas": { "AuditConfig": { @@ -1190,6 +1368,111 @@ }, "type": "object" }, + "InternalRange": { + "description": "The InternalRange resource for IPAM operations within a VPC network. Used to represent a private address range along with behavioral characterstics of that range (it's usage and peering behavior). Networking resources can link to this range if they are created as belonging to it. Next id: 14", + "id": "InternalRange", + "properties": { + "createTime": { + "description": "Time when the InternalRange was created.", + "format": "google-datetime", + "type": "string" + }, + "description": { + "description": "A description of this resource.", + "type": "string" + }, + "ipCidrRange": { + "description": "IP range that this InternalRange defines.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "User-defined labels.", + "type": "object" + }, + "name": { + "description": "Immutable. The name of a InternalRange. Format: projects/{project}/locations/{location}/internalRanges/{internal_range} See: https://google.aip.dev/122#fields-representing-resource-names", + "type": "string" + }, + "network": { + "description": "The URL or resource ID of the network in which to reserve the Internal Range. The network cannot be deleted if there are any reserved Internal Ranges referring to it. Legacy network is not supported. This can only be specified for a global internal address. Example: - URL: /compute/v1/projects/{project}/global/networks/{resourceId} - ID: network123", + "type": "string" + }, + "overlaps": { + "description": "Optional. Types of resources that are allowed to overlap with the current InternalRange.", + "items": { + "enum": [ + "OVERLAP_UNSPECIFIED", + "OVERLAP_ROUTE_RANGE" + ], + "enumDescriptions": [ + "No overlap overrides.", + "Allow creation of static routes more specific that the current InternalRange." + ], + "type": "string" + }, + "type": "array" + }, + "peering": { + "description": "The type of peering set for this InternalRange.", + "enum": [ + "PEERING_UNSPECIFIED", + "FOR_SELF", + "FOR_PEER", + "NOT_SHARED" + ], + "enumDescriptions": [ + "If Peering is left unspecified in CreateInternalRange or UpdateInternalRange, it will be defaulted to FOR_SELF.", + "This is the default behavior and represents the case that this InternalRange is intended to be used in the VPC on which it is created and is accessible from it’s peers. This implies that peers or peer-of-peer’s cannot use this range.", + "This behavior can be set when the Internal Range is being reserved for usage by the peers. This means that no resource within the VPC in which it is being created can use this to associate with a GCP resource, but one of the peer’s can. This represents \"donating\" a range for peers to use.", + "This behavior can be set when the Internal Range is being reserved for usage by the VPC on which it is created but not shared with the peers. In a sense it is local to the VPC. This can be used to create Internal Ranges for various purposes like HTTP_INTERNAL_LOAD_BALANCER or for interconnect routes that are not shared with peers. This also implies that peer’s cannot use this range in a way that is visible to this VPC, but can re-use this range as long as it is NOT_SHARED from the peer VPC too." + ], + "type": "string" + }, + "prefixLength": { + "description": "An alternate to ip_cidr_range. Can be set when trying to create a reservation that automatically finds a free range of the given size. If both ip_cidr_range and prefix_length are set, it's an error if the range sizes don't match. Can also be used during updates to change the range size.", + "format": "int32", + "type": "integer" + }, + "targetCidrRange": { + "description": "Optional. Can be set to narrow down or pick a different address space while searching for a free range. If not set, defaults to the \"10.0.0.0/8\" address space. This can be used to search in other rfc-1918 address spaces like \"172.16.0.0/12\" and \"192.168.0.0/16\" or non-rfc-1918 address spaces used in the VPC.", + "items": { + "type": "string" + }, + "type": "array" + }, + "updateTime": { + "description": "Time when the InternalRange was updated.", + "format": "google-datetime", + "type": "string" + }, + "usage": { + "description": "The type of usage set for this InternalRange.", + "enum": [ + "USAGE_UNSPECIFIED", + "FOR_VPC", + "EXTERNAL_TO_VPC" + ], + "enumDescriptions": [ + "Unspecified usage is allowed in calls which identify the resource by other fields and do not need Usage set to complete. These are i.e.: GetInternalRange and DeleteInternalRange. Usage needs to be specified explicitly in CreateInternalRange or UpdateInternalRange calls.", + "A GCP resource can use the reserved CIDR block by associating it with the Internal Range resource if usage is set to FOR_VPC.", + "Ranges created with EXTERNAL_TO_VPC cannot be associated with GCP resources and are meant to block out address ranges for various use cases, like for example, usage on-prem, with dynamic route announcements via interconnect." + ], + "type": "string" + }, + "users": { + "description": "Output only. The list of resources that refer to this internal range. Resources that use the InternalRange for their range allocation are referred to as users of the range. Other resources mark themselves as users while doing so by creating a reference to this InternalRange. Having a user, based on this reference, prevents deletion of the InternalRange referred to. Can be empty.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, "ListHubsResponse": { "description": "Response for HubService.ListHubs method.", "id": "ListHubsResponse", @@ -1215,6 +1498,31 @@ }, "type": "object" }, + "ListInternalRangesResponse": { + "description": "Response for InternalRange.ListInternalRanges", + "id": "ListInternalRangesResponse", + "properties": { + "internalRanges": { + "description": "InternalRanges to be returned.", + "items": { + "$ref": "InternalRange" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The next pagination token in the List response. It should be used as page_token for the following request. An empty value means no more result.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ListLocationsResponse": { "description": "The response message for Locations.ListLocations.", "id": "ListLocationsResponse", diff --git a/networkconnectivity/v1alpha1/networkconnectivity-gen.go b/networkconnectivity/v1alpha1/networkconnectivity-gen.go index f4ba5a40846..8f9c2a34756 100644 --- a/networkconnectivity/v1alpha1/networkconnectivity-gen.go +++ b/networkconnectivity/v1alpha1/networkconnectivity-gen.go @@ -679,6 +679,141 @@ func (s *Hub) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// InternalRange: The InternalRange resource for IPAM operations within +// a VPC network. Used to represent a private address range along with +// behavioral characterstics of that range (it's usage and peering +// behavior). Networking resources can link to this range if they are +// created as belonging to it. Next id: 14 +type InternalRange struct { + // CreateTime: Time when the InternalRange was created. + CreateTime string `json:"createTime,omitempty"` + + // Description: A description of this resource. + Description string `json:"description,omitempty"` + + // IpCidrRange: IP range that this InternalRange defines. + IpCidrRange string `json:"ipCidrRange,omitempty"` + + // Labels: User-defined labels. + Labels map[string]string `json:"labels,omitempty"` + + // Name: Immutable. The name of a InternalRange. Format: + // projects/{project}/locations/{location}/internalRanges/{internal_range + // } See: https://google.aip.dev/122#fields-representing-resource-names + Name string `json:"name,omitempty"` + + // Network: The URL or resource ID of the network in which to reserve + // the Internal Range. The network cannot be deleted if there are any + // reserved Internal Ranges referring to it. Legacy network is not + // supported. This can only be specified for a global internal address. + // Example: - URL: + // /compute/v1/projects/{project}/global/networks/{resourceId} - ID: + // network123 + Network string `json:"network,omitempty"` + + // Overlaps: Optional. Types of resources that are allowed to overlap + // with the current InternalRange. + // + // Possible values: + // "OVERLAP_UNSPECIFIED" - No overlap overrides. + // "OVERLAP_ROUTE_RANGE" - Allow creation of static routes more + // specific that the current InternalRange. + Overlaps []string `json:"overlaps,omitempty"` + + // Peering: The type of peering set for this InternalRange. + // + // Possible values: + // "PEERING_UNSPECIFIED" - If Peering is left unspecified in + // CreateInternalRange or UpdateInternalRange, it will be defaulted to + // FOR_SELF. + // "FOR_SELF" - This is the default behavior and represents the case + // that this InternalRange is intended to be used in the VPC on which it + // is created and is accessible from it’s peers. This implies that + // peers or peer-of-peer’s cannot use this range. + // "FOR_PEER" - This behavior can be set when the Internal Range is + // being reserved for usage by the peers. This means that no resource + // within the VPC in which it is being created can use this to associate + // with a GCP resource, but one of the peer’s can. This represents + // "donating" a range for peers to use. + // "NOT_SHARED" - This behavior can be set when the Internal Range is + // being reserved for usage by the VPC on which it is created but not + // shared with the peers. In a sense it is local to the VPC. This can be + // used to create Internal Ranges for various purposes like + // HTTP_INTERNAL_LOAD_BALANCER or for interconnect routes that are not + // shared with peers. This also implies that peer’s cannot use this + // range in a way that is visible to this VPC, but can re-use this range + // as long as it is NOT_SHARED from the peer VPC too. + Peering string `json:"peering,omitempty"` + + // PrefixLength: An alternate to ip_cidr_range. Can be set when trying + // to create a reservation that automatically finds a free range of the + // given size. If both ip_cidr_range and prefix_length are set, it's an + // error if the range sizes don't match. Can also be used during updates + // to change the range size. + PrefixLength int64 `json:"prefixLength,omitempty"` + + // TargetCidrRange: Optional. Can be set to narrow down or pick a + // different address space while searching for a free range. If not set, + // defaults to the "10.0.0.0/8" address space. This can be used to + // search in other rfc-1918 address spaces like "172.16.0.0/12" and + // "192.168.0.0/16" or non-rfc-1918 address spaces used in the VPC. + TargetCidrRange []string `json:"targetCidrRange,omitempty"` + + // UpdateTime: Time when the InternalRange was updated. + UpdateTime string `json:"updateTime,omitempty"` + + // Usage: The type of usage set for this InternalRange. + // + // Possible values: + // "USAGE_UNSPECIFIED" - Unspecified usage is allowed in calls which + // identify the resource by other fields and do not need Usage set to + // complete. These are i.e.: GetInternalRange and DeleteInternalRange. + // Usage needs to be specified explicitly in CreateInternalRange or + // UpdateInternalRange calls. + // "FOR_VPC" - A GCP resource can use the reserved CIDR block by + // associating it with the Internal Range resource if usage is set to + // FOR_VPC. + // "EXTERNAL_TO_VPC" - Ranges created with EXTERNAL_TO_VPC cannot be + // associated with GCP resources and are meant to block out address + // ranges for various use cases, like for example, usage on-prem, with + // dynamic route announcements via interconnect. + Usage string `json:"usage,omitempty"` + + // Users: Output only. The list of resources that refer to this internal + // range. Resources that use the InternalRange for their range + // allocation are referred to as users of the range. Other resources + // mark themselves as users while doing so by creating a reference to + // this InternalRange. Having a user, based on this reference, prevents + // deletion of the InternalRange referred to. Can be empty. + Users []string `json:"users,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *InternalRange) MarshalJSON() ([]byte, error) { + type NoMethod InternalRange + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ListHubsResponse: Response for HubService.ListHubs method. type ListHubsResponse struct { // Hubs: Hubs to be returned. @@ -719,6 +854,48 @@ func (s *ListHubsResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ListInternalRangesResponse: Response for +// InternalRange.ListInternalRanges +type ListInternalRangesResponse struct { + // InternalRanges: InternalRanges to be returned. + InternalRanges []*InternalRange `json:"internalRanges,omitempty"` + + // NextPageToken: The next pagination token in the List response. It + // should be used as page_token for the following request. An empty + // value means no more result. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Unreachable: Locations that could not be reached. + Unreachable []string `json:"unreachable,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "InternalRanges") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "InternalRanges") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ListInternalRangesResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListInternalRangesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ListLocationsResponse: The response message for // Locations.ListLocations. type ListLocationsResponse struct { @@ -2928,118 +3105,115 @@ func (c *ProjectsLocationsGlobalHubsTestIamPermissionsCall) Do(opts ...googleapi } -// method id "networkconnectivity.projects.locations.internalRanges.getIamPolicy": +// method id "networkconnectivity.projects.locations.internalRanges.create": -type ProjectsLocationsInternalRangesGetIamPolicyCall struct { - s *Service - resource string - urlParams_ gensupport.URLParams - ifNoneMatch_ string - ctx_ context.Context - header_ http.Header +type ProjectsLocationsInternalRangesCreateCall struct { + s *Service + parent string + internalrange *InternalRange + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } -// GetIamPolicy: Gets the access control policy for a resource. Returns -// an empty policy if the resource exists and does not have a policy -// set. +// Create: Creates a new InternalRange in a given project and location. // -// - resource: REQUIRED: The resource for which the policy is being -// requested. See Resource names -// (https://cloud.google.com/apis/design/resource_names) for the -// appropriate value for this field. -func (r *ProjectsLocationsInternalRangesService) GetIamPolicy(resource string) *ProjectsLocationsInternalRangesGetIamPolicyCall { - c := &ProjectsLocationsInternalRangesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.resource = resource +// - parent: The parent resource's name of the InternalRange. +func (r *ProjectsLocationsInternalRangesService) Create(parent string, internalrange *InternalRange) *ProjectsLocationsInternalRangesCreateCall { + c := &ProjectsLocationsInternalRangesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.internalrange = internalrange return c } -// OptionsRequestedPolicyVersion sets the optional parameter -// "options.requestedPolicyVersion": The maximum policy version that -// will be used to format the policy. Valid values are 0, 1, and 3. -// Requests specifying an invalid value will be rejected. Requests for -// policies with any conditional role bindings must specify version 3. -// Policies with no conditional role bindings may specify any valid -// value or leave the field unset. The policy in the response might use -// the policy version that you specified, or it might use a lower policy -// version. For example, if you specify version 3, but the policy has no -// conditional role bindings, the response uses version 1. To learn -// which resources support conditions in their IAM policies, see the IAM -// documentation -// (https://cloud.google.com/iam/help/conditions/resource-policies). -func (c *ProjectsLocationsInternalRangesGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsInternalRangesGetIamPolicyCall { - c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion)) +// InternalRangeId sets the optional parameter "internalRangeId": +// Resource ID (i.e. 'foo' in +// '[...]/projects/p/locations/l/internalRanges/foo') See +// https://google.aip.dev/122#resource-id-segments Unique per location. +func (c *ProjectsLocationsInternalRangesCreateCall) InternalRangeId(internalRangeId string) *ProjectsLocationsInternalRangesCreateCall { + c.urlParams_.Set("internalRangeId", internalRangeId) + return c +} + +// RequestId sets the optional parameter "requestId": 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. For example, +// consider a situation where you make an initial request and t he +// 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). +func (c *ProjectsLocationsInternalRangesCreateCall) RequestId(requestId string) *ProjectsLocationsInternalRangesCreateCall { + c.urlParams_.Set("requestId", requestId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. -func (c *ProjectsLocationsInternalRangesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsInternalRangesGetIamPolicyCall { +func (c *ProjectsLocationsInternalRangesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsInternalRangesCreateCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } -// IfNoneMatch sets the optional parameter which makes the operation -// fail if the object's ETag matches the given value. This is useful for -// getting updates only after the object has changed since the last -// request. Use googleapi.IsNotModified to check whether the response -// error from Do is the result of In-None-Match. -func (c *ProjectsLocationsInternalRangesGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsInternalRangesGetIamPolicyCall { - c.ifNoneMatch_ = entityTag - return c -} - // Context sets the context to be used in this call's Do method. Any // pending HTTP request will be aborted if the provided context is // canceled. -func (c *ProjectsLocationsInternalRangesGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsInternalRangesGetIamPolicyCall { +func (c *ProjectsLocationsInternalRangesCreateCall) Context(ctx context.Context) *ProjectsLocationsInternalRangesCreateCall { c.ctx_ = ctx return c } // Header returns an http.Header that can be modified by the caller to // add HTTP headers to the request. -func (c *ProjectsLocationsInternalRangesGetIamPolicyCall) Header() http.Header { +func (c *ProjectsLocationsInternalRangesCreateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsInternalRangesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsInternalRangesCreateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := make(http.Header) reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) for k, v := range c.header_ { reqHeaders[k] = v } reqHeaders.Set("User-Agent", c.s.userAgent()) - if c.ifNoneMatch_ != "" { - reqHeaders.Set("If-None-Match", c.ifNoneMatch_) - } var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.internalrange) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha1/{+resource}:getIamPolicy") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha1/{+parent}/internalRanges") urls += "?" + c.urlParams_.Encode() - req, err := http.NewRequest("GET", urls, body) + req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "resource": c.resource, + "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "networkconnectivity.projects.locations.internalRanges.getIamPolicy" call. -// Exactly one of *Policy or error will be non-nil. Any non-2xx status -// code is an error. Response headers are in either -// *Policy.ServerResponse.Header or (if a response was returned at all) -// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to -// check whether the returned error was because http.StatusNotModified -// was returned. -func (c *ProjectsLocationsInternalRangesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { +// Do executes the "networkconnectivity.projects.locations.internalRanges.create" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsInternalRangesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -3058,7 +3232,7 @@ func (c *ProjectsLocationsInternalRangesGetIamPolicyCall) Do(opts ...googleapi.C if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &Policy{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -3070,31 +3244,914 @@ func (c *ProjectsLocationsInternalRangesGetIamPolicyCall) Do(opts ...googleapi.C } return ret, nil // { - // "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", - // "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/internalRanges/{internalRangesId}:getIamPolicy", - // "httpMethod": "GET", - // "id": "networkconnectivity.projects.locations.internalRanges.getIamPolicy", + // "description": "Creates a new InternalRange in a given project and location.", + // "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/internalRanges", + // "httpMethod": "POST", + // "id": "networkconnectivity.projects.locations.internalRanges.create", // "parameterOrder": [ - // "resource" + // "parent" // ], // "parameters": { - // "options.requestedPolicyVersion": { - // "description": "Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).", - // "format": "int32", + // "internalRangeId": { + // "description": "Optional. Resource ID (i.e. 'foo' in '[...]/projects/p/locations/l/internalRanges/foo') See https://google.aip.dev/122#resource-id-segments Unique per location.", // "location": "query", - // "type": "integer" + // "type": "string" // }, - // "resource": { - // "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "parent": { + // "description": "Required. The parent resource's name of the InternalRange.", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/internalRanges/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+$", // "required": true, // "type": "string" + // }, + // "requestId": { + // "description": "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. For example, consider a situation where you make an initial request and t he 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).", + // "location": "query", + // "type": "string" // } // }, - // "path": "v1alpha1/{+resource}:getIamPolicy", + // "path": "v1alpha1/{+parent}/internalRanges", + // "request": { + // "$ref": "InternalRange" + // }, // "response": { - // "$ref": "Policy" + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "networkconnectivity.projects.locations.internalRanges.delete": + +type ProjectsLocationsInternalRangesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a single InternalRange. +// +// - name: The name of the InternalRange to delete. +func (r *ProjectsLocationsInternalRangesService) Delete(name string) *ProjectsLocationsInternalRangesDeleteCall { + c := &ProjectsLocationsInternalRangesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// RequestId sets the optional parameter "requestId": 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 after the first request. For example, +// consider a situation where you make an initial request and t he +// 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). +func (c *ProjectsLocationsInternalRangesDeleteCall) RequestId(requestId string) *ProjectsLocationsInternalRangesDeleteCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsInternalRangesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsInternalRangesDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsInternalRangesDeleteCall) Context(ctx context.Context) *ProjectsLocationsInternalRangesDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsInternalRangesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsInternalRangesDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("DELETE", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "networkconnectivity.projects.locations.internalRanges.delete" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsInternalRangesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes a single InternalRange.", + // "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/internalRanges/{internalRangesId}", + // "httpMethod": "DELETE", + // "id": "networkconnectivity.projects.locations.internalRanges.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the InternalRange to delete.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/internalRanges/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "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 after the first request. For example, consider a situation where you make an initial request and t he 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).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1alpha1/{+name}", + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "networkconnectivity.projects.locations.internalRanges.get": + +type ProjectsLocationsInternalRangesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets details of a single InternalRange. +// +// - name: Name of the InternalRange to get. +func (r *ProjectsLocationsInternalRangesService) Get(name string) *ProjectsLocationsInternalRangesGetCall { + c := &ProjectsLocationsInternalRangesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsInternalRangesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsInternalRangesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsInternalRangesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsInternalRangesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsInternalRangesGetCall) Context(ctx context.Context) *ProjectsLocationsInternalRangesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsInternalRangesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsInternalRangesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "networkconnectivity.projects.locations.internalRanges.get" call. +// Exactly one of *InternalRange or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *InternalRange.ServerResponse.Header or (if a response was returned +// at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsInternalRangesGetCall) Do(opts ...googleapi.CallOption) (*InternalRange, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &InternalRange{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets details of a single InternalRange.", + // "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/internalRanges/{internalRangesId}", + // "httpMethod": "GET", + // "id": "networkconnectivity.projects.locations.internalRanges.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Name of the InternalRange to get.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/internalRanges/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1alpha1/{+name}", + // "response": { + // "$ref": "InternalRange" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "networkconnectivity.projects.locations.internalRanges.getIamPolicy": + +type ProjectsLocationsInternalRangesGetIamPolicyCall struct { + s *Service + resource string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetIamPolicy: Gets the access control policy for a resource. Returns +// an empty policy if the resource exists and does not have a policy +// set. +// +// - resource: REQUIRED: The resource for which the policy is being +// requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. +func (r *ProjectsLocationsInternalRangesService) GetIamPolicy(resource string) *ProjectsLocationsInternalRangesGetIamPolicyCall { + c := &ProjectsLocationsInternalRangesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + return c +} + +// OptionsRequestedPolicyVersion sets the optional parameter +// "options.requestedPolicyVersion": The maximum policy version that +// will be used to format the policy. Valid values are 0, 1, and 3. +// Requests specifying an invalid value will be rejected. Requests for +// policies with any conditional role bindings must specify version 3. +// Policies with no conditional role bindings may specify any valid +// value or leave the field unset. The policy in the response might use +// the policy version that you specified, or it might use a lower policy +// version. For example, if you specify version 3, but the policy has no +// conditional role bindings, the response uses version 1. To learn +// which resources support conditions in their IAM policies, see the IAM +// documentation +// (https://cloud.google.com/iam/help/conditions/resource-policies). +func (c *ProjectsLocationsInternalRangesGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsInternalRangesGetIamPolicyCall { + c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsInternalRangesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsInternalRangesGetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsInternalRangesGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsInternalRangesGetIamPolicyCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsInternalRangesGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsInternalRangesGetIamPolicyCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsInternalRangesGetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsInternalRangesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha1/{+resource}:getIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "networkconnectivity.projects.locations.internalRanges.getIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *ProjectsLocationsInternalRangesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + // "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/internalRanges/{internalRangesId}:getIamPolicy", + // "httpMethod": "GET", + // "id": "networkconnectivity.projects.locations.internalRanges.getIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "options.requestedPolicyVersion": { + // "description": "Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/internalRanges/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1alpha1/{+resource}:getIamPolicy", + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "networkconnectivity.projects.locations.internalRanges.list": + +type ProjectsLocationsInternalRangesListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists InternalRanges in a given project and location. +// +// - parent: The parent resource's name. +func (r *ProjectsLocationsInternalRangesService) List(parent string) *ProjectsLocationsInternalRangesListCall { + c := &ProjectsLocationsInternalRangesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Filter sets the optional parameter "filter": A filter expression that +// filters the results listed in the response. +func (c *ProjectsLocationsInternalRangesListCall) Filter(filter string) *ProjectsLocationsInternalRangesListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// OrderBy sets the optional parameter "orderBy": Sort the results by a +// certain order. +func (c *ProjectsLocationsInternalRangesListCall) OrderBy(orderBy string) *ProjectsLocationsInternalRangesListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of results per page that should be returned. +func (c *ProjectsLocationsInternalRangesListCall) PageSize(pageSize int64) *ProjectsLocationsInternalRangesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The page token. +func (c *ProjectsLocationsInternalRangesListCall) PageToken(pageToken string) *ProjectsLocationsInternalRangesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsInternalRangesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsInternalRangesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsInternalRangesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsInternalRangesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsInternalRangesListCall) Context(ctx context.Context) *ProjectsLocationsInternalRangesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsInternalRangesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsInternalRangesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha1/{+parent}/internalRanges") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "networkconnectivity.projects.locations.internalRanges.list" call. +// Exactly one of *ListInternalRangesResponse or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *ListInternalRangesResponse.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsInternalRangesListCall) Do(opts ...googleapi.CallOption) (*ListInternalRangesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &ListInternalRangesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists InternalRanges in a given project and location.", + // "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/internalRanges", + // "httpMethod": "GET", + // "id": "networkconnectivity.projects.locations.internalRanges.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "filter": { + // "description": "A filter expression that filters the results listed in the response.", + // "location": "query", + // "type": "string" + // }, + // "orderBy": { + // "description": "Sort the results by a certain order.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "The maximum number of results per page that should be returned.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The page token.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The parent resource's name.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1alpha1/{+parent}/internalRanges", + // "response": { + // "$ref": "ListInternalRangesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsLocationsInternalRangesListCall) Pages(ctx context.Context, f func(*ListInternalRangesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "networkconnectivity.projects.locations.internalRanges.patch": + +type ProjectsLocationsInternalRangesPatchCall struct { + s *Service + name string + internalrange *InternalRange + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates the parameters of a single InternalRange. +// +// - name: Immutable. The name of a InternalRange. Format: +// projects/{project}/locations/{location}/internalRanges/{internal_ran +// ge} See: +// https://google.aip.dev/122#fields-representing-resource-names. +func (r *ProjectsLocationsInternalRangesService) Patch(name string, internalrange *InternalRange) *ProjectsLocationsInternalRangesPatchCall { + c := &ProjectsLocationsInternalRangesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.internalrange = internalrange + return c +} + +// RequestId sets the optional parameter "requestId": 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. For example, +// consider a situation where you make an initial request and t he +// 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). +func (c *ProjectsLocationsInternalRangesPatchCall) RequestId(requestId string) *ProjectsLocationsInternalRangesPatchCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// UpdateMask sets the optional parameter "updateMask": Field mask is +// used to specify the fields to be overwritten in the InternalRange +// 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. +func (c *ProjectsLocationsInternalRangesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsInternalRangesPatchCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsInternalRangesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsInternalRangesPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsInternalRangesPatchCall) Context(ctx context.Context) *ProjectsLocationsInternalRangesPatchCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsInternalRangesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsInternalRangesPatchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.internalrange) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("PATCH", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "networkconnectivity.projects.locations.internalRanges.patch" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsInternalRangesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleLongrunningOperation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the parameters of a single InternalRange.", + // "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/internalRanges/{internalRangesId}", + // "httpMethod": "PATCH", + // "id": "networkconnectivity.projects.locations.internalRanges.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Immutable. The name of a InternalRange. Format: projects/{project}/locations/{location}/internalRanges/{internal_range} See: https://google.aip.dev/122#fields-representing-resource-names", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/internalRanges/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "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. For example, consider a situation where you make an initial request and t he 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).", + // "location": "query", + // "type": "string" + // }, + // "updateMask": { + // "description": "Optional. Field mask is used to specify the fields to be overwritten in the InternalRange 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.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1alpha1/{+name}", + // "request": { + // "$ref": "InternalRange" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" diff --git a/retail/v2/retail-api.json b/retail/v2/retail-api.json index 0ed913267d3..058e8f6c162 100644 --- a/retail/v2/retail-api.json +++ b/retail/v2/retail-api.json @@ -1780,7 +1780,7 @@ } } }, - "revision": "20221024", + "revision": "20221107", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -3763,7 +3763,7 @@ "type": "object" }, "GoogleCloudRetailV2RuleTwowaySynonymsAction": { - "description": "Creates a set of terms that will be treated as synonyms of each other. Example: synonyms of \"sneakers\" and \"shoes\". * \"sneakers\" will use a synonym of \"shoes\". * \"shoes\" will use a synonym of \"sneakers\".", + "description": "Creates a set of terms that will be treated as synonyms of each other. Example: synonyms of \"sneakers\" and \"shoes\": * \"sneakers\" will use a synonym of \"shoes\". * \"shoes\" will use a synonym of \"sneakers\".", "id": "GoogleCloudRetailV2RuleTwowaySynonymsAction", "properties": { "synonyms": { diff --git a/retail/v2/retail-gen.go b/retail/v2/retail-gen.go index d07d89e9d53..a64f31988b2 100644 --- a/retail/v2/retail-gen.go +++ b/retail/v2/retail-gen.go @@ -4230,7 +4230,7 @@ func (s *GoogleCloudRetailV2RuleReplacementAction) MarshalJSON() ([]byte, error) // GoogleCloudRetailV2RuleTwowaySynonymsAction: Creates a set of terms // that will be treated as synonyms of each other. Example: synonyms of -// "sneakers" and "shoes". * "sneakers" will use a synonym of "shoes". * +// "sneakers" and "shoes": * "sneakers" will use a synonym of "shoes". * // "shoes" will use a synonym of "sneakers". type GoogleCloudRetailV2RuleTwowaySynonymsAction struct { // Synonyms: Defines a set of synonyms. Can specify up to 100 synonyms. diff --git a/retail/v2alpha/retail-api.json b/retail/v2alpha/retail-api.json index 99654640737..29c102c3196 100644 --- a/retail/v2alpha/retail-api.json +++ b/retail/v2alpha/retail-api.json @@ -138,7 +138,7 @@ "type": "string" }, "enableAttributeSuggestions": { - "description": "If true, attribute suggestions are enabled and provided in response.", + "description": "If true, attribute suggestions are enabled and provided in response. This field is only available for \"cloud-retail\" dataset.", "location": "query", "type": "boolean" }, @@ -2095,7 +2095,7 @@ } } }, - "revision": "20221024", + "revision": "20221107", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -2850,7 +2850,7 @@ "additionalProperties": { "$ref": "GoogleCloudRetailV2alphaCompleteQueryResponseAttributeResult" }, - "description": "A map of matched attribute suggestions. Current supported keys: * `brands` * `categories`", + "description": "A map of matched attribute suggestions. This field is only available for \"cloud-retail\" dataset. Current supported keys: * `brands` * `categories`", "type": "object" }, "attributionToken": { @@ -4888,7 +4888,7 @@ "type": "object" }, "GoogleCloudRetailV2alphaRuleTwowaySynonymsAction": { - "description": "Creates a set of terms that will be treated as synonyms of each other. Example: synonyms of \"sneakers\" and \"shoes\". * \"sneakers\" will use a synonym of \"shoes\". * \"shoes\" will use a synonym of \"sneakers\".", + "description": "Creates a set of terms that will be treated as synonyms of each other. Example: synonyms of \"sneakers\" and \"shoes\": * \"sneakers\" will use a synonym of \"shoes\". * \"shoes\" will use a synonym of \"sneakers\".", "id": "GoogleCloudRetailV2alphaRuleTwowaySynonymsAction", "properties": { "synonyms": { diff --git a/retail/v2alpha/retail-gen.go b/retail/v2alpha/retail-gen.go index d78039c9fa6..26829093a66 100644 --- a/retail/v2alpha/retail-gen.go +++ b/retail/v2alpha/retail-gen.go @@ -1730,8 +1730,9 @@ func (s *GoogleCloudRetailV2alphaColorInfo) MarshalJSON() ([]byte, error) { // GoogleCloudRetailV2alphaCompleteQueryResponse: Response of the // auto-complete query. type GoogleCloudRetailV2alphaCompleteQueryResponse struct { - // AttributeResults: A map of matched attribute suggestions. Current - // supported keys: * `brands` * `categories` + // AttributeResults: A map of matched attribute suggestions. This field + // is only available for "cloud-retail" dataset. Current supported keys: + // * `brands` * `categories` AttributeResults map[string]GoogleCloudRetailV2alphaCompleteQueryResponseAttributeResult `json:"attributeResults,omitempty"` // AttributionToken: A unique complete token. This should be included in @@ -5762,7 +5763,7 @@ func (s *GoogleCloudRetailV2alphaRuleReplacementAction) MarshalJSON() ([]byte, e // GoogleCloudRetailV2alphaRuleTwowaySynonymsAction: Creates a set of // terms that will be treated as synonyms of each other. Example: -// synonyms of "sneakers" and "shoes". * "sneakers" will use a synonym +// synonyms of "sneakers" and "shoes": * "sneakers" will use a synonym // of "shoes". * "shoes" will use a synonym of "sneakers". type GoogleCloudRetailV2alphaRuleTwowaySynonymsAction struct { // Synonyms: Defines a set of synonyms. Can specify up to 100 synonyms. @@ -8641,7 +8642,8 @@ func (c *ProjectsLocationsCatalogsCompleteQueryCall) DeviceType(deviceType strin // EnableAttributeSuggestions sets the optional parameter // "enableAttributeSuggestions": If true, attribute suggestions are -// enabled and provided in response. +// enabled and provided in response. This field is only available for +// "cloud-retail" dataset. func (c *ProjectsLocationsCatalogsCompleteQueryCall) EnableAttributeSuggestions(enableAttributeSuggestions bool) *ProjectsLocationsCatalogsCompleteQueryCall { c.urlParams_.Set("enableAttributeSuggestions", fmt.Sprint(enableAttributeSuggestions)) return c @@ -8819,7 +8821,7 @@ func (c *ProjectsLocationsCatalogsCompleteQueryCall) Do(opts ...googleapi.CallOp // "type": "string" // }, // "enableAttributeSuggestions": { - // "description": "If true, attribute suggestions are enabled and provided in response.", + // "description": "If true, attribute suggestions are enabled and provided in response. This field is only available for \"cloud-retail\" dataset.", // "location": "query", // "type": "boolean" // }, diff --git a/retail/v2beta/retail-api.json b/retail/v2beta/retail-api.json index 1e68e9be6d1..414dbc398ae 100644 --- a/retail/v2beta/retail-api.json +++ b/retail/v2beta/retail-api.json @@ -2024,7 +2024,7 @@ } } }, - "revision": "20221024", + "revision": "20221107", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -5293,7 +5293,7 @@ "type": "object" }, "GoogleCloudRetailV2betaRuleTwowaySynonymsAction": { - "description": "Creates a set of terms that will be treated as synonyms of each other. Example: synonyms of \"sneakers\" and \"shoes\". * \"sneakers\" will use a synonym of \"shoes\". * \"shoes\" will use a synonym of \"sneakers\".", + "description": "Creates a set of terms that will be treated as synonyms of each other. Example: synonyms of \"sneakers\" and \"shoes\": * \"sneakers\" will use a synonym of \"shoes\". * \"shoes\" will use a synonym of \"sneakers\".", "id": "GoogleCloudRetailV2betaRuleTwowaySynonymsAction", "properties": { "synonyms": { diff --git a/retail/v2beta/retail-gen.go b/retail/v2beta/retail-gen.go index 7c8510087df..acfb6b36ab0 100644 --- a/retail/v2beta/retail-gen.go +++ b/retail/v2beta/retail-gen.go @@ -6553,7 +6553,7 @@ func (s *GoogleCloudRetailV2betaRuleReplacementAction) MarshalJSON() ([]byte, er // GoogleCloudRetailV2betaRuleTwowaySynonymsAction: Creates a set of // terms that will be treated as synonyms of each other. Example: -// synonyms of "sneakers" and "shoes". * "sneakers" will use a synonym +// synonyms of "sneakers" and "shoes": * "sneakers" will use a synonym // of "shoes". * "shoes" will use a synonym of "sneakers". type GoogleCloudRetailV2betaRuleTwowaySynonymsAction struct { // Synonyms: Defines a set of synonyms. Can specify up to 100 synonyms. diff --git a/run/v1/run-api.json b/run/v1/run-api.json index e9b67730234..3e2a74c5baa 100644 --- a/run/v1/run-api.json +++ b/run/v1/run-api.json @@ -2289,7 +2289,7 @@ } } }, - "revision": "20221023", + "revision": "20221106", "rootUrl": "https://run.googleapis.com/", "schemas": { "Addressable": { @@ -3151,7 +3151,7 @@ "id": "KeyToPath", "properties": { "key": { - "description": "The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version. The key to project.", + "description": "The Cloud Secret Manager secret version. Can be 'latest' for the latest value, or an integer or a secret alias for a specific version. The key to project.", "type": "string" }, "mode": { @@ -3950,7 +3950,7 @@ "type": "array" }, "observedGeneration": { - "description": "ObservedGeneration is the 'Generation' of the Route that was last processed by the controller. Clients polling for completed reconciliation should poll until observedGeneration = metadata.generation and the Ready condition's status is True or False. Note that providing a trafficTarget that only has a configurationName will result in a Route that does not increment either its metadata.generation or its observedGeneration, as new \"latest ready\" revisions from the Configuration are processed without an update to the Route's spec.", + "description": "ObservedGeneration is the 'Generation' of the Route that was last processed by the controller. Clients polling for completed reconciliation should poll until observedGeneration = metadata.generation and the Ready condition's status is True or False. Note that providing a TrafficTarget that has latest_revision=True will result in a Route that does not increment either its metadata.generation or its observedGeneration, as new \"latest ready\" revisions from the Configuration are processed without an update to the Route's spec.", "format": "int32", "type": "integer" }, @@ -3998,7 +3998,7 @@ "id": "SecretKeySelector", "properties": { "key": { - "description": "Required. A Cloud Secret Manager secret version. Must be 'latest' for the latest version or an integer for a specific version. The key of the secret to select from. Must be a valid secret key.", + "description": "Required. A Cloud Secret Manager secret version. Must be 'latest' for the latest version, an integer for a specific version, or a version alias. The key of the secret to select from. Must be a valid secret key.", "type": "string" }, "localObjectReference": { @@ -4430,11 +4430,11 @@ "id": "TrafficTarget", "properties": { "configurationName": { - "description": "ConfigurationName of a configuration to whose latest revision which will be sent this portion of traffic. When the \"status.latestReadyRevisionName\" of the referenced configuration changes, traffic will automatically migrate from the prior \"latest ready\" revision to the new one. This field is never set in Route's status, only its spec. This is mutually exclusive with RevisionName. Cloud Run currently supports a single ConfigurationName.", + "description": "[Deprecated] Not supported in Cloud Run. It must be empty.", "type": "string" }, "latestRevision": { - "description": "Optional. LatestRevision may be provided to indicate that the latest ready Revision of the Configuration should be used for this traffic target. When provided LatestRevision must be true if RevisionName is empty; it must be false when RevisionName is non-empty in spec. When shown in status, this indicates that the RevisionName was resolved from a spec's ConfigurationName.", + "description": "Uses the \"status.latestReadyRevisionName\" of the Service to determine the traffic target. When it changes, traffic will automatically migrate from the prior \"latest ready\" revision to the new one. This field must be false if RevisionName is set. This field defaults to true otherwise. If the field is set to true on Status, this means that the Revision was resolved from the Service's latest ready revision.", "type": "boolean" }, "percent": { @@ -4443,15 +4443,16 @@ "type": "integer" }, "revisionName": { - "description": "RevisionName of a specific revision to which to send this portion of traffic. This is mutually exclusive with ConfigurationName.", + "description": "Points this traffic target to a specific Revision. This field is mutually exclusive with latest_revision.", "type": "string" }, "tag": { - "description": "Optional. Tag is used to expose a dedicated url for referencing this target exclusively.", + "description": "Tag is used to expose a dedicated url for referencing this target exclusively.", "type": "string" }, "url": { "description": "Output only. URL displays the URL for accessing tagged traffic targets. URL is displayed in status, and is disallowed on spec. URL must contain a scheme (e.g. https://) and a hostname, but may not contain anything else (e.g. basic auth, url path, etc.)", + "readOnly": true, "type": "string" } }, diff --git a/run/v1/run-gen.go b/run/v1/run-gen.go index eaaefb2e5d4..c766bb3c60e 100644 --- a/run/v1/run-gen.go +++ b/run/v1/run-gen.go @@ -1988,8 +1988,8 @@ func (s *JobStatus) MarshalJSON() ([]byte, error) { // KeyToPath: Maps a string key to a path within a volume. type KeyToPath struct { // Key: The Cloud Secret Manager secret version. Can be 'latest' for the - // latest value or an integer for a specific version. The key to - // project. + // latest value, or an integer or a secret alias for a specific version. + // The key to project. Key string `json:"key,omitempty"` // Mode: (Optional) Mode bits to use on this file, must be a value @@ -3338,8 +3338,8 @@ type RouteStatus struct { // Route that was last processed by the controller. Clients polling for // completed reconciliation should poll until observedGeneration = // metadata.generation and the Ready condition's status is True or - // False. Note that providing a trafficTarget that only has a - // configurationName will result in a Route that does not increment + // False. Note that providing a TrafficTarget that has + // latest_revision=True will result in a Route that does not increment // either its metadata.generation or its observedGeneration, as new // "latest ready" revisions from the Configuration are processed without // an update to the Route's spec. @@ -3427,8 +3427,9 @@ func (s *SecretEnvSource) MarshalJSON() ([]byte, error) { // SecretKeySelector: SecretKeySelector selects a key of a Secret. type SecretKeySelector struct { // Key: Required. A Cloud Secret Manager secret version. Must be - // 'latest' for the latest version or an integer for a specific version. - // The key of the secret to select from. Must be a valid secret key. + // 'latest' for the latest version, an integer for a specific version, + // or a version alias. The key of the secret to select from. Must be a + // valid secret key. Key string `json:"key,omitempty"` // LocalObjectReference: This field should not be used directly as it is @@ -4288,34 +4289,29 @@ func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { // TrafficTarget: TrafficTarget holds a single entry of the routing // table for a Route. type TrafficTarget struct { - // ConfigurationName: ConfigurationName of a configuration to whose - // latest revision which will be sent this portion of traffic. When the - // "status.latestReadyRevisionName" of the referenced configuration - // changes, traffic will automatically migrate from the prior "latest - // ready" revision to the new one. This field is never set in Route's - // status, only its spec. This is mutually exclusive with RevisionName. - // Cloud Run currently supports a single ConfigurationName. + // ConfigurationName: [Deprecated] Not supported in Cloud Run. It must + // be empty. ConfigurationName string `json:"configurationName,omitempty"` - // LatestRevision: Optional. LatestRevision may be provided to indicate - // that the latest ready Revision of the Configuration should be used - // for this traffic target. When provided LatestRevision must be true if - // RevisionName is empty; it must be false when RevisionName is - // non-empty in spec. When shown in status, this indicates that the - // RevisionName was resolved from a spec's ConfigurationName. + // LatestRevision: Uses the "status.latestReadyRevisionName" of the + // Service to determine the traffic target. When it changes, traffic + // will automatically migrate from the prior "latest ready" revision to + // the new one. This field must be false if RevisionName is set. This + // field defaults to true otherwise. If the field is set to true on + // Status, this means that the Revision was resolved from the Service's + // latest ready revision. LatestRevision bool `json:"latestRevision,omitempty"` // Percent: Percent specifies percent of the traffic to this Revision or // Configuration. This defaults to zero if unspecified. Percent int64 `json:"percent,omitempty"` - // RevisionName: RevisionName of a specific revision to which to send - // this portion of traffic. This is mutually exclusive with - // ConfigurationName. + // RevisionName: Points this traffic target to a specific Revision. This + // field is mutually exclusive with latest_revision. RevisionName string `json:"revisionName,omitempty"` - // Tag: Optional. Tag is used to expose a dedicated url for referencing - // this target exclusively. + // Tag: Tag is used to expose a dedicated url for referencing this + // target exclusively. Tag string `json:"tag,omitempty"` // Url: Output only. URL displays the URL for accessing tagged traffic diff --git a/run/v2/run-api.json b/run/v2/run-api.json index c1554cd87b6..8dd04087ba3 100644 --- a/run/v2/run-api.json +++ b/run/v2/run-api.json @@ -112,7 +112,7 @@ "jobs": { "methods": { "create": { - "description": "Create a Job.", + "description": "Creates a Job.", "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/jobs", "httpMethod": "POST", "id": "run.projects.locations.jobs.create", @@ -126,7 +126,7 @@ "type": "string" }, "parent": { - "description": "Required. The location and project in which this Job should be created. Format: projects/{project}/locations/{location}", + "description": "Required. The location and project in which this Job should be created. Format: projects/{project}/locations/{location}, where {project} can be project id or number.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -164,7 +164,7 @@ "type": "string" }, "name": { - "description": "Required. The full name of the Job. Format: projects/{project}/locations/{location}/jobs/{job}", + "description": "Required. The full name of the Job. Format: projects/{project}/locations/{location}/jobs/{job}, where {project} can be project id or number.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$", "required": true, @@ -194,7 +194,7 @@ ], "parameters": { "name": { - "description": "Required. The full name of the Job. Format: projects/{project}/locations/{location}/jobs/{job}", + "description": "Required. The full name of the Job. Format: projects/{project}/locations/{location}/jobs/{job}, where {project} can be project id or number.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$", "required": true, @@ -210,7 +210,7 @@ ] }, "getIamPolicy": { - "description": "Get the IAM Access Control policy currently in effect for the given Job. This result does not include any inherited policies.", + "description": "Gets the IAM Access Control policy currently in effect for the given Job. This result does not include any inherited policies.", "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}:getIamPolicy", "httpMethod": "GET", "id": "run.projects.locations.jobs.getIamPolicy", @@ -241,7 +241,7 @@ ] }, "list": { - "description": "List Jobs.", + "description": "Lists Jobs.", "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/jobs", "httpMethod": "GET", "id": "run.projects.locations.jobs.list", @@ -261,7 +261,7 @@ "type": "string" }, "parent": { - "description": "Required. The location and project to list resources on. Format: projects/{project}/locations/{location}", + "description": "Required. The location and project to list resources on. Format: projects/{project}/locations/{location}, where {project} can be project id or number.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -329,7 +329,7 @@ ], "parameters": { "name": { - "description": "Required. The full name of the Job. Format: projects/{project}/locations/{location}/jobs/{job}", + "description": "Required. The full name of the Job. Format: projects/{project}/locations/{location}/jobs/{job}, where {project} can be project id or number.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$", "required": true, @@ -408,7 +408,7 @@ "executions": { "methods": { "delete": { - "description": "Delete an Execution.", + "description": "Deletes an Execution.", "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}/executions/{executionsId}", "httpMethod": "DELETE", "id": "run.projects.locations.jobs.executions.delete", @@ -422,7 +422,7 @@ "type": "string" }, "name": { - "description": "Required. The name of the Execution to delete. Format: projects/{project}/locations/{location}/jobs/{job}/executions/{execution}", + "description": "Required. The name of the Execution to delete. Format: projects/{project}/locations/{location}/jobs/{job}/executions/{execution}, where {project} can be project id or number.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+/executions/[^/]+$", "required": true, @@ -443,7 +443,7 @@ ] }, "get": { - "description": "Gets information about a Execution.", + "description": "Gets information about an Execution.", "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}/executions/{executionsId}", "httpMethod": "GET", "id": "run.projects.locations.jobs.executions.get", @@ -452,7 +452,7 @@ ], "parameters": { "name": { - "description": "Required. The full name of the Execution. Format: projects/{project}/locations/{location}/jobs/{job}/executions/{execution}", + "description": "Required. The full name of the Execution. Format: projects/{project}/locations/{location}/jobs/{job}/executions/{execution}, where {project} can be project id or number.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+/executions/[^/]+$", "required": true, @@ -468,7 +468,7 @@ ] }, "list": { - "description": "List Executions from a Job.", + "description": "Lists Executions from a Job.", "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}/executions", "httpMethod": "GET", "id": "run.projects.locations.jobs.executions.list", @@ -488,7 +488,7 @@ "type": "string" }, "parent": { - "description": "Required. The Execution from which the Executions should be listed. To list all Executions across Jobs, use \"-\" instead of Job name. Format: projects/{project}/locations/{location}/jobs/{job}", + "description": "Required. The Execution from which the Executions should be listed. To list all Executions across Jobs, use \"-\" instead of Job name. Format: projects/{project}/locations/{location}/jobs/{job}, where {project} can be project id or number.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$", "required": true, @@ -538,7 +538,7 @@ ] }, "list": { - "description": "List Tasks from an Execution of a Job.", + "description": "Lists Tasks from an Execution of a Job.", "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}/executions/{executionsId}/tasks", "httpMethod": "GET", "id": "run.projects.locations.jobs.executions.tasks.list", @@ -691,14 +691,14 @@ ], "parameters": { "parent": { - "description": "Required. The location and project in which this service should be created. Format: projects/{project}/locations/{location} Only lowercase characters, digits, and hyphens.", + "description": "Required. The location and project in which this service should be created. Format: projects/{project}/locations/{location}, where {project} can be project id or number. Only lowercase characters, digits, and hyphens.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" }, "serviceId": { - "description": "Required. The unique identifier for the Service. It must begin with letter, and may not end with hyphen; must contain fewer than 50 characters. The name of the service becomes {parent}/services/{service_id}.", + "description": "Required. The unique identifier for the Service. It must begin with letter, and cannot end with hyphen; must contain fewer than 50 characters. The name of the service becomes {parent}/services/{service_id}.", "location": "query", "type": "string" }, @@ -734,7 +734,7 @@ "type": "string" }, "name": { - "description": "Required. The full name of the Service. Format: projects/{project}/locations/{location}/services/{service}", + "description": "Required. The full name of the Service. Format: projects/{project}/locations/{location}/services/{service}, where {project} can be project id or number.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/services/[^/]+$", "required": true, @@ -764,7 +764,7 @@ ], "parameters": { "name": { - "description": "Required. The full name of the Service. Format: projects/{project}/locations/{location}/services/{service}", + "description": "Required. The full name of the Service. Format: projects/{project}/locations/{location}/services/{service}, where {project} can be project id or number.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/services/[^/]+$", "required": true, @@ -780,7 +780,7 @@ ] }, "getIamPolicy": { - "description": "Get the IAM Access Control policy currently in effect for the given Cloud Run Service. This result does not include any inherited policies.", + "description": "Gets the IAM Access Control policy currently in effect for the given Cloud Run Service. This result does not include any inherited policies.", "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/services/{servicesId}:getIamPolicy", "httpMethod": "GET", "id": "run.projects.locations.services.getIamPolicy", @@ -811,7 +811,7 @@ ] }, "list": { - "description": "List Services.", + "description": "Lists Services.", "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/services", "httpMethod": "GET", "id": "run.projects.locations.services.list", @@ -831,7 +831,7 @@ "type": "string" }, "parent": { - "description": "Required. The location and project to list resources on. Location must be a valid GCP region, and may not be the \"-\" wildcard. Format: projects/{project}/locations/{location}", + "description": "Required. The location and project to list resources on. Location must be a valid GCP region, and cannot be the \"-\" wildcard. Format: projects/{project}/locations/{location}, where {project} can be project id or number.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -950,7 +950,7 @@ "revisions": { "methods": { "delete": { - "description": "Delete a Revision.", + "description": "Deletes a Revision.", "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/services/{servicesId}/revisions/{revisionsId}", "httpMethod": "DELETE", "id": "run.projects.locations.services.revisions.delete", @@ -1010,7 +1010,7 @@ ] }, "list": { - "description": "List Revisions from a given Service, or from a given location.", + "description": "Lists Revisions from a given Service, or from a given location.", "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/services/{servicesId}/revisions", "httpMethod": "GET", "id": "run.projects.locations.services.revisions.list", @@ -1059,7 +1059,7 @@ } } }, - "revision": "20221030", + "revision": "20221106", "rootUrl": "https://run.googleapis.com/", "schemas": { "GoogleCloudRunV2BinaryAuthorization": { @@ -1560,6 +1560,22 @@ }, "type": "object" }, + "GoogleCloudRunV2GRPCAction": { + "description": "GRPCAction describes an action involving a GRPC port.", + "id": "GoogleCloudRunV2GRPCAction", + "properties": { + "port": { + "description": "Port number of the gRPC service. Number must be in the range 1 to 65535. If not specified, defaults to 8080.", + "format": "int32", + "type": "integer" + }, + "service": { + "description": "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). If this is not specified, the default behavior is defined by gRPC.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudRunV2HTTPGetAction": { "description": "HTTPGetAction describes an action based on HTTP Get requests.", "id": "GoogleCloudRunV2HTTPGetAction", @@ -1842,9 +1858,13 @@ "format": "int32", "type": "integer" }, + "grpc": { + "$ref": "GoogleCloudRunV2GRPCAction", + "description": "GRPC specifies an action involving a gRPC port. Exactly one of httpGet, tcpSocket, or grpc must be specified." + }, "httpGet": { "$ref": "GoogleCloudRunV2HTTPGetAction", - "description": "HTTPGet specifies the http request to perform. Exactly one of HTTPGet or TCPSocket must be specified." + "description": "HTTPGet specifies the http request to perform. Exactly one of httpGet, tcpSocket, or grpc must be specified." }, "initialDelaySeconds": { "description": "Number of seconds after the container has started before the probe is initiated. Defaults to 0 seconds. Minimum value is 0. Maximum value for liveness probe is 3600. Maximum value for startup probe is 240. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes", @@ -1858,7 +1878,7 @@ }, "tcpSocket": { "$ref": "GoogleCloudRunV2TCPSocketAction", - "description": "TCPSocket specifies an action involving a TCP port. Exactly one of HTTPGet or TCPSocket must be specified." + "description": "TCPSocket specifies an action involving a TCP port. Exactly one of httpGet, tcpSocket, or grpc must be specified." }, "timeoutSeconds": { "description": "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum value is 3600. Must be smaller than period_seconds. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes", @@ -1880,7 +1900,7 @@ "additionalProperties": { "type": "string" }, - "description": "Only memory and CPU are supported. Note: The only supported values for CPU are '1', '2', and '4'. Setting 4 CPU requires at least 2Gi of memory. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go", + "description": "Only memory and CPU are supported. Note: The only supported values for CPU are '1', '2', '4', and '8'. Setting 4 CPU requires at least 2Gi of memory. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go", "type": "object" } }, @@ -2179,7 +2199,7 @@ "type": "string" }, "version": { - "description": "The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version.", + "description": "The Cloud Secret Manager secret version. Can be 'latest' for the latest version, an integer for a specific version, or a version alias.", "type": "string" } }, @@ -2746,7 +2766,7 @@ "type": "string" }, "version": { - "description": "The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version.", + "description": "The Cloud Secret Manager secret version. Can be 'latest' for the latest value, or an integer or a secret alias for a specific version.", "type": "string" } }, @@ -2791,7 +2811,7 @@ "id": "GoogleCloudRunV2VpcAccess", "properties": { "connector": { - "description": "VPC Access connector name. Format: projects/{project}/locations/{location}/connectors/{connector}", + "description": "VPC Access connector name. Format: projects/{project}/locations/{location}/connectors/{connector}, where {project} can be project id or number.", "type": "string" }, "egress": { diff --git a/run/v2/run-gen.go b/run/v2/run-gen.go index 9d8d1fdb6b8..66ab6897e23 100644 --- a/run/v2/run-gen.go +++ b/run/v2/run-gen.go @@ -900,6 +900,42 @@ func (s *GoogleCloudRunV2ExecutionTemplate) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudRunV2GRPCAction: GRPCAction describes an action involving +// a GRPC port. +type GoogleCloudRunV2GRPCAction struct { + // Port: Port number of the gRPC service. Number must be in the range 1 + // to 65535. If not specified, defaults to 8080. + Port int64 `json:"port,omitempty"` + + // Service: Service is the name of the service to place in the gRPC + // HealthCheckRequest (see + // https://github.com/grpc/grpc/blob/master/doc/health-checking.md). If + // this is not specified, the default behavior is defined by gRPC. + Service string `json:"service,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Port") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Port") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudRunV2GRPCAction) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudRunV2GRPCAction + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudRunV2HTTPGetAction: HTTPGetAction describes an action // based on HTTP Get requests. type GoogleCloudRunV2HTTPGetAction struct { @@ -1347,8 +1383,12 @@ type GoogleCloudRunV2Probe struct { // value is 1. FailureThreshold int64 `json:"failureThreshold,omitempty"` + // Grpc: GRPC specifies an action involving a gRPC port. Exactly one of + // httpGet, tcpSocket, or grpc must be specified. + Grpc *GoogleCloudRunV2GRPCAction `json:"grpc,omitempty"` + // HttpGet: HTTPGet specifies the http request to perform. Exactly one - // of HTTPGet or TCPSocket must be specified. + // of httpGet, tcpSocket, or grpc must be specified. HttpGet *GoogleCloudRunV2HTTPGetAction `json:"httpGet,omitempty"` // InitialDelaySeconds: Number of seconds after the container has @@ -1365,7 +1405,7 @@ type GoogleCloudRunV2Probe struct { PeriodSeconds int64 `json:"periodSeconds,omitempty"` // TcpSocket: TCPSocket specifies an action involving a TCP port. - // Exactly one of HTTPGet or TCPSocket must be specified. + // Exactly one of httpGet, tcpSocket, or grpc must be specified. TcpSocket *GoogleCloudRunV2TCPSocketAction `json:"tcpSocket,omitempty"` // TimeoutSeconds: Number of seconds after which the probe times out. @@ -1406,9 +1446,9 @@ type GoogleCloudRunV2ResourceRequirements struct { CpuIdle bool `json:"cpuIdle,omitempty"` // Limits: Only memory and CPU are supported. Note: The only supported - // values for CPU are '1', '2', and '4'. Setting 4 CPU requires at least - // 2Gi of memory. The values of the map is string form of the 'quantity' - // k8s type: + // values for CPU are '1', '2', '4', and '8'. Setting 4 CPU requires at + // least 2Gi of memory. The values of the map is string form of the + // 'quantity' k8s type: // https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go Limits map[string]string `json:"limits,omitempty"` @@ -1777,7 +1817,8 @@ type GoogleCloudRunV2SecretKeySelector struct { Secret string `json:"secret,omitempty"` // Version: The Cloud Secret Manager secret version. Can be 'latest' for - // the latest value or an integer for a specific version. + // the latest version, an integer for a specific version, or a version + // alias. Version string `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "Secret") to @@ -2513,7 +2554,8 @@ type GoogleCloudRunV2VersionToPath struct { Path string `json:"path,omitempty"` // Version: The Cloud Secret Manager secret version. Can be 'latest' for - // the latest value or an integer for a specific version. + // the latest value, or an integer or a secret alias for a specific + // version. Version string `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "Mode") to @@ -2624,7 +2666,8 @@ func (s *GoogleCloudRunV2VolumeMount) MarshalJSON() ([]byte, error) { // https://cloud.google.com/run/docs/configuring/connecting-vpc type GoogleCloudRunV2VpcAccess struct { // Connector: VPC Access connector name. Format: - // projects/{project}/locations/{location}/connectors/{connector} + // projects/{project}/locations/{location}/connectors/{connector}, where + // {project} can be project id or number. Connector string `json:"connector,omitempty"` // Egress: Traffic VPC egress settings. @@ -3275,10 +3318,11 @@ type ProjectsLocationsJobsCreateCall struct { header_ http.Header } -// Create: Create a Job. +// Create: Creates a Job. // // - parent: The location and project in which this Job should be -// created. Format: projects/{project}/locations/{location}. +// created. Format: projects/{project}/locations/{location}, where +// {project} can be project id or number. func (r *ProjectsLocationsJobsService) Create(parent string, googlecloudrunv2job *GoogleCloudRunV2Job) *ProjectsLocationsJobsCreateCall { c := &ProjectsLocationsJobsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -3393,7 +3437,7 @@ func (c *ProjectsLocationsJobsCreateCall) Do(opts ...googleapi.CallOption) (*Goo } return ret, nil // { - // "description": "Create a Job.", + // "description": "Creates a Job.", // "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/jobs", // "httpMethod": "POST", // "id": "run.projects.locations.jobs.create", @@ -3407,7 +3451,7 @@ func (c *ProjectsLocationsJobsCreateCall) Do(opts ...googleapi.CallOption) (*Goo // "type": "string" // }, // "parent": { - // "description": "Required. The location and project in which this Job should be created. Format: projects/{project}/locations/{location}", + // "description": "Required. The location and project in which this Job should be created. Format: projects/{project}/locations/{location}, where {project} can be project id or number.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+$", // "required": true, @@ -3446,7 +3490,8 @@ type ProjectsLocationsJobsDeleteCall struct { // Delete: Deletes a Job. // // - name: The full name of the Job. Format: -// projects/{project}/locations/{location}/jobs/{job}. +// projects/{project}/locations/{location}/jobs/{job}, where {project} +// can be project id or number. func (r *ProjectsLocationsJobsService) Delete(name string) *ProjectsLocationsJobsDeleteCall { c := &ProjectsLocationsJobsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -3569,7 +3614,7 @@ func (c *ProjectsLocationsJobsDeleteCall) Do(opts ...googleapi.CallOption) (*Goo // "type": "string" // }, // "name": { - // "description": "Required. The full name of the Job. Format: projects/{project}/locations/{location}/jobs/{job}", + // "description": "Required. The full name of the Job. Format: projects/{project}/locations/{location}/jobs/{job}, where {project} can be project id or number.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$", // "required": true, @@ -3606,7 +3651,8 @@ type ProjectsLocationsJobsGetCall struct { // Get: Gets information about a Job. // // - name: The full name of the Job. Format: -// projects/{project}/locations/{location}/jobs/{job}. +// projects/{project}/locations/{location}/jobs/{job}, where {project} +// can be project id or number. func (r *ProjectsLocationsJobsService) Get(name string) *ProjectsLocationsJobsGetCall { c := &ProjectsLocationsJobsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -3721,7 +3767,7 @@ func (c *ProjectsLocationsJobsGetCall) Do(opts ...googleapi.CallOption) (*Google // ], // "parameters": { // "name": { - // "description": "Required. The full name of the Job. Format: projects/{project}/locations/{location}/jobs/{job}", + // "description": "Required. The full name of the Job. Format: projects/{project}/locations/{location}/jobs/{job}, where {project} can be project id or number.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$", // "required": true, @@ -3750,7 +3796,7 @@ type ProjectsLocationsJobsGetIamPolicyCall struct { header_ http.Header } -// GetIamPolicy: Get the IAM Access Control policy currently in effect +// GetIamPolicy: Gets the IAM Access Control policy currently in effect // for the given Job. This result does not include any inherited // policies. // @@ -3881,7 +3927,7 @@ func (c *ProjectsLocationsJobsGetIamPolicyCall) Do(opts ...googleapi.CallOption) } return ret, nil // { - // "description": "Get the IAM Access Control policy currently in effect for the given Job. This result does not include any inherited policies.", + // "description": "Gets the IAM Access Control policy currently in effect for the given Job. This result does not include any inherited policies.", // "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}:getIamPolicy", // "httpMethod": "GET", // "id": "run.projects.locations.jobs.getIamPolicy", @@ -3925,10 +3971,11 @@ type ProjectsLocationsJobsListCall struct { header_ http.Header } -// List: List Jobs. +// List: Lists Jobs. // // - parent: The location and project to list resources on. Format: -// projects/{project}/locations/{location}. +// projects/{project}/locations/{location}, where {project} can be +// project id or number. func (r *ProjectsLocationsJobsService) List(parent string) *ProjectsLocationsJobsListCall { c := &ProjectsLocationsJobsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -4056,7 +4103,7 @@ func (c *ProjectsLocationsJobsListCall) Do(opts ...googleapi.CallOption) (*Googl } return ret, nil // { - // "description": "List Jobs.", + // "description": "Lists Jobs.", // "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/jobs", // "httpMethod": "GET", // "id": "run.projects.locations.jobs.list", @@ -4076,7 +4123,7 @@ func (c *ProjectsLocationsJobsListCall) Do(opts ...googleapi.CallOption) (*Googl // "type": "string" // }, // "parent": { - // "description": "Required. The location and project to list resources on. Format: projects/{project}/locations/{location}", + // "description": "Required. The location and project to list resources on. Format: projects/{project}/locations/{location}, where {project} can be project id or number.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+$", // "required": true, @@ -4304,7 +4351,8 @@ type ProjectsLocationsJobsRunCall struct { // Run: Triggers creation of a new Execution of this Job. // // - name: The full name of the Job. Format: -// projects/{project}/locations/{location}/jobs/{job}. +// projects/{project}/locations/{location}/jobs/{job}, where {project} +// can be project id or number. func (r *ProjectsLocationsJobsService) Run(name string, googlecloudrunv2runjobrequest *GoogleCloudRunV2RunJobRequest) *ProjectsLocationsJobsRunCall { c := &ProjectsLocationsJobsRunCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -4412,7 +4460,7 @@ func (c *ProjectsLocationsJobsRunCall) Do(opts ...googleapi.CallOption) (*Google // ], // "parameters": { // "name": { - // "description": "Required. The full name of the Job. Format: projects/{project}/locations/{location}/jobs/{job}", + // "description": "Required. The full name of the Job. Format: projects/{project}/locations/{location}/jobs/{job}, where {project} can be project id or number.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$", // "required": true, @@ -4737,11 +4785,11 @@ type ProjectsLocationsJobsExecutionsDeleteCall struct { header_ http.Header } -// Delete: Delete an Execution. +// Delete: Deletes an Execution. // // - name: The name of the Execution to delete. Format: // projects/{project}/locations/{location}/jobs/{job}/executions/{execu -// tion}. +// tion}, where {project} can be project id or number. func (r *ProjectsLocationsJobsExecutionsService) Delete(name string) *ProjectsLocationsJobsExecutionsDeleteCall { c := &ProjectsLocationsJobsExecutionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -4850,7 +4898,7 @@ func (c *ProjectsLocationsJobsExecutionsDeleteCall) Do(opts ...googleapi.CallOpt } return ret, nil // { - // "description": "Delete an Execution.", + // "description": "Deletes an Execution.", // "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}/executions/{executionsId}", // "httpMethod": "DELETE", // "id": "run.projects.locations.jobs.executions.delete", @@ -4864,7 +4912,7 @@ func (c *ProjectsLocationsJobsExecutionsDeleteCall) Do(opts ...googleapi.CallOpt // "type": "string" // }, // "name": { - // "description": "Required. The name of the Execution to delete. Format: projects/{project}/locations/{location}/jobs/{job}/executions/{execution}", + // "description": "Required. The name of the Execution to delete. Format: projects/{project}/locations/{location}/jobs/{job}/executions/{execution}, where {project} can be project id or number.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+/executions/[^/]+$", // "required": true, @@ -4898,11 +4946,11 @@ type ProjectsLocationsJobsExecutionsGetCall struct { header_ http.Header } -// Get: Gets information about a Execution. +// Get: Gets information about an Execution. // // - name: The full name of the Execution. Format: // projects/{project}/locations/{location}/jobs/{job}/executions/{execu -// tion}. +// tion}, where {project} can be project id or number. func (r *ProjectsLocationsJobsExecutionsService) Get(name string) *ProjectsLocationsJobsExecutionsGetCall { c := &ProjectsLocationsJobsExecutionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -5008,7 +5056,7 @@ func (c *ProjectsLocationsJobsExecutionsGetCall) Do(opts ...googleapi.CallOption } return ret, nil // { - // "description": "Gets information about a Execution.", + // "description": "Gets information about an Execution.", // "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}/executions/{executionsId}", // "httpMethod": "GET", // "id": "run.projects.locations.jobs.executions.get", @@ -5017,7 +5065,7 @@ func (c *ProjectsLocationsJobsExecutionsGetCall) Do(opts ...googleapi.CallOption // ], // "parameters": { // "name": { - // "description": "Required. The full name of the Execution. Format: projects/{project}/locations/{location}/jobs/{job}/executions/{execution}", + // "description": "Required. The full name of the Execution. Format: projects/{project}/locations/{location}/jobs/{job}/executions/{execution}, where {project} can be project id or number.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+/executions/[^/]+$", // "required": true, @@ -5046,11 +5094,12 @@ type ProjectsLocationsJobsExecutionsListCall struct { header_ http.Header } -// List: List Executions from a Job. +// List: Lists Executions from a Job. // // - parent: The Execution from which the Executions should be listed. // To list all Executions across Jobs, use "-" instead of Job name. -// Format: projects/{project}/locations/{location}/jobs/{job}. +// Format: projects/{project}/locations/{location}/jobs/{job}, where +// {project} can be project id or number. func (r *ProjectsLocationsJobsExecutionsService) List(parent string) *ProjectsLocationsJobsExecutionsListCall { c := &ProjectsLocationsJobsExecutionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -5179,7 +5228,7 @@ func (c *ProjectsLocationsJobsExecutionsListCall) Do(opts ...googleapi.CallOptio } return ret, nil // { - // "description": "List Executions from a Job.", + // "description": "Lists Executions from a Job.", // "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}/executions", // "httpMethod": "GET", // "id": "run.projects.locations.jobs.executions.list", @@ -5199,7 +5248,7 @@ func (c *ProjectsLocationsJobsExecutionsListCall) Do(opts ...googleapi.CallOptio // "type": "string" // }, // "parent": { - // "description": "Required. The Execution from which the Executions should be listed. To list all Executions across Jobs, use \"-\" instead of Job name. Format: projects/{project}/locations/{location}/jobs/{job}", + // "description": "Required. The Execution from which the Executions should be listed. To list all Executions across Jobs, use \"-\" instead of Job name. Format: projects/{project}/locations/{location}/jobs/{job}, where {project} can be project id or number.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$", // "required": true, @@ -5402,7 +5451,7 @@ type ProjectsLocationsJobsExecutionsTasksListCall struct { header_ http.Header } -// List: List Tasks from an Execution of a Job. +// List: Lists Tasks from an Execution of a Job. // // - parent: The Execution from which the Tasks should be listed. To // list all Tasks across Executions of a Job, use "-" instead of @@ -5538,7 +5587,7 @@ func (c *ProjectsLocationsJobsExecutionsTasksListCall) Do(opts ...googleapi.Call } return ret, nil // { - // "description": "List Tasks from an Execution of a Job.", + // "description": "Lists Tasks from an Execution of a Job.", // "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}/executions/{executionsId}/tasks", // "httpMethod": "GET", // "id": "run.projects.locations.jobs.executions.tasks.list", @@ -6119,8 +6168,9 @@ type ProjectsLocationsServicesCreateCall struct { // Create: Creates a new Service in a given project and location. // // - parent: The location and project in which this service should be -// created. Format: projects/{project}/locations/{location} Only -// lowercase characters, digits, and hyphens. +// created. Format: projects/{project}/locations/{location}, where +// {project} can be project id or number. Only lowercase characters, +// digits, and hyphens. func (r *ProjectsLocationsServicesService) Create(parent string, googlecloudrunv2service *GoogleCloudRunV2Service) *ProjectsLocationsServicesCreateCall { c := &ProjectsLocationsServicesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -6129,9 +6179,9 @@ func (r *ProjectsLocationsServicesService) Create(parent string, googlecloudrunv } // ServiceId sets the optional parameter "serviceId": Required. The -// unique identifier for the Service. It must begin with letter, and may -// not end with hyphen; must contain fewer than 50 characters. The name -// of the service becomes {parent}/services/{service_id}. +// unique identifier for the Service. It must begin with letter, and +// cannot end with hyphen; must contain fewer than 50 characters. The +// name of the service becomes {parent}/services/{service_id}. func (c *ProjectsLocationsServicesCreateCall) ServiceId(serviceId string) *ProjectsLocationsServicesCreateCall { c.urlParams_.Set("serviceId", serviceId) return c @@ -6245,14 +6295,14 @@ func (c *ProjectsLocationsServicesCreateCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "parent": { - // "description": "Required. The location and project in which this service should be created. Format: projects/{project}/locations/{location} Only lowercase characters, digits, and hyphens.", + // "description": "Required. The location and project in which this service should be created. Format: projects/{project}/locations/{location}, where {project} can be project id or number. Only lowercase characters, digits, and hyphens.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+$", // "required": true, // "type": "string" // }, // "serviceId": { - // "description": "Required. The unique identifier for the Service. It must begin with letter, and may not end with hyphen; must contain fewer than 50 characters. The name of the service becomes {parent}/services/{service_id}.", + // "description": "Required. The unique identifier for the Service. It must begin with letter, and cannot end with hyphen; must contain fewer than 50 characters. The name of the service becomes {parent}/services/{service_id}.", // "location": "query", // "type": "string" // }, @@ -6290,7 +6340,8 @@ type ProjectsLocationsServicesDeleteCall struct { // serving traffic and will delete all revisions. // // - name: The full name of the Service. Format: -// projects/{project}/locations/{location}/services/{service}. +// projects/{project}/locations/{location}/services/{service}, where +// {project} can be project id or number. func (r *ProjectsLocationsServicesService) Delete(name string) *ProjectsLocationsServicesDeleteCall { c := &ProjectsLocationsServicesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -6413,7 +6464,7 @@ func (c *ProjectsLocationsServicesDeleteCall) Do(opts ...googleapi.CallOption) ( // "type": "string" // }, // "name": { - // "description": "Required. The full name of the Service. Format: projects/{project}/locations/{location}/services/{service}", + // "description": "Required. The full name of the Service. Format: projects/{project}/locations/{location}/services/{service}, where {project} can be project id or number.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/services/[^/]+$", // "required": true, @@ -6450,7 +6501,8 @@ type ProjectsLocationsServicesGetCall struct { // Get: Gets information about a Service. // // - name: The full name of the Service. Format: -// projects/{project}/locations/{location}/services/{service}. +// projects/{project}/locations/{location}/services/{service}, where +// {project} can be project id or number. func (r *ProjectsLocationsServicesService) Get(name string) *ProjectsLocationsServicesGetCall { c := &ProjectsLocationsServicesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -6565,7 +6617,7 @@ func (c *ProjectsLocationsServicesGetCall) Do(opts ...googleapi.CallOption) (*Go // ], // "parameters": { // "name": { - // "description": "Required. The full name of the Service. Format: projects/{project}/locations/{location}/services/{service}", + // "description": "Required. The full name of the Service. Format: projects/{project}/locations/{location}/services/{service}, where {project} can be project id or number.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/services/[^/]+$", // "required": true, @@ -6594,7 +6646,7 @@ type ProjectsLocationsServicesGetIamPolicyCall struct { header_ http.Header } -// GetIamPolicy: Get the IAM Access Control policy currently in effect +// GetIamPolicy: Gets the IAM Access Control policy currently in effect // for the given Cloud Run Service. This result does not include any // inherited policies. // @@ -6725,7 +6777,7 @@ func (c *ProjectsLocationsServicesGetIamPolicyCall) Do(opts ...googleapi.CallOpt } return ret, nil // { - // "description": "Get the IAM Access Control policy currently in effect for the given Cloud Run Service. This result does not include any inherited policies.", + // "description": "Gets the IAM Access Control policy currently in effect for the given Cloud Run Service. This result does not include any inherited policies.", // "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/services/{servicesId}:getIamPolicy", // "httpMethod": "GET", // "id": "run.projects.locations.services.getIamPolicy", @@ -6769,11 +6821,12 @@ type ProjectsLocationsServicesListCall struct { header_ http.Header } -// List: List Services. +// List: Lists Services. // // - parent: The location and project to list resources on. Location -// must be a valid GCP region, and may not be the "-" wildcard. -// Format: projects/{project}/locations/{location}. +// must be a valid GCP region, and cannot be the "-" wildcard. Format: +// projects/{project}/locations/{location}, where {project} can be +// project id or number. func (r *ProjectsLocationsServicesService) List(parent string) *ProjectsLocationsServicesListCall { c := &ProjectsLocationsServicesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -6902,7 +6955,7 @@ func (c *ProjectsLocationsServicesListCall) Do(opts ...googleapi.CallOption) (*G } return ret, nil // { - // "description": "List Services.", + // "description": "Lists Services.", // "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/services", // "httpMethod": "GET", // "id": "run.projects.locations.services.list", @@ -6922,7 +6975,7 @@ func (c *ProjectsLocationsServicesListCall) Do(opts ...googleapi.CallOption) (*G // "type": "string" // }, // "parent": { - // "description": "Required. The location and project to list resources on. Location must be a valid GCP region, and may not be the \"-\" wildcard. Format: projects/{project}/locations/{location}", + // "description": "Required. The location and project to list resources on. Location must be a valid GCP region, and cannot be the \"-\" wildcard. Format: projects/{project}/locations/{location}, where {project} can be project id or number.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+$", // "required": true, @@ -7443,7 +7496,7 @@ type ProjectsLocationsServicesRevisionsDeleteCall struct { header_ http.Header } -// Delete: Delete a Revision. +// Delete: Deletes a Revision. // // - name: The name of the Revision to delete. Format: // projects/{project}/locations/{location}/services/{service}/revisions @@ -7556,7 +7609,7 @@ func (c *ProjectsLocationsServicesRevisionsDeleteCall) Do(opts ...googleapi.Call } return ret, nil // { - // "description": "Delete a Revision.", + // "description": "Deletes a Revision.", // "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/services/{servicesId}/revisions/{revisionsId}", // "httpMethod": "DELETE", // "id": "run.projects.locations.services.revisions.delete", @@ -7752,7 +7805,7 @@ type ProjectsLocationsServicesRevisionsListCall struct { header_ http.Header } -// List: List Revisions from a given Service, or from a given location. +// List: Lists Revisions from a given Service, or from a given location. // // - parent: The Service from which the Revisions should be listed. To // list all Revisions across Services, use "-" instead of Service @@ -7886,7 +7939,7 @@ func (c *ProjectsLocationsServicesRevisionsListCall) Do(opts ...googleapi.CallOp } return ret, nil // { - // "description": "List Revisions from a given Service, or from a given location.", + // "description": "Lists Revisions from a given Service, or from a given location.", // "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/services/{servicesId}/revisions", // "httpMethod": "GET", // "id": "run.projects.locations.services.revisions.list", diff --git a/testing/v1/testing-api.json b/testing/v1/testing-api.json index c25f8c0c7dc..12b0a9b31ea 100644 --- a/testing/v1/testing-api.json +++ b/testing/v1/testing-api.json @@ -282,7 +282,7 @@ } } }, - "revision": "20221004", + "revision": "20221108", "rootUrl": "https://testing.googleapis.com/", "schemas": { "Account": { @@ -755,6 +755,13 @@ "format": "int32", "type": "integer" }, + "metadata": { + "description": "Meta-data tags defined in the manifest.", + "items": { + "$ref": "Metadata" + }, + "type": "array" + }, "minSdkVersion": { "description": "Minimum API level required for the application to run.", "format": "int32", @@ -769,6 +776,13 @@ "format": "int32", "type": "integer" }, + "usesFeature": { + "description": "Feature usage tags defined in the manifest.", + "items": { + "$ref": "UsesFeature" + }, + "type": "array" + }, "usesPermission": { "description": "Permissions declared to be used by the application", "items": { @@ -1420,6 +1434,21 @@ }, "type": "object" }, + "Metadata": { + "description": "A tag within a manifest. https://developer.android.com/guide/topics/manifest/meta-data-element.html", + "id": "Metadata", + "properties": { + "name": { + "description": "The android:name value", + "type": "string" + }, + "value": { + "description": "The android:value value", + "type": "string" + } + }, + "type": "object" + }, "NetworkConfiguration": { "id": "NetworkConfiguration", "properties": { @@ -2173,6 +2202,21 @@ }, "type": "object" }, + "UsesFeature": { + "description": "A tag within a manifest. https://developer.android.com/guide/topics/manifest/uses-feature-element.html", + "id": "UsesFeature", + "properties": { + "isRequired": { + "description": "The android:required value", + "type": "boolean" + }, + "name": { + "description": "The android:name value", + "type": "string" + } + }, + "type": "object" + }, "XcodeVersion": { "description": "An Xcode version that an iOS version is compatible with.", "id": "XcodeVersion", diff --git a/testing/v1/testing-gen.go b/testing/v1/testing-gen.go index 025dec2583e..bb1f6d8898a 100644 --- a/testing/v1/testing-gen.go +++ b/testing/v1/testing-gen.go @@ -846,6 +846,9 @@ type ApkManifest struct { // to run. MaxSdkVersion int64 `json:"maxSdkVersion,omitempty"` + // Metadata: Meta-data tags defined in the manifest. + Metadata []*Metadata `json:"metadata,omitempty"` + // MinSdkVersion: Minimum API level required for the application to run. MinSdkVersion int64 `json:"minSdkVersion,omitempty"` @@ -857,6 +860,9 @@ type ApkManifest struct { // designed to run. TargetSdkVersion int64 `json:"targetSdkVersion,omitempty"` + // UsesFeature: Feature usage tags defined in the manifest. + UsesFeature []*UsesFeature `json:"usesFeature,omitempty"` + // UsesPermission: Permissions declared to be used by the application UsesPermission []string `json:"usesPermission,omitempty"` @@ -2004,6 +2010,38 @@ func (s *ManualSharding) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Metadata: A tag within a manifest. +// https://developer.android.com/guide/topics/manifest/meta-data-element.html +type Metadata struct { + // Name: The android:name value + Name string `json:"name,omitempty"` + + // Value: The android:value value + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Name") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Metadata) MarshalJSON() ([]byte, error) { + type NoMethod Metadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type NetworkConfiguration struct { // DownRule: The emulation rule applying to the download traffic. DownRule *TrafficRule `json:"downRule,omitempty"` @@ -3235,6 +3273,38 @@ func (s *UniformSharding) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// UsesFeature: A tag within a manifest. +// https://developer.android.com/guide/topics/manifest/uses-feature-element.html +type UsesFeature struct { + // IsRequired: The android:required value + IsRequired bool `json:"isRequired,omitempty"` + + // Name: The android:name value + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IsRequired") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "IsRequired") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *UsesFeature) MarshalJSON() ([]byte, error) { + type NoMethod UsesFeature + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // XcodeVersion: An Xcode version that an iOS version is compatible // with. type XcodeVersion struct { diff --git a/tpu/v2alpha1/tpu-api.json b/tpu/v2alpha1/tpu-api.json index bd520560bf8..fc5aa77c54f 100644 --- a/tpu/v2alpha1/tpu-api.json +++ b/tpu/v2alpha1/tpu-api.json @@ -679,6 +679,139 @@ } } }, + "queuedResources": { + "methods": { + "create": { + "description": "Creates a QueuedResource TPU instance.", + "flatPath": "v2alpha1/projects/{projectsId}/locations/{locationsId}/queuedResources", + "httpMethod": "POST", + "id": "tpu.projects.locations.queuedResources.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "queuedResourceId": { + "description": "The unqualified resource name. Should follow the ^[A-Za-z0-9_.~+%-]+$ regex format.", + "location": "query", + "type": "string" + }, + "requestId": { + "description": "Idempotent request UUID.", + "location": "query", + "type": "string" + } + }, + "path": "v2alpha1/{+parent}/queuedResources", + "request": { + "$ref": "QueuedResource" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a QueuedResource TPU instance.", + "flatPath": "v2alpha1/projects/{projectsId}/locations/{locationsId}/queuedResources/{queuedResourcesId}", + "httpMethod": "DELETE", + "id": "tpu.projects.locations.queuedResources.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queuedResources/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Idempotent request UUID.", + "location": "query", + "type": "string" + } + }, + "path": "v2alpha1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a queued resource.", + "flatPath": "v2alpha1/projects/{projectsId}/locations/{locationsId}/queuedResources/{queuedResourcesId}", + "httpMethod": "GET", + "id": "tpu.projects.locations.queuedResources.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/queuedResources/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2alpha1/{+name}", + "response": { + "$ref": "QueuedResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists queued resources.", + "flatPath": "v2alpha1/projects/{projectsId}/locations/{locationsId}/queuedResources", + "httpMethod": "GET", + "id": "tpu.projects.locations.queuedResources.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of items to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The next_page_token value returned from a previous List request, if any.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2alpha1/{+parent}/queuedResources", + "response": { + "$ref": "ListQueuedResourcesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "runtimeVersions": { "methods": { "get": { @@ -759,7 +892,7 @@ } } }, - "revision": "20221025", + "revision": "20221107", "rootUrl": "https://tpu.googleapis.com/", "schemas": { "AcceleratorType": { @@ -777,6 +910,12 @@ }, "type": "object" }, + "AcceptedData": { + "description": "Further data for the accepted state.", + "id": "AcceptedData", + "properties": {}, + "type": "object" + }, "AccessConfig": { "description": "An access config attached to the TPU worker.", "id": "AccessConfig", @@ -789,6 +928,12 @@ }, "type": "object" }, + "ActiveData": { + "description": "Further data for the active state.", + "id": "ActiveData", + "properties": {}, + "type": "object" + }, "AttachedDisk": { "description": "A node-attached disk resource. Next ID: 8;", "id": "AttachedDisk", @@ -814,12 +959,41 @@ }, "type": "object" }, + "BestEffort": { + "description": "BestEffort tier definition.", + "id": "BestEffort", + "properties": {}, + "type": "object" + }, + "CreatingData": { + "description": "Further data for the creating state.", + "id": "CreatingData", + "properties": {}, + "type": "object" + }, + "DeletingData": { + "description": "Further data for the deleting state.", + "id": "DeletingData", + "properties": {}, + "type": "object" + }, "Empty": { "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }", "id": "Empty", "properties": {}, "type": "object" }, + "FailedData": { + "description": "Further data for the failed state.", + "id": "FailedData", + "properties": { + "error": { + "$ref": "Status", + "description": "The error that caused the queued resource to enter the FAILED state." + } + }, + "type": "object" + }, "GenerateServiceIdentityRequest": { "description": "Request for GenerateServiceIdentity.", "id": "GenerateServiceIdentityRequest", @@ -869,6 +1043,22 @@ }, "type": "object" }, + "Guaranteed": { + "description": "Guaranteed tier definition.", + "id": "Guaranteed", + "properties": { + "minDuration": { + "description": "Optional. Defines the minimum duration of the guarantee. If specified, the requested resources will only be provisioned if they can be allocated for at least the given duration.", + "format": "google-duration", + "type": "string" + }, + "reserved": { + "description": "Optional. Specifies the request should be scheduled on reserved capacity.", + "type": "boolean" + } + }, + "type": "object" + }, "GuestAttributes": { "description": "A guest attributes.", "id": "GuestAttributes", @@ -917,6 +1107,23 @@ }, "type": "object" }, + "Interval": { + "description": "Represents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive). The start must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). When both start and end are unspecified, the interval matches any time.", + "id": "Interval", + "properties": { + "endTime": { + "description": "Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, "ListAcceleratorTypesResponse": { "description": "Response for ListAcceleratorTypes.", "id": "ListAcceleratorTypesResponse", @@ -1003,6 +1210,31 @@ }, "type": "object" }, + "ListQueuedResourcesResponse": { + "description": "Response for ListQueuedResources.", + "id": "ListQueuedResourcesResponse", + "properties": { + "nextPageToken": { + "description": "The next page token or empty if none.", + "type": "string" + }, + "queuedResources": { + "description": "The listed queued resources.", + "items": { + "$ref": "QueuedResource" + }, + "type": "array" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ListRuntimeVersionsResponse": { "description": "Response for ListRuntimeVersions.", "id": "ListRuntimeVersionsResponse", @@ -1211,6 +1443,11 @@ "readOnly": true, "type": "array" }, + "queuedResource": { + "description": "Output only. The qualified name of the QueuedResource that requested this Node.", + "readOnly": true, + "type": "string" + }, "runtimeVersion": { "description": "Required. The runtime version running in the Node.", "type": "string" @@ -1284,6 +1521,25 @@ }, "type": "object" }, + "NodeSpec": { + "description": "Details of the TPU node(s) being requested. Users can request either a single node or multiple nodes. NodeSpec provides the specification for node(s) to be created.", + "id": "NodeSpec", + "properties": { + "node": { + "$ref": "Node", + "description": "Required. The node." + }, + "nodeId": { + "description": "The unqualified resource name. Should follow the ^[A-Za-z0-9_.~+%-]+$ regex format. This is only specified when requesting a single node. In case of multi-node requests, multi_node_params must be populated instead. It's an error to specify both node_id and multi_node_params.", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource name.", + "type": "string" + } + }, + "type": "object" + }, "Operation": { "description": "This resource represents a long-running operation that is the result of a network API call.", "id": "Operation", @@ -1356,6 +1612,141 @@ }, "type": "object" }, + "ProvisioningData": { + "description": "Further data for the provisioning state.", + "id": "ProvisioningData", + "properties": {}, + "type": "object" + }, + "QueuedResource": { + "description": "A QueuedResource represents a request for resources that will be placed in a queue and fulfilled when the necessary resources are available.", + "id": "QueuedResource", + "properties": { + "bestEffort": { + "$ref": "BestEffort", + "description": "The BestEffort tier." + }, + "guaranteed": { + "$ref": "Guaranteed", + "description": "The Guaranteed tier" + }, + "name": { + "description": "Output only. Immutable. The name of the QueuedResource.", + "readOnly": true, + "type": "string" + }, + "queueingPolicy": { + "$ref": "QueueingPolicy", + "description": "The queueing policy of the QueuedRequest." + }, + "state": { + "$ref": "QueuedResourceState", + "description": "Output only. State of the QueuedResource request", + "readOnly": true + }, + "tpu": { + "$ref": "Tpu", + "description": "Defines a TPU resource." + } + }, + "type": "object" + }, + "QueuedResourceState": { + "description": "QueuedResourceState defines the details of the QueuedResource request.", + "id": "QueuedResourceState", + "properties": { + "acceptedData": { + "$ref": "AcceptedData", + "description": "Further data for the accepted state." + }, + "activeData": { + "$ref": "ActiveData", + "description": "Further data for the active state." + }, + "creatingData": { + "$ref": "CreatingData", + "description": "Further data for the creating state." + }, + "deletingData": { + "$ref": "DeletingData", + "description": "Further data for the deleting state." + }, + "failedData": { + "$ref": "FailedData", + "description": "Further data for the failed state." + }, + "provisioningData": { + "$ref": "ProvisioningData", + "description": "Further data for the provisioning state." + }, + "state": { + "description": "State of the QueuedResource request.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "ACCEPTED", + "PROVISIONING", + "FAILED", + "DELETING", + "ACTIVE", + "SUSPENDING", + "SUSPENDED" + ], + "enumDescriptions": [ + "State of the QueuedResource request is not known/set.", + "The QueuedResource request has been received. We’re still working on determining if we will be able to honor this request.", + "The QueuedResource request has passed initial validation/admission control and has been persisted in the queue.", + "The QueuedResource request has been selected. The associated resources are currently being provisioned (or very soon will begin provisioning).", + "The request could not be completed. This may be due to some late-discovered problem with the request itself, or due to unavailability of resources within the constraints of the request (e.g., the ‘valid until’ start timing constraint expired).", + "The QueuedResource is being deleted.", + "The resources specified in the QueuedResource request have been provisioned and are ready for use by the end-user/consumer.", + "The resources specified in the QueuedResource request are being deleted. This may have been initiated by the user, or the Cloud TPU service. Inspect the state data for more details.", + "The resources specified in the QueuedResource request have been deleted." + ], + "type": "string" + }, + "suspendedData": { + "$ref": "SuspendedData", + "description": "Further data for the suspended state." + }, + "suspendingData": { + "$ref": "SuspendingData", + "description": "Further data for the suspending state." + } + }, + "type": "object" + }, + "QueueingPolicy": { + "description": "Defines the policy of the QueuedRequest.", + "id": "QueueingPolicy", + "properties": { + "validAfterDuration": { + "description": "A relative time after which resources may be created.", + "format": "google-duration", + "type": "string" + }, + "validAfterTime": { + "description": "An absolute time at which resources may be created.", + "format": "google-datetime", + "type": "string" + }, + "validInterval": { + "$ref": "Interval", + "description": "An absolute time interval within which resources may be created." + }, + "validUntilDuration": { + "description": "A relative time after which resources should not be created. If the request cannot be fulfilled by this time the request will be failed.", + "format": "google-duration", + "type": "string" + }, + "validUntilTime": { + "description": "An absolute time after which resources should not be created. If the request cannot be fulfilled by this time the request will be failed.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, "RuntimeVersion": { "description": "A runtime version that a Node can be configured with.", "id": "RuntimeVersion", @@ -1479,6 +1870,18 @@ "properties": {}, "type": "object" }, + "SuspendedData": { + "description": "Further data for the suspended state.", + "id": "SuspendedData", + "properties": {}, + "type": "object" + }, + "SuspendingData": { + "description": "Further data for the suspending state.", + "id": "SuspendingData", + "properties": {}, + "type": "object" + }, "Symptom": { "description": "A Symptom instance.", "id": "Symptom", @@ -1520,6 +1923,20 @@ } }, "type": "object" + }, + "Tpu": { + "description": "Details of the TPU resource(s) being requested.", + "id": "Tpu", + "properties": { + "nodeSpec": { + "description": "The TPU node(s) being requested.", + "items": { + "$ref": "NodeSpec" + }, + "type": "array" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/tpu/v2alpha1/tpu-gen.go b/tpu/v2alpha1/tpu-gen.go index fcd19354dc7..f1fb78604e0 100644 --- a/tpu/v2alpha1/tpu-gen.go +++ b/tpu/v2alpha1/tpu-gen.go @@ -154,6 +154,7 @@ func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { rs.AcceleratorTypes = NewProjectsLocationsAcceleratorTypesService(s) rs.Nodes = NewProjectsLocationsNodesService(s) rs.Operations = NewProjectsLocationsOperationsService(s) + rs.QueuedResources = NewProjectsLocationsQueuedResourcesService(s) rs.RuntimeVersions = NewProjectsLocationsRuntimeVersionsService(s) return rs } @@ -167,6 +168,8 @@ type ProjectsLocationsService struct { Operations *ProjectsLocationsOperationsService + QueuedResources *ProjectsLocationsQueuedResourcesService + RuntimeVersions *ProjectsLocationsRuntimeVersionsService } @@ -197,6 +200,15 @@ type ProjectsLocationsOperationsService struct { s *Service } +func NewProjectsLocationsQueuedResourcesService(s *Service) *ProjectsLocationsQueuedResourcesService { + rs := &ProjectsLocationsQueuedResourcesService{s: s} + return rs +} + +type ProjectsLocationsQueuedResourcesService struct { + s *Service +} + func NewProjectsLocationsRuntimeVersionsService(s *Service) *ProjectsLocationsRuntimeVersionsService { rs := &ProjectsLocationsRuntimeVersionsService{s: s} return rs @@ -242,6 +254,10 @@ func (s *AcceleratorType) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// AcceptedData: Further data for the accepted state. +type AcceptedData struct { +} + // AccessConfig: An access config attached to the TPU worker. type AccessConfig struct { // ExternalIp: Output only. An external IP address associated with the @@ -271,6 +287,10 @@ func (s *AccessConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ActiveData: Further data for the active state. +type ActiveData struct { +} + // AttachedDisk: A node-attached disk resource. Next ID: 8; type AttachedDisk struct { // Mode: The mode in which to attach this disk. If not specified, the @@ -311,6 +331,18 @@ func (s *AttachedDisk) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// BestEffort: BestEffort tier definition. +type BestEffort struct { +} + +// CreatingData: Further data for the creating state. +type CreatingData struct { +} + +// DeletingData: Further data for the deleting state. +type DeletingData struct { +} + // Empty: A generic empty message that you can re-use to avoid defining // duplicated empty messages in your APIs. A typical example is to use // it as the request or the response type of an API method. For @@ -322,6 +354,35 @@ type Empty struct { googleapi.ServerResponse `json:"-"` } +// FailedData: Further data for the failed state. +type FailedData struct { + // Error: The error that caused the queued resource to enter the FAILED + // state. + Error *Status `json:"error,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Error") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Error") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FailedData) MarshalJSON() ([]byte, error) { + type NoMethod FailedData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GenerateServiceIdentityRequest: Request for GenerateServiceIdentity. type GenerateServiceIdentityRequest struct { } @@ -424,6 +485,40 @@ func (s *GetGuestAttributesResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Guaranteed: Guaranteed tier definition. +type Guaranteed struct { + // MinDuration: Optional. Defines the minimum duration of the guarantee. + // If specified, the requested resources will only be provisioned if + // they can be allocated for at least the given duration. + MinDuration string `json:"minDuration,omitempty"` + + // Reserved: Optional. Specifies the request should be scheduled on + // reserved capacity. + Reserved bool `json:"reserved,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MinDuration") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MinDuration") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Guaranteed) MarshalJSON() ([]byte, error) { + type NoMethod Guaranteed + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GuestAttributes: A guest attributes. type GuestAttributes struct { // QueryPath: The path to be queried. This can be the default namespace @@ -519,6 +614,44 @@ func (s *GuestAttributesValue) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Interval: Represents a time interval, encoded as a Timestamp start +// (inclusive) and a Timestamp end (exclusive). The start must be less +// than or equal to the end. When the start equals the end, the interval +// is empty (matches no time). When both start and end are unspecified, +// the interval matches any time. +type Interval struct { + // EndTime: Optional. Exclusive end of the interval. If specified, a + // Timestamp matching this interval will have to be before the end. + EndTime string `json:"endTime,omitempty"` + + // StartTime: Optional. Inclusive start of the interval. If specified, a + // Timestamp matching this interval will have to be the same or after + // the start. + StartTime string `json:"startTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EndTime") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EndTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Interval) MarshalJSON() ([]byte, error) { + type NoMethod Interval + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ListAcceleratorTypesResponse: Response for ListAcceleratorTypes. type ListAcceleratorTypesResponse struct { // AcceleratorTypes: The listed nodes. @@ -670,6 +803,44 @@ func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ListQueuedResourcesResponse: Response for ListQueuedResources. +type ListQueuedResourcesResponse struct { + // NextPageToken: The next page token or empty if none. + NextPageToken string `json:"nextPageToken,omitempty"` + + // QueuedResources: The listed queued resources. + QueuedResources []*QueuedResource `json:"queuedResources,omitempty"` + + // Unreachable: Locations that could not be reached. + Unreachable []string `json:"unreachable,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NextPageToken") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListQueuedResourcesResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListQueuedResourcesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ListRuntimeVersionsResponse: Response for ListRuntimeVersions. type ListRuntimeVersionsResponse struct { // NextPageToken: The next page token or empty if none. @@ -910,6 +1081,10 @@ type Node struct { // clients of the node reach out to the 0th entry in this map first. NetworkEndpoints []*NetworkEndpoint `json:"networkEndpoints,omitempty"` + // QueuedResource: Output only. The qualified name of the QueuedResource + // that requested this Node. + QueuedResource string `json:"queuedResource,omitempty"` + // RuntimeVersion: Required. The runtime version running in the Node. RuntimeVersion string `json:"runtimeVersion,omitempty"` @@ -983,6 +1158,46 @@ func (s *Node) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// NodeSpec: Details of the TPU node(s) being requested. Users can +// request either a single node or multiple nodes. NodeSpec provides the +// specification for node(s) to be created. +type NodeSpec struct { + // Node: Required. The node. + Node *Node `json:"node,omitempty"` + + // NodeId: The unqualified resource name. Should follow the + // ^[A-Za-z0-9_.~+%-]+$ regex format. This is only specified when + // requesting a single node. In case of multi-node requests, + // multi_node_params must be populated instead. It's an error to specify + // both node_id and multi_node_params. + NodeId string `json:"nodeId,omitempty"` + + // Parent: Required. The parent resource name. + Parent string `json:"parent,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Node") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Node") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *NodeSpec) MarshalJSON() ([]byte, error) { + type NoMethod NodeSpec + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Operation: This resource represents a long-running operation that is // the result of a network API call. type Operation struct { @@ -1093,6 +1308,183 @@ func (s *OperationMetadata) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ProvisioningData: Further data for the provisioning state. +type ProvisioningData struct { +} + +// QueuedResource: A QueuedResource represents a request for resources +// that will be placed in a queue and fulfilled when the necessary +// resources are available. +type QueuedResource struct { + // BestEffort: The BestEffort tier. + BestEffort *BestEffort `json:"bestEffort,omitempty"` + + // Guaranteed: The Guaranteed tier + Guaranteed *Guaranteed `json:"guaranteed,omitempty"` + + // Name: Output only. Immutable. The name of the QueuedResource. + Name string `json:"name,omitempty"` + + // QueueingPolicy: The queueing policy of the QueuedRequest. + QueueingPolicy *QueueingPolicy `json:"queueingPolicy,omitempty"` + + // State: Output only. State of the QueuedResource request + State *QueuedResourceState `json:"state,omitempty"` + + // Tpu: Defines a TPU resource. + Tpu *Tpu `json:"tpu,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "BestEffort") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BestEffort") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *QueuedResource) MarshalJSON() ([]byte, error) { + type NoMethod QueuedResource + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// QueuedResourceState: QueuedResourceState defines the details of the +// QueuedResource request. +type QueuedResourceState struct { + // AcceptedData: Further data for the accepted state. + AcceptedData *AcceptedData `json:"acceptedData,omitempty"` + + // ActiveData: Further data for the active state. + ActiveData *ActiveData `json:"activeData,omitempty"` + + // CreatingData: Further data for the creating state. + CreatingData *CreatingData `json:"creatingData,omitempty"` + + // DeletingData: Further data for the deleting state. + DeletingData *DeletingData `json:"deletingData,omitempty"` + + // FailedData: Further data for the failed state. + FailedData *FailedData `json:"failedData,omitempty"` + + // ProvisioningData: Further data for the provisioning state. + ProvisioningData *ProvisioningData `json:"provisioningData,omitempty"` + + // State: State of the QueuedResource request. + // + // Possible values: + // "STATE_UNSPECIFIED" - State of the QueuedResource request is not + // known/set. + // "CREATING" - The QueuedResource request has been received. We’re + // still working on determining if we will be able to honor this + // request. + // "ACCEPTED" - The QueuedResource request has passed initial + // validation/admission control and has been persisted in the queue. + // "PROVISIONING" - The QueuedResource request has been selected. The + // associated resources are currently being provisioned (or very soon + // will begin provisioning). + // "FAILED" - The request could not be completed. This may be due to + // some late-discovered problem with the request itself, or due to + // unavailability of resources within the constraints of the request + // (e.g., the ‘valid until’ start timing constraint expired). + // "DELETING" - The QueuedResource is being deleted. + // "ACTIVE" - The resources specified in the QueuedResource request + // have been provisioned and are ready for use by the end-user/consumer. + // "SUSPENDING" - The resources specified in the QueuedResource + // request are being deleted. This may have been initiated by the user, + // or the Cloud TPU service. Inspect the state data for more details. + // "SUSPENDED" - The resources specified in the QueuedResource request + // have been deleted. + State string `json:"state,omitempty"` + + // SuspendedData: Further data for the suspended state. + SuspendedData *SuspendedData `json:"suspendedData,omitempty"` + + // SuspendingData: Further data for the suspending state. + SuspendingData *SuspendingData `json:"suspendingData,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AcceptedData") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AcceptedData") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *QueuedResourceState) MarshalJSON() ([]byte, error) { + type NoMethod QueuedResourceState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// QueueingPolicy: Defines the policy of the QueuedRequest. +type QueueingPolicy struct { + // ValidAfterDuration: A relative time after which resources may be + // created. + ValidAfterDuration string `json:"validAfterDuration,omitempty"` + + // ValidAfterTime: An absolute time at which resources may be created. + ValidAfterTime string `json:"validAfterTime,omitempty"` + + // ValidInterval: An absolute time interval within which resources may + // be created. + ValidInterval *Interval `json:"validInterval,omitempty"` + + // ValidUntilDuration: A relative time after which resources should not + // be created. If the request cannot be fulfilled by this time the + // request will be failed. + ValidUntilDuration string `json:"validUntilDuration,omitempty"` + + // ValidUntilTime: An absolute time after which resources should not be + // created. If the request cannot be fulfilled by this time the request + // will be failed. + ValidUntilTime string `json:"validUntilTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ValidAfterDuration") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ValidAfterDuration") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *QueueingPolicy) MarshalJSON() ([]byte, error) { + type NoMethod QueueingPolicy + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // RuntimeVersion: A runtime version that a Node can be configured with. type RuntimeVersion struct { // Name: The resource name. @@ -1335,6 +1727,14 @@ func (s *Status) MarshalJSON() ([]byte, error) { type StopNodeRequest struct { } +// SuspendedData: Further data for the suspended state. +type SuspendedData struct { +} + +// SuspendingData: Further data for the suspending state. +type SuspendingData struct { +} + // Symptom: A Symptom instance. type Symptom struct { // CreateTime: Timestamp when the Symptom is created. @@ -1384,6 +1784,34 @@ func (s *Symptom) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Tpu: Details of the TPU resource(s) being requested. +type Tpu struct { + // NodeSpec: The TPU node(s) being requested. + NodeSpec []*NodeSpec `json:"nodeSpec,omitempty"` + + // ForceSendFields is a list of field names (e.g. "NodeSpec") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NodeSpec") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Tpu) MarshalJSON() ([]byte, error) { + type NoMethod Tpu + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // method id "tpu.projects.locations.generateServiceIdentity": type ProjectsLocationsGenerateServiceIdentityCall struct { @@ -4252,6 +4680,655 @@ func (c *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func( } } +// method id "tpu.projects.locations.queuedResources.create": + +type ProjectsLocationsQueuedResourcesCreateCall struct { + s *Service + parent string + queuedresource *QueuedResource + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a QueuedResource TPU instance. +// +// - parent: The parent resource name. +func (r *ProjectsLocationsQueuedResourcesService) Create(parent string, queuedresource *QueuedResource) *ProjectsLocationsQueuedResourcesCreateCall { + c := &ProjectsLocationsQueuedResourcesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.queuedresource = queuedresource + return c +} + +// QueuedResourceId sets the optional parameter "queuedResourceId": The +// unqualified resource name. Should follow the ^[A-Za-z0-9_.~+%-]+$ +// regex format. +func (c *ProjectsLocationsQueuedResourcesCreateCall) QueuedResourceId(queuedResourceId string) *ProjectsLocationsQueuedResourcesCreateCall { + c.urlParams_.Set("queuedResourceId", queuedResourceId) + return c +} + +// RequestId sets the optional parameter "requestId": Idempotent request +// UUID. +func (c *ProjectsLocationsQueuedResourcesCreateCall) RequestId(requestId string) *ProjectsLocationsQueuedResourcesCreateCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsQueuedResourcesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsQueuedResourcesCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsQueuedResourcesCreateCall) Context(ctx context.Context) *ProjectsLocationsQueuedResourcesCreateCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsQueuedResourcesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsQueuedResourcesCreateCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.queuedresource) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha1/{+parent}/queuedResources") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "tpu.projects.locations.queuedResources.create" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsQueuedResourcesCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a QueuedResource TPU instance.", + // "flatPath": "v2alpha1/projects/{projectsId}/locations/{locationsId}/queuedResources", + // "httpMethod": "POST", + // "id": "tpu.projects.locations.queuedResources.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The parent resource name.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "queuedResourceId": { + // "description": "The unqualified resource name. Should follow the ^[A-Za-z0-9_.~+%-]+$ regex format.", + // "location": "query", + // "type": "string" + // }, + // "requestId": { + // "description": "Idempotent request UUID.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2alpha1/{+parent}/queuedResources", + // "request": { + // "$ref": "QueuedResource" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "tpu.projects.locations.queuedResources.delete": + +type ProjectsLocationsQueuedResourcesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a QueuedResource TPU instance. +// +// - name: The resource name. +func (r *ProjectsLocationsQueuedResourcesService) Delete(name string) *ProjectsLocationsQueuedResourcesDeleteCall { + c := &ProjectsLocationsQueuedResourcesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// RequestId sets the optional parameter "requestId": Idempotent request +// UUID. +func (c *ProjectsLocationsQueuedResourcesDeleteCall) RequestId(requestId string) *ProjectsLocationsQueuedResourcesDeleteCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsQueuedResourcesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsQueuedResourcesDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsQueuedResourcesDeleteCall) Context(ctx context.Context) *ProjectsLocationsQueuedResourcesDeleteCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsQueuedResourcesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsQueuedResourcesDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("DELETE", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "tpu.projects.locations.queuedResources.delete" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsQueuedResourcesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes a QueuedResource TPU instance.", + // "flatPath": "v2alpha1/projects/{projectsId}/locations/{locationsId}/queuedResources/{queuedResourcesId}", + // "httpMethod": "DELETE", + // "id": "tpu.projects.locations.queuedResources.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The resource name.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/queuedResources/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "Idempotent request UUID.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2alpha1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "tpu.projects.locations.queuedResources.get": + +type ProjectsLocationsQueuedResourcesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets details of a queued resource. +// +// - name: The resource name. +func (r *ProjectsLocationsQueuedResourcesService) Get(name string) *ProjectsLocationsQueuedResourcesGetCall { + c := &ProjectsLocationsQueuedResourcesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsQueuedResourcesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsQueuedResourcesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsQueuedResourcesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsQueuedResourcesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsQueuedResourcesGetCall) Context(ctx context.Context) *ProjectsLocationsQueuedResourcesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsQueuedResourcesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsQueuedResourcesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "tpu.projects.locations.queuedResources.get" call. +// Exactly one of *QueuedResource or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *QueuedResource.ServerResponse.Header or (if a response was returned +// at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsQueuedResourcesGetCall) Do(opts ...googleapi.CallOption) (*QueuedResource, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &QueuedResource{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets details of a queued resource.", + // "flatPath": "v2alpha1/projects/{projectsId}/locations/{locationsId}/queuedResources/{queuedResourcesId}", + // "httpMethod": "GET", + // "id": "tpu.projects.locations.queuedResources.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The resource name.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/queuedResources/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2alpha1/{+name}", + // "response": { + // "$ref": "QueuedResource" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "tpu.projects.locations.queuedResources.list": + +type ProjectsLocationsQueuedResourcesListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists queued resources. +// +// - parent: The parent resource name. +func (r *ProjectsLocationsQueuedResourcesService) List(parent string) *ProjectsLocationsQueuedResourcesListCall { + c := &ProjectsLocationsQueuedResourcesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of items to return. +func (c *ProjectsLocationsQueuedResourcesListCall) PageSize(pageSize int64) *ProjectsLocationsQueuedResourcesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The +// next_page_token value returned from a previous List request, if any. +func (c *ProjectsLocationsQueuedResourcesListCall) PageToken(pageToken string) *ProjectsLocationsQueuedResourcesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsQueuedResourcesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsQueuedResourcesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsQueuedResourcesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsQueuedResourcesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsQueuedResourcesListCall) Context(ctx context.Context) *ProjectsLocationsQueuedResourcesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsQueuedResourcesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsQueuedResourcesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha1/{+parent}/queuedResources") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "tpu.projects.locations.queuedResources.list" call. +// Exactly one of *ListQueuedResourcesResponse or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *ListQueuedResourcesResponse.ServerResponse.Header or (if a response +// was returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsQueuedResourcesListCall) Do(opts ...googleapi.CallOption) (*ListQueuedResourcesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &ListQueuedResourcesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists queued resources.", + // "flatPath": "v2alpha1/projects/{projectsId}/locations/{locationsId}/queuedResources", + // "httpMethod": "GET", + // "id": "tpu.projects.locations.queuedResources.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "The maximum number of items to return.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The next_page_token value returned from a previous List request, if any.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The parent resource name.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2alpha1/{+parent}/queuedResources", + // "response": { + // "$ref": "ListQueuedResourcesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsLocationsQueuedResourcesListCall) Pages(ctx context.Context, f func(*ListQueuedResourcesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + // method id "tpu.projects.locations.runtimeVersions.get": type ProjectsLocationsRuntimeVersionsGetCall struct { diff --git a/vmmigration/v1/vmmigration-api.json b/vmmigration/v1/vmmigration-api.json index 6c7b670bb68..08120f00664 100644 --- a/vmmigration/v1/vmmigration-api.json +++ b/vmmigration/v1/vmmigration-api.json @@ -1972,9 +1972,15 @@ } } }, - "revision": "20220922", + "revision": "20221103", "rootUrl": "https://vmmigration.googleapis.com/", "schemas": { + "AdaptingOSStep": { + "description": "AdaptingOSStep contains specific step details.", + "id": "AdaptingOSStep", + "properties": {}, + "type": "object" + }, "AddGroupMigrationRequest": { "description": "Request message for 'AddGroupMigration' request.", "id": "AddGroupMigrationRequest", @@ -2130,6 +2136,43 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "steps": { + "description": "Output only. The clone steps list representing its progress.", + "items": { + "$ref": "CloneStep" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "CloneStep": { + "description": "CloneStep holds information about the clone step progress.", + "id": "CloneStep", + "properties": { + "adaptingOs": { + "$ref": "AdaptingOSStep", + "description": "Adapting OS step." + }, + "endTime": { + "description": "The time the step has ended.", + "format": "google-datetime", + "type": "string" + }, + "instantiatingMigratedVm": { + "$ref": "InstantiatingMigratedVMStep", + "description": "Instantiating migrated VM step." + }, + "preparingVmDisks": { + "$ref": "PreparingVMDisksStep", + "description": "Preparing VM disks step." + }, + "startTime": { + "description": "The time the step has started.", + "format": "google-datetime", + "type": "string" } }, "type": "object" @@ -2507,6 +2550,80 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "steps": { + "description": "Output only. The cutover steps list representing its progress.", + "items": { + "$ref": "CutoverStep" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "CutoverStep": { + "description": "CutoverStep holds information about the cutover step progress.", + "id": "CutoverStep", + "properties": { + "endTime": { + "description": "The time the step has ended.", + "format": "google-datetime", + "type": "string" + }, + "finalSync": { + "$ref": "ReplicationCycle", + "description": "Final sync step." + }, + "instantiatingMigratedVm": { + "$ref": "InstantiatingMigratedVMStep", + "description": "Instantiating migrated VM step." + }, + "preparingVmDisks": { + "$ref": "PreparingVMDisksStep", + "description": "Preparing VM disks step." + }, + "previousReplicationCycle": { + "$ref": "ReplicationCycle", + "description": "A replication cycle prior cutover step." + }, + "shuttingDownSourceVm": { + "$ref": "ShuttingDownSourceVMStep", + "description": "Shutting down VM step." + }, + "startTime": { + "description": "The time the step has started.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "CycleStep": { + "description": "CycleStep holds information about a step progress.", + "id": "CycleStep", + "properties": { + "endTime": { + "description": "The time the cycle step has ended.", + "format": "google-datetime", + "type": "string" + }, + "initializingReplication": { + "$ref": "InitializingReplicationStep", + "description": "Initializing replication step." + }, + "postProcessing": { + "$ref": "PostProcessingStep", + "description": "Post processing step." + }, + "replicating": { + "$ref": "ReplicatingStep", + "description": "Replicating step." + }, + "startTime": { + "description": "The time the cycle step has started.", + "format": "google-datetime", + "type": "string" } }, "type": "object" @@ -2668,6 +2785,18 @@ }, "type": "object" }, + "InitializingReplicationStep": { + "description": "InitializingReplicationStep contains specific step details.", + "id": "InitializingReplicationStep", + "properties": {}, + "type": "object" + }, + "InstantiatingMigratedVMStep": { + "description": "InstantiatingMigratedVMStep contains specific step details.", + "id": "InstantiatingMigratedVMStep", + "properties": {}, + "type": "object" + }, "Link": { "description": "Describes a URL link.", "id": "Link", @@ -3314,6 +3443,18 @@ "properties": {}, "type": "object" }, + "PostProcessingStep": { + "description": "PostProcessingStep contains specific step details.", + "id": "PostProcessingStep", + "properties": {}, + "type": "object" + }, + "PreparingVMDisksStep": { + "description": "PreparingVMDisksStep contains specific step details.", + "id": "PreparingVMDisksStep", + "properties": {}, + "type": "object" + }, "RemoveGroupMigrationRequest": { "description": "Request message for 'RemoveMigration' request.", "id": "RemoveGroupMigrationRequest", @@ -3325,12 +3466,57 @@ }, "type": "object" }, + "ReplicatingStep": { + "description": "ReplicatingStep contains specific step details.", + "id": "ReplicatingStep", + "properties": { + "lastThirtyMinutesAverageBytesPerSecond": { + "description": "The source disks replication rate for the last 30 minutes in bytes per second.", + "format": "int64", + "type": "string" + }, + "lastTwoMinutesAverageBytesPerSecond": { + "description": "The source disks replication rate for the last 2 minutes in bytes per second.", + "format": "int64", + "type": "string" + }, + "replicatedBytes": { + "description": "Replicated bytes in the step.", + "format": "int64", + "type": "string" + }, + "totalBytes": { + "description": "Total bytes to be handled in the step.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "ReplicationCycle": { "description": "ReplicationCycle contains information about the current replication cycle status.", "id": "ReplicationCycle", "properties": { + "cycleNumber": { + "description": "The cycle's ordinal number.", + "format": "int32", + "type": "integer" + }, + "endTime": { + "description": "The time the replication cycle has ended.", + "format": "google-datetime", + "type": "string" + }, + "error": { + "$ref": "Status", + "description": "Provides details on the state of the cycle in case of an error." + }, + "name": { + "description": "The identifier of the ReplicationCycle.", + "type": "string" + }, "progressPercent": { - "description": "The current progress in percentage of this cycle.", + "description": "The current progress in percentage of this cycle. Was replaced by 'steps' field, which breaks down the cycle progression more accurately.", "format": "int32", "type": "integer" }, @@ -3338,6 +3524,36 @@ "description": "The time the replication cycle has started.", "format": "google-datetime", "type": "string" + }, + "state": { + "description": "State of the ReplicationCycle.", + "enum": [ + "STATE_UNSPECIFIED", + "RUNNING", + "PAUSED", + "FAILED", + "SUCCEEDED" + ], + "enumDescriptions": [ + "The state is unknown. This is used for API compatibility only and is not used by the system.", + "The replication cycle is running.", + "The replication cycle is paused.", + "The replication cycle finished with errors.", + "The replication cycle finished successfully." + ], + "type": "string" + }, + "steps": { + "description": "The cycle's steps list representing its progress.", + "items": { + "$ref": "CycleStep" + }, + "type": "array" + }, + "totalPauseDuration": { + "description": "The accumulated duration the replication cycle was paused.", + "format": "google-duration", + "type": "string" } }, "type": "object" @@ -3408,6 +3624,12 @@ }, "type": "object" }, + "ShuttingDownSourceVMStep": { + "description": "ShuttingDownSourceVMStep contains specific step details.", + "id": "ShuttingDownSourceVMStep", + "properties": {}, + "type": "object" + }, "Source": { "description": "Source message describes a specific vm migration Source resource. It contains the source environment information.", "id": "Source", diff --git a/vmmigration/v1/vmmigration-gen.go b/vmmigration/v1/vmmigration-gen.go index 04537646b7c..5f4f8df6752 100644 --- a/vmmigration/v1/vmmigration-gen.go +++ b/vmmigration/v1/vmmigration-gen.go @@ -278,6 +278,10 @@ type ProjectsLocationsTargetProjectsService struct { s *Service } +// AdaptingOSStep: AdaptingOSStep contains specific step details. +type AdaptingOSStep struct { +} + // AddGroupMigrationRequest: Request message for 'AddGroupMigration' // request. type AddGroupMigrationRequest struct { @@ -481,6 +485,9 @@ type CloneJob struct { // StateTime: Output only. The time the state was last updated. StateTime string `json:"stateTime,omitempty"` + // Steps: Output only. The clone steps list representing its progress. + Steps []*CloneStep `json:"steps,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` @@ -510,6 +517,46 @@ func (s *CloneJob) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// CloneStep: CloneStep holds information about the clone step progress. +type CloneStep struct { + // AdaptingOs: Adapting OS step. + AdaptingOs *AdaptingOSStep `json:"adaptingOs,omitempty"` + + // EndTime: The time the step has ended. + EndTime string `json:"endTime,omitempty"` + + // InstantiatingMigratedVm: Instantiating migrated VM step. + InstantiatingMigratedVm *InstantiatingMigratedVMStep `json:"instantiatingMigratedVm,omitempty"` + + // PreparingVmDisks: Preparing VM disks step. + PreparingVmDisks *PreparingVMDisksStep `json:"preparingVmDisks,omitempty"` + + // StartTime: The time the step has started. + StartTime string `json:"startTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AdaptingOs") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AdaptingOs") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CloneStep) MarshalJSON() ([]byte, error) { + type NoMethod CloneStep + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ComputeEngineTargetDefaults: ComputeEngineTargetDefaults is a // collection of details for creating a VM in a target Compute Engine // project. @@ -839,6 +886,9 @@ type CutoverJob struct { // StateTime: Output only. The time the state was last updated. StateTime string `json:"stateTime,omitempty"` + // Steps: Output only. The cutover steps list representing its progress. + Steps []*CutoverStep `json:"steps,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` @@ -868,6 +918,93 @@ func (s *CutoverJob) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// CutoverStep: CutoverStep holds information about the cutover step +// progress. +type CutoverStep struct { + // EndTime: The time the step has ended. + EndTime string `json:"endTime,omitempty"` + + // FinalSync: Final sync step. + FinalSync *ReplicationCycle `json:"finalSync,omitempty"` + + // InstantiatingMigratedVm: Instantiating migrated VM step. + InstantiatingMigratedVm *InstantiatingMigratedVMStep `json:"instantiatingMigratedVm,omitempty"` + + // PreparingVmDisks: Preparing VM disks step. + PreparingVmDisks *PreparingVMDisksStep `json:"preparingVmDisks,omitempty"` + + // PreviousReplicationCycle: A replication cycle prior cutover step. + PreviousReplicationCycle *ReplicationCycle `json:"previousReplicationCycle,omitempty"` + + // ShuttingDownSourceVm: Shutting down VM step. + ShuttingDownSourceVm *ShuttingDownSourceVMStep `json:"shuttingDownSourceVm,omitempty"` + + // StartTime: The time the step has started. + StartTime string `json:"startTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EndTime") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EndTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CutoverStep) MarshalJSON() ([]byte, error) { + type NoMethod CutoverStep + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CycleStep: CycleStep holds information about a step progress. +type CycleStep struct { + // EndTime: The time the cycle step has ended. + EndTime string `json:"endTime,omitempty"` + + // InitializingReplication: Initializing replication step. + InitializingReplication *InitializingReplicationStep `json:"initializingReplication,omitempty"` + + // PostProcessing: Post processing step. + PostProcessing *PostProcessingStep `json:"postProcessing,omitempty"` + + // Replicating: Replicating step. + Replicating *ReplicatingStep `json:"replicating,omitempty"` + + // StartTime: The time the cycle step has started. + StartTime string `json:"startTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EndTime") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EndTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CycleStep) MarshalJSON() ([]byte, error) { + type NoMethod CycleStep + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // DatacenterConnector: DatacenterConnector message describes a // connector between the Source and GCP, which is installed on a vmware // datacenter (an OVA vm installed by the user) to connect the @@ -1076,6 +1213,16 @@ func (s *Group) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// InitializingReplicationStep: InitializingReplicationStep contains +// specific step details. +type InitializingReplicationStep struct { +} + +// InstantiatingMigratedVMStep: InstantiatingMigratedVMStep contains +// specific step details. +type InstantiatingMigratedVMStep struct { +} + // Link: Describes a URL link. type Link struct { // Description: Describes what the link offers. @@ -1983,6 +2130,16 @@ func (s *OperationMetadata) MarshalJSON() ([]byte, error) { type PauseMigrationRequest struct { } +// PostProcessingStep: PostProcessingStep contains specific step +// details. +type PostProcessingStep struct { +} + +// PreparingVMDisksStep: PreparingVMDisksStep contains specific step +// details. +type PreparingVMDisksStep struct { +} + // RemoveGroupMigrationRequest: Request message for 'RemoveMigration' // request. type RemoveGroupMigrationRequest struct { @@ -2012,20 +2169,94 @@ func (s *RemoveGroupMigrationRequest) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ReplicatingStep: ReplicatingStep contains specific step details. +type ReplicatingStep struct { + // LastThirtyMinutesAverageBytesPerSecond: The source disks replication + // rate for the last 30 minutes in bytes per second. + LastThirtyMinutesAverageBytesPerSecond int64 `json:"lastThirtyMinutesAverageBytesPerSecond,omitempty,string"` + + // LastTwoMinutesAverageBytesPerSecond: The source disks replication + // rate for the last 2 minutes in bytes per second. + LastTwoMinutesAverageBytesPerSecond int64 `json:"lastTwoMinutesAverageBytesPerSecond,omitempty,string"` + + // ReplicatedBytes: Replicated bytes in the step. + ReplicatedBytes int64 `json:"replicatedBytes,omitempty,string"` + + // TotalBytes: Total bytes to be handled in the step. + TotalBytes int64 `json:"totalBytes,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. + // "LastThirtyMinutesAverageBytesPerSecond") to unconditionally include + // in API requests. By default, fields with empty or default values are + // omitted from API requests. However, any non-pointer, non-interface + // field appearing in ForceSendFields will be sent to the server + // regardless of whether the field is empty or not. This may be used to + // include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "LastThirtyMinutesAverageBytesPerSecond") to include in API requests + // with the JSON null value. By default, fields with empty values are + // omitted from API requests. However, any field with an empty value + // appearing in NullFields will be sent to the server as null. It is an + // error if a field in this list has a non-empty value. This may be used + // to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ReplicatingStep) MarshalJSON() ([]byte, error) { + type NoMethod ReplicatingStep + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ReplicationCycle: ReplicationCycle contains information about the // current replication cycle status. type ReplicationCycle struct { + // CycleNumber: The cycle's ordinal number. + CycleNumber int64 `json:"cycleNumber,omitempty"` + + // EndTime: The time the replication cycle has ended. + EndTime string `json:"endTime,omitempty"` + + // Error: Provides details on the state of the cycle in case of an + // error. + Error *Status `json:"error,omitempty"` + + // Name: The identifier of the ReplicationCycle. + Name string `json:"name,omitempty"` + // ProgressPercent: The current progress in percentage of this cycle. + // Was replaced by 'steps' field, which breaks down the cycle + // progression more accurately. ProgressPercent int64 `json:"progressPercent,omitempty"` // StartTime: The time the replication cycle has started. StartTime string `json:"startTime,omitempty"` + // State: State of the ReplicationCycle. + // + // Possible values: + // "STATE_UNSPECIFIED" - The state is unknown. This is used for API + // compatibility only and is not used by the system. + // "RUNNING" - The replication cycle is running. + // "PAUSED" - The replication cycle is paused. + // "FAILED" - The replication cycle finished with errors. + // "SUCCEEDED" - The replication cycle finished successfully. + State string `json:"state,omitempty"` + + // Steps: The cycle's steps list representing its progress. + Steps []*CycleStep `json:"steps,omitempty"` + + // TotalPauseDuration: The accumulated duration the replication cycle + // was paused. + TotalPauseDuration string `json:"totalPauseDuration,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "ProgressPercent") to + // ForceSendFields is a list of field names (e.g. "CycleNumber") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -2033,13 +2264,12 @@ type ReplicationCycle struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "ProgressPercent") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. + // NullFields is a list of field names (e.g. "CycleNumber") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } @@ -2162,6 +2392,11 @@ func (s *SchedulingNodeAffinity) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ShuttingDownSourceVMStep: ShuttingDownSourceVMStep contains specific +// step details. +type ShuttingDownSourceVMStep struct { +} + // Source: Source message describes a specific vm migration Source // resource. It contains the source environment information. type Source struct { diff --git a/vmmigration/v1alpha1/vmmigration-api.json b/vmmigration/v1alpha1/vmmigration-api.json index 9e46eb2c090..ae32a68af6e 100644 --- a/vmmigration/v1alpha1/vmmigration-api.json +++ b/vmmigration/v1alpha1/vmmigration-api.json @@ -1972,7 +1972,7 @@ } } }, - "revision": "20221027", + "revision": "20221103", "rootUrl": "https://vmmigration.googleapis.com/", "schemas": { "AdaptingOSStep": { @@ -2100,7 +2100,7 @@ "additionalProperties": { "type": "string" }, - "description": "AWS resource tags to limit the scope of the source inventory.", + "description": "Deprecated: AWS resource tags to limit the scope of the source inventory. Use inventory_tag_list instead.", "type": "object" }, "migrationResourcesUserTags": { @@ -2169,6 +2169,24 @@ "description": "AwsVmDetails describes a VM in AWS.", "id": "AwsVmDetails", "properties": { + "architecture": { + "description": "The CPU architecture.", + "enum": [ + "VM_ARCHITECTURE_UNSPECIFIED", + "I386", + "X86_64", + "ARM64", + "X86_64_MAC" + ], + "enumDescriptions": [ + "The architecture is unknown.", + "The architecture is I386.", + "The architecture is X86_64.", + "The architecture is ARM64.", + "The architecture is X86_64_MAC." + ], + "type": "string" + }, "bootOption": { "description": "The VM Boot Option.", "enum": [ @@ -2256,6 +2274,20 @@ "description": "The tags of the VM.", "type": "object" }, + "virtualizationType": { + "description": "The virtualization type.", + "enum": [ + "VM_VIRTUALIZATION_TYPE_UNSPECIFIED", + "HVM", + "PARAVIRTUAL" + ], + "enumDescriptions": [ + "The virtualization type is unknown.", + "The virtualziation type is HVM.", + "The virtualziation type is PARAVIRTUAL." + ], + "type": "string" + }, "vmId": { "description": "The VM ID in AWS.", "type": "string" @@ -3795,7 +3827,7 @@ "type": "integer" }, "progressPercent": { - "description": "The current progress in percentage of this cycle.", + "description": "The current progress in percentage of this cycle. Was replaced by 'steps' field, which breaks down the cycle progression more accurately.", "format": "int32", "type": "integer" }, @@ -3805,7 +3837,7 @@ "type": "string" }, "state": { - "description": "State of the MigratingVm.", + "description": "State of the ReplicationCycle.", "enum": [ "STATE_UNSPECIFIED", "RUNNING", diff --git a/vmmigration/v1alpha1/vmmigration-gen.go b/vmmigration/v1alpha1/vmmigration-gen.go index 81a90b8741c..fdb14d611b8 100644 --- a/vmmigration/v1alpha1/vmmigration-gen.go +++ b/vmmigration/v1alpha1/vmmigration-gen.go @@ -474,8 +474,8 @@ type AwsSourceDetails struct { // scope of the source inventory. InventorySecurityGroupNames []string `json:"inventorySecurityGroupNames,omitempty"` - // InventoryTags: AWS resource tags to limit the scope of the source - // inventory. + // InventoryTags: Deprecated: AWS resource tags to limit the scope of + // the source inventory. Use inventory_tag_list instead. InventoryTags map[string]string `json:"inventoryTags,omitempty"` // MigrationResourcesUserTags: User specified tags to add to every M2VM @@ -568,6 +568,16 @@ func (s *AwsSourceVmDetails) MarshalJSON() ([]byte, error) { // AwsVmDetails: AwsVmDetails describes a VM in AWS. type AwsVmDetails struct { + // Architecture: The CPU architecture. + // + // Possible values: + // "VM_ARCHITECTURE_UNSPECIFIED" - The architecture is unknown. + // "I386" - The architecture is I386. + // "X86_64" - The architecture is X86_64. + // "ARM64" - The architecture is ARM64. + // "X86_64_MAC" - The architecture is X86_64_MAC. + Architecture string `json:"architecture,omitempty"` + // BootOption: The VM Boot Option. // // Possible values: @@ -624,6 +634,15 @@ type AwsVmDetails struct { // Tags: The tags of the VM. Tags map[string]string `json:"tags,omitempty"` + // VirtualizationType: The virtualization type. + // + // Possible values: + // "VM_VIRTUALIZATION_TYPE_UNSPECIFIED" - The virtualization type is + // unknown. + // "HVM" - The virtualziation type is HVM. + // "PARAVIRTUAL" - The virtualziation type is PARAVIRTUAL. + VirtualizationType string `json:"virtualizationType,omitempty"` + // VmId: The VM ID in AWS. VmId string `json:"vmId,omitempty"` @@ -633,7 +652,7 @@ type AwsVmDetails struct { // Zone: The AWS zone of the VM. Zone string `json:"zone,omitempty"` - // ForceSendFields is a list of field names (e.g. "BootOption") to + // ForceSendFields is a list of field names (e.g. "Architecture") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -641,10 +660,10 @@ type AwsVmDetails struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "BootOption") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "Architecture") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` @@ -2530,12 +2549,14 @@ type ReplicationCycle struct { Progress int64 `json:"progress,omitempty"` // ProgressPercent: The current progress in percentage of this cycle. + // Was replaced by 'steps' field, which breaks down the cycle + // progression more accurately. ProgressPercent int64 `json:"progressPercent,omitempty"` // StartTime: The time the replication cycle has started. StartTime string `json:"startTime,omitempty"` - // State: State of the MigratingVm. + // State: State of the ReplicationCycle. // // Possible values: // "STATE_UNSPECIFIED" - The state is unknown. This is used for API diff --git a/youtube/v3/youtube-api.json b/youtube/v3/youtube-api.json index 2e9eeaa3677..0c3d47a811d 100644 --- a/youtube/v3/youtube-api.json +++ b/youtube/v3/youtube-api.json @@ -1416,6 +1416,8 @@ "$ref": "Cuepoint" }, "scopes": [ + "https://www.googleapis.com/auth/youtube", + "https://www.googleapis.com/auth/youtube.force-ssl", "https://www.googleapis.com/auth/youtubepartner" ] }, @@ -3829,7 +3831,7 @@ } } }, - "revision": "20220926", + "revision": "20221114", "rootUrl": "https://youtube.googleapis.com/", "schemas": { "AbuseReport": { diff --git a/youtube/v3/youtube-gen.go b/youtube/v3/youtube-gen.go index ddc44c49718..796e1579d4d 100644 --- a/youtube/v3/youtube-gen.go +++ b/youtube/v3/youtube-gen.go @@ -15804,6 +15804,8 @@ func (c *LiveBroadcastsInsertCuepointCall) Do(opts ...googleapi.CallOption) (*Cu // "$ref": "Cuepoint" // }, // "scopes": [ + // "https://www.googleapis.com/auth/youtube", + // "https://www.googleapis.com/auth/youtube.force-ssl", // "https://www.googleapis.com/auth/youtubepartner" // ] // }