From 3195ce1ad12642c558d76353328a0ad05173e608 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Bot Date: Fri, 2 Dec 2022 10:37:01 -0800 Subject: [PATCH] feat(all): auto-regenerate discovery clients (#1766) --- admin/directory/v1/admin-api.json | 36 +- admin/directory/v1/admin-gen.go | 176 +- adsense/v2/adsense-api.json | 10 +- adsense/v2/adsense-gen.go | 16 +- .../v1alpha/analyticsadmin-api.json | 56 +- analyticsadmin/v1alpha/analyticsadmin-gen.go | 72 +- analyticsadmin/v1beta/analyticsadmin-api.json | 2692 +++++ analyticsadmin/v1beta/analyticsadmin-gen.go | 9491 +++++++++++++++++ api-list.json | 31 +- assuredworkloads/v1/assuredworkloads-api.json | 69 +- assuredworkloads/v1/assuredworkloads-gen.go | 223 + .../v1/bigqueryreservation-api.json | 4 +- .../v1/bigqueryreservation-gen.go | 2 +- .../v1/businessprofileperformance-api.json | 4 +- chat/v1/chat-api.json | 47 +- chat/v1/chat-gen.go | 226 +- chromemanagement/v1/chromemanagement-api.json | 229 +- chromemanagement/v1/chromemanagement-gen.go | 502 + cloudsupport/v2beta/cloudsupport-api.json | 10 +- cloudsupport/v2beta/cloudsupport-gen.go | 21 +- content/v2.1/content-api.json | 84 +- content/v2.1/content-gen.go | 133 +- .../v1alpha/discoveryengine-api.json | 14 +- .../v1alpha/discoveryengine-gen.go | 28 +- .../v1beta/discoveryengine-api.json | 14 +- discoveryengine/v1beta/discoveryengine-gen.go | 28 +- displayvideo/v2/displayvideo-api.json | 16 +- displayvideo/v2/displayvideo-gen.go | 42 +- .../gamesconfiguration-api.json | 93 +- .../v1configuration/gamesconfiguration-gen.go | 293 - integrations/v1alpha/integrations-api.json | 8 +- integrations/v1alpha/integrations-gen.go | 19 +- .../v1/mybusinessaccountmanagement-api.json | 4 +- .../v1/mybusinessbusinesscalls-api.json | 4 +- .../v1/mybusinessbusinessinformation-api.json | 4 +- .../v1/mybusinesslodging-api.json | 4 +- .../v1/mybusinessnotifications-api.json | 4 +- .../v1/mybusinessplaceactions-api.json | 4 +- mybusinessqanda/v1/mybusinessqanda-api.json | 4 +- .../v1/paymentsresellersubscription-api.json | 91 +- .../v1/paymentsresellersubscription-gen.go | 135 +- retail/v2/retail-api.json | 10 +- retail/v2/retail-gen.go | 19 +- retail/v2alpha/retail-api.json | 10 +- retail/v2alpha/retail-gen.go | 19 +- retail/v2beta/retail-api.json | 10 +- retail/v2beta/retail-gen.go | 19 +- securitycenter/v1/securitycenter-api.json | 87 +- securitycenter/v1/securitycenter-gen.go | 179 +- .../v1beta1/securitycenter-api.json | 49 +- securitycenter/v1beta1/securitycenter-gen.go | 68 + .../v1beta2/securitycenter-api.json | 125 +- securitycenter/v1beta2/securitycenter-gen.go | 422 +- .../v1/servicemanagement-api.json | 326 +- servicemanagement/v1/servicemanagement-gen.go | 581 +- testing/v1/testing-api.json | 8 +- testing/v1/testing-gen.go | 2 + 57 files changed, 16006 insertions(+), 871 deletions(-) create mode 100644 analyticsadmin/v1beta/analyticsadmin-api.json create mode 100644 analyticsadmin/v1beta/analyticsadmin-gen.go diff --git a/admin/directory/v1/admin-api.json b/admin/directory/v1/admin-api.json index 65a3a4de920..308cc3c2183 100644 --- a/admin/directory/v1/admin-api.json +++ b/admin/directory/v1/admin-api.json @@ -1327,7 +1327,7 @@ ], "parameters": { "customer": { - "description": "Immutable ID of the Google Workspace account.", + "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", "location": "path", "required": true, "type": "string" @@ -1385,7 +1385,7 @@ ], "parameters": { "customer": { - "description": "Immutable ID of the Google Workspace account.", + "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", "location": "path", "required": true, "type": "string" @@ -1448,7 +1448,7 @@ ], "parameters": { "customer": { - "description": "Immutable ID of the Google Workspace account.", + "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", "location": "path", "required": true, "type": "string" @@ -1506,7 +1506,7 @@ ], "parameters": { "customer": { - "description": "Immutable ID of the Google Workspace account.", + "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", "location": "path", "required": true, "type": "string" @@ -1597,7 +1597,7 @@ "parameterOrder": [], "parameters": { "customer": { - "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, fill in this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. Either the `customer` or the `domain` parameter must be provided.", + "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", "location": "query", "type": "string" }, @@ -1933,7 +1933,7 @@ ] }, "list": { - "description": "Retrieves a paginated list of all members in a group.", + "description": "Retrieves a paginated list of all members in a group. This method times out after 60 minutes. For more information, see [Troubleshoot error codes](https://developers.google.com/admin-sdk/directory/v1/guides/troubleshoot-error-codes).", "flatPath": "admin/directory/v1/groups/{groupKey}/members", "httpMethod": "GET", "id": "directory.members.list", @@ -2163,7 +2163,7 @@ ] }, "list": { - "description": "Retrieves a paginated list of all user-owned mobile devices for an account. To retrieve a list that includes company-owned devices, use the Cloud Identity [Devices API](https://cloud.google.com/identity/docs/concepts/overview-devices) instead.", + "description": "Retrieves a paginated list of all user-owned mobile devices for an account. To retrieve a list that includes company-owned devices, use the Cloud Identity [Devices API](https://cloud.google.com/identity/docs/concepts/overview-devices) instead. This method times out after 60 minutes. For more information, see [Troubleshoot error codes](https://developers.google.com/admin-sdk/directory/v1/guides/troubleshoot-error-codes).", "flatPath": "admin/directory/v1/customer/{customerId}/devices/mobile", "httpMethod": "GET", "id": "directory.mobiledevices.list", @@ -2479,7 +2479,7 @@ ], "parameters": { "customer": { - "description": "Immutable ID of the Google Workspace account.", + "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", "location": "path", "required": true, "type": "string" @@ -3221,7 +3221,7 @@ ], "parameters": { "customer": { - "description": "Immutable ID of the Google Workspace account.", + "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", "location": "path", "required": true, "type": "string" @@ -3279,7 +3279,7 @@ ], "parameters": { "customer": { - "description": "Immutable ID of the Google Workspace account.", + "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", "location": "path", "required": true, "type": "string" @@ -3360,7 +3360,7 @@ ], "parameters": { "customer": { - "description": "Immutable ID of the Google Workspace account.", + "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", "location": "path", "required": true, "type": "string" @@ -3418,7 +3418,7 @@ ], "parameters": { "customer": { - "description": "Immutable ID of the Google Workspace account.", + "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", "location": "path", "required": true, "type": "string" @@ -3557,7 +3557,7 @@ ], "parameters": { "customerId": { - "description": "Immutable ID of the Google Workspace account.", + "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", "location": "path", "required": true, "type": "string" @@ -3615,7 +3615,7 @@ ], "parameters": { "customerId": { - "description": "Immutable ID of the Google Workspace account.", + "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", "location": "path", "required": true, "type": "string" @@ -3926,7 +3926,7 @@ "type": "string" }, "customer": { - "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, fill this field instead of domain. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users resource](/admin-sdk/directory/v1/reference/users). Either the `customer` or the `domain` parameter must be provided.", + "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", "location": "query", "type": "string" }, @@ -4144,7 +4144,7 @@ ] }, "update": { - "description": "Updates a user. This method supports patch semantics, meaning you only need to include the fields you wish to update. Fields that are not present in the request will be preserved, and fields set to `null` will be cleared.", + "description": "Updates a user. This method supports patch semantics, meaning that you only need to include the fields you wish to update. Fields that are not present in the request will be preserved, and fields set to `null` will be cleared. For repeating fields that contain arrays, individual items in the array can't be patched piecemeal; they must be supplied in the request body with the desired values for all items. See the [user accounts guide](https://developers.google.com/admin-sdk/directory/v1/guides/manage-users#update_user) for more information.", "flatPath": "admin/directory/v1/users/{userKey}", "httpMethod": "PUT", "id": "directory.users.update", @@ -4630,7 +4630,7 @@ } } }, - "revision": "20221109", + "revision": "20221129", "rootUrl": "https://admin.googleapis.com/", "schemas": { "Alias": { @@ -7515,7 +7515,7 @@ "type": "boolean" }, "ipWhitelisted": { - "description": "If `true`, the user's IP address is [whitelisted](https://support.google.com/a/answer/60752).", + "description": "If `true`, the user's IP address is subject to a deprecated IP address [`allowlist`](https://support.google.com/a/answer/60752) configuration.", "type": "boolean" }, "isAdmin": { diff --git a/admin/directory/v1/admin-gen.go b/admin/directory/v1/admin-gen.go index 9d8cfa8d05b..7e03a985cb5 100644 --- a/admin/directory/v1/admin-gen.go +++ b/admin/directory/v1/admin-gen.go @@ -5099,8 +5099,9 @@ type User struct { // (https://support.google.com/a/answer/1285988). IncludeInGlobalAddressList bool `json:"includeInGlobalAddressList,omitempty"` - // IpWhitelisted: If `true`, the user's IP address is whitelisted - // (https://support.google.com/a/answer/60752). + // IpWhitelisted: If `true`, the user's IP address is subject to a + // deprecated IP address `allowlist` + // (https://support.google.com/a/answer/60752) configuration. IpWhitelisted bool `json:"ipWhitelisted,omitempty"` // IsAdmin: Output only. Indicates a user with super admininistrator @@ -11286,8 +11287,14 @@ type DomainAliasesGetCall struct { // Get: Retrieves a domain alias of the customer. // -// - customer: Immutable ID of the Google Workspace account. -// - domainAliasName: Name of domain alias to be retrieved. +// - customer: The unique ID for the customer's Google Workspace +// account. In case of a multi-domain account, to fetch all groups for +// a customer, use this field instead of `domain`. You can also use +// the `my_customer` alias to represent your account's `customerId`. +// The `customerId` is also returned as part of the Users +// (/admin-sdk/directory/v1/reference/users) resource. You must +// provide either the `customer` or the `domain` parameter. +// - domainAliasName: Name of domain alias to be retrieved. func (r *DomainAliasesService) Get(customer string, domainAliasName string) *DomainAliasesGetCall { c := &DomainAliasesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.customer = customer @@ -11405,7 +11412,7 @@ func (c *DomainAliasesGetCall) Do(opts ...googleapi.CallOption) (*DomainAlias, e // ], // "parameters": { // "customer": { - // "description": "Immutable ID of the Google Workspace account.", + // "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", // "location": "path", // "required": true, // "type": "string" @@ -11583,7 +11590,13 @@ type DomainAliasesListCall struct { // List: Lists the domain aliases of the customer. // -// - customer: Immutable ID of the Google Workspace account. +// - customer: The unique ID for the customer's Google Workspace +// account. In case of a multi-domain account, to fetch all groups for +// a customer, use this field instead of `domain`. You can also use +// the `my_customer` alias to represent your account's `customerId`. +// The `customerId` is also returned as part of the Users +// (/admin-sdk/directory/v1/reference/users) resource. You must +// provide either the `customer` or the `domain` parameter. func (r *DomainAliasesService) List(customer string) *DomainAliasesListCall { c := &DomainAliasesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.customer = customer @@ -11705,7 +11718,7 @@ func (c *DomainAliasesListCall) Do(opts ...googleapi.CallOption) (*DomainAliases // ], // "parameters": { // "customer": { - // "description": "Immutable ID of the Google Workspace account.", + // "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", // "location": "path", // "required": true, // "type": "string" @@ -11856,8 +11869,14 @@ type DomainsGetCall struct { // Get: Retrieves a domain of the customer. // -// - customer: Immutable ID of the Google Workspace account. -// - domainName: Name of domain to be retrieved. +// - customer: The unique ID for the customer's Google Workspace +// account. In case of a multi-domain account, to fetch all groups for +// a customer, use this field instead of `domain`. You can also use +// the `my_customer` alias to represent your account's `customerId`. +// The `customerId` is also returned as part of the Users +// (/admin-sdk/directory/v1/reference/users) resource. You must +// provide either the `customer` or the `domain` parameter. +// - domainName: Name of domain to be retrieved. func (r *DomainsService) Get(customer string, domainName string) *DomainsGetCall { c := &DomainsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.customer = customer @@ -11975,7 +11994,7 @@ func (c *DomainsGetCall) Do(opts ...googleapi.CallOption) (*Domains, error) { // ], // "parameters": { // "customer": { - // "description": "Immutable ID of the Google Workspace account.", + // "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", // "location": "path", // "required": true, // "type": "string" @@ -12153,7 +12172,13 @@ type DomainsListCall struct { // List: Lists the domains of the customer. // -// - customer: Immutable ID of the Google Workspace account. +// - customer: The unique ID for the customer's Google Workspace +// account. In case of a multi-domain account, to fetch all groups for +// a customer, use this field instead of `domain`. You can also use +// the `my_customer` alias to represent your account's `customerId`. +// The `customerId` is also returned as part of the Users +// (/admin-sdk/directory/v1/reference/users) resource. You must +// provide either the `customer` or the `domain` parameter. func (r *DomainsService) List(customer string) *DomainsListCall { c := &DomainsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.customer = customer @@ -12268,7 +12293,7 @@ func (c *DomainsListCall) Do(opts ...googleapi.CallOption) (*Domains2, error) { // ], // "parameters": { // "customer": { - // "description": "Immutable ID of the Google Workspace account.", + // "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", // "location": "path", // "required": true, // "type": "string" @@ -12681,12 +12706,11 @@ func (r *GroupsService) List() *GroupsListCall { // Customer sets the optional parameter "customer": The unique ID for // the customer's Google Workspace account. In case of a multi-domain -// account, to fetch all groups for a customer, fill in this field -// instead of `domain`. You can also use the `my_customer` alias to -// represent your account's `customerId`. The `customerId` is also -// returned as part of the Users -// (/admin-sdk/directory/v1/reference/users) resource. Either the -// `customer` or the `domain` parameter must be provided. +// account, to fetch all groups for a customer, use this field instead +// of `domain`. You can also use the `my_customer` alias to represent +// your account's `customerId`. The `customerId` is also returned as +// part of the Users (/admin-sdk/directory/v1/reference/users) resource. +// You must provide either the `customer` or the `domain` parameter. func (c *GroupsListCall) Customer(customer string) *GroupsListCall { c.urlParams_.Set("customer", customer) return c @@ -12858,7 +12882,7 @@ func (c *GroupsListCall) Do(opts ...googleapi.CallOption) (*Groups, error) { // "parameterOrder": [], // "parameters": { // "customer": { - // "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, fill in this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. Either the `customer` or the `domain` parameter must be provided.", + // "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", // "location": "query", // "type": "string" // }, @@ -14241,7 +14265,10 @@ type MembersListCall struct { header_ http.Header } -// List: Retrieves a paginated list of all members in a group. +// List: Retrieves a paginated list of all members in a group. This +// method times out after 60 minutes. For more information, see +// Troubleshoot error codes +// (https://developers.google.com/admin-sdk/directory/v1/guides/troubleshoot-error-codes). // // - groupKey: Identifies the group in the API request. The value can be // the group's email address, group alias, or the unique group ID. @@ -14380,7 +14407,7 @@ func (c *MembersListCall) Do(opts ...googleapi.CallOption) (*Members, error) { } return ret, nil // { - // "description": "Retrieves a paginated list of all members in a group.", + // "description": "Retrieves a paginated list of all members in a group. This method times out after 60 minutes. For more information, see [Troubleshoot error codes](https://developers.google.com/admin-sdk/directory/v1/guides/troubleshoot-error-codes).", // "flatPath": "admin/directory/v1/groups/{groupKey}/members", // "httpMethod": "GET", // "id": "directory.members.list", @@ -15225,7 +15252,9 @@ type MobiledevicesListCall struct { // an account. To retrieve a list that includes company-owned devices, // use the Cloud Identity Devices API // (https://cloud.google.com/identity/docs/concepts/overview-devices) -// instead. +// instead. This method times out after 60 minutes. For more +// information, see Troubleshoot error codes +// (https://developers.google.com/admin-sdk/directory/v1/guides/troubleshoot-error-codes). // // - customerId: The unique ID for the customer's Google Workspace // account. As an account administrator, you can also use the @@ -15408,7 +15437,7 @@ func (c *MobiledevicesListCall) Do(opts ...googleapi.CallOption) (*MobileDevices } return ret, nil // { - // "description": "Retrieves a paginated list of all user-owned mobile devices for an account. To retrieve a list that includes company-owned devices, use the Cloud Identity [Devices API](https://cloud.google.com/identity/docs/concepts/overview-devices) instead.", + // "description": "Retrieves a paginated list of all user-owned mobile devices for an account. To retrieve a list that includes company-owned devices, use the Cloud Identity [Devices API](https://cloud.google.com/identity/docs/concepts/overview-devices) instead. This method times out after 60 minutes. For more information, see [Troubleshoot error codes](https://developers.google.com/admin-sdk/directory/v1/guides/troubleshoot-error-codes).", // "flatPath": "admin/directory/v1/customer/{customerId}/devices/mobile", // "httpMethod": "GET", // "id": "directory.mobiledevices.list", @@ -16474,7 +16503,13 @@ type PrivilegesListCall struct { // List: Retrieves a paginated list of all privileges for a customer. // -// - customer: Immutable ID of the Google Workspace account. +// - customer: The unique ID for the customer's Google Workspace +// account. In case of a multi-domain account, to fetch all groups for +// a customer, use this field instead of `domain`. You can also use +// the `my_customer` alias to represent your account's `customerId`. +// The `customerId` is also returned as part of the Users +// (/admin-sdk/directory/v1/reference/users) resource. You must +// provide either the `customer` or the `domain` parameter. func (r *PrivilegesService) List(customer string) *PrivilegesListCall { c := &PrivilegesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.customer = customer @@ -16589,7 +16624,7 @@ func (c *PrivilegesListCall) Do(opts ...googleapi.CallOption) (*Privileges, erro // ], // "parameters": { // "customer": { - // "description": "Immutable ID of the Google Workspace account.", + // "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", // "location": "path", // "required": true, // "type": "string" @@ -19787,8 +19822,14 @@ type RoleAssignmentsGetCall struct { // Get: Retrieves a role assignment. // -// - customer: Immutable ID of the Google Workspace account. -// - roleAssignmentId: Immutable ID of the role assignment. +// - customer: The unique ID for the customer's Google Workspace +// account. In case of a multi-domain account, to fetch all groups for +// a customer, use this field instead of `domain`. You can also use +// the `my_customer` alias to represent your account's `customerId`. +// The `customerId` is also returned as part of the Users +// (/admin-sdk/directory/v1/reference/users) resource. You must +// provide either the `customer` or the `domain` parameter. +// - roleAssignmentId: Immutable ID of the role assignment. func (r *RoleAssignmentsService) Get(customer string, roleAssignmentId string) *RoleAssignmentsGetCall { c := &RoleAssignmentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.customer = customer @@ -19906,7 +19947,7 @@ func (c *RoleAssignmentsGetCall) Do(opts ...googleapi.CallOption) (*RoleAssignme // ], // "parameters": { // "customer": { - // "description": "Immutable ID of the Google Workspace account.", + // "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", // "location": "path", // "required": true, // "type": "string" @@ -20084,7 +20125,13 @@ type RoleAssignmentsListCall struct { // List: Retrieves a paginated list of all roleAssignments. // -// - customer: Immutable ID of the Google Workspace account. +// - customer: The unique ID for the customer's Google Workspace +// account. In case of a multi-domain account, to fetch all groups for +// a customer, use this field instead of `domain`. You can also use +// the `my_customer` alias to represent your account's `customerId`. +// The `customerId` is also returned as part of the Users +// (/admin-sdk/directory/v1/reference/users) resource. You must +// provide either the `customer` or the `domain` parameter. func (r *RoleAssignmentsService) List(customer string) *RoleAssignmentsListCall { c := &RoleAssignmentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.customer = customer @@ -20229,7 +20276,7 @@ func (c *RoleAssignmentsListCall) Do(opts ...googleapi.CallOption) (*RoleAssignm // ], // "parameters": { // "customer": { - // "description": "Immutable ID of the Google Workspace account.", + // "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", // "location": "path", // "required": true, // "type": "string" @@ -20419,8 +20466,14 @@ type RolesGetCall struct { // Get: Retrieves a role. // -// - customer: Immutable ID of the Google Workspace account. -// - roleId: Immutable ID of the role. +// - customer: The unique ID for the customer's Google Workspace +// account. In case of a multi-domain account, to fetch all groups for +// a customer, use this field instead of `domain`. You can also use +// the `my_customer` alias to represent your account's `customerId`. +// The `customerId` is also returned as part of the Users +// (/admin-sdk/directory/v1/reference/users) resource. You must +// provide either the `customer` or the `domain` parameter. +// - roleId: Immutable ID of the role. func (r *RolesService) Get(customer string, roleId string) *RolesGetCall { c := &RolesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.customer = customer @@ -20538,7 +20591,7 @@ func (c *RolesGetCall) Do(opts ...googleapi.CallOption) (*Role, error) { // ], // "parameters": { // "customer": { - // "description": "Immutable ID of the Google Workspace account.", + // "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", // "location": "path", // "required": true, // "type": "string" @@ -20716,7 +20769,13 @@ type RolesListCall struct { // List: Retrieves a paginated list of all the roles in a domain. // -// - customer: Immutable ID of the Google Workspace account. +// - customer: The unique ID for the customer's Google Workspace +// account. In case of a multi-domain account, to fetch all groups for +// a customer, use this field instead of `domain`. You can also use +// the `my_customer` alias to represent your account's `customerId`. +// The `customerId` is also returned as part of the Users +// (/admin-sdk/directory/v1/reference/users) resource. You must +// provide either the `customer` or the `domain` parameter. func (r *RolesService) List(customer string) *RolesListCall { c := &RolesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.customer = customer @@ -20845,7 +20904,7 @@ func (c *RolesListCall) Do(opts ...googleapi.CallOption) (*Roles, error) { // ], // "parameters": { // "customer": { - // "description": "Immutable ID of the Google Workspace account.", + // "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", // "location": "path", // "required": true, // "type": "string" @@ -21329,8 +21388,14 @@ type SchemasGetCall struct { // Get: Retrieves a schema. // -// - customerId: Immutable ID of the Google Workspace account. -// - schemaKey: Name or immutable ID of the schema. +// - customerId: The unique ID for the customer's Google Workspace +// account. In case of a multi-domain account, to fetch all groups for +// a customer, use this field instead of `domain`. You can also use +// the `my_customer` alias to represent your account's `customerId`. +// The `customerId` is also returned as part of the Users +// (/admin-sdk/directory/v1/reference/users) resource. You must +// provide either the `customer` or the `domain` parameter. +// - schemaKey: Name or immutable ID of the schema. func (r *SchemasService) Get(customerId string, schemaKey string) *SchemasGetCall { c := &SchemasGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.customerId = customerId @@ -21448,7 +21513,7 @@ func (c *SchemasGetCall) Do(opts ...googleapi.CallOption) (*Schema, error) { // ], // "parameters": { // "customerId": { - // "description": "Immutable ID of the Google Workspace account.", + // "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", // "location": "path", // "required": true, // "type": "string" @@ -21626,7 +21691,13 @@ type SchemasListCall struct { // List: Retrieves all schemas for a customer. // -// - customerId: Immutable ID of the Google Workspace account. +// - customerId: The unique ID for the customer's Google Workspace +// account. In case of a multi-domain account, to fetch all groups for +// a customer, use this field instead of `domain`. You can also use +// the `my_customer` alias to represent your account's `customerId`. +// The `customerId` is also returned as part of the Users +// (/admin-sdk/directory/v1/reference/users) resource. You must +// provide either the `customer` or the `domain` parameter. func (r *SchemasService) List(customerId string) *SchemasListCall { c := &SchemasListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.customerId = customerId @@ -21741,7 +21812,7 @@ func (c *SchemasListCall) Do(opts ...googleapi.CallOption) (*Schemas, error) { // ], // "parameters": { // "customerId": { - // "description": "Immutable ID of the Google Workspace account.", + // "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", // "location": "path", // "required": true, // "type": "string" @@ -23075,11 +23146,11 @@ func (c *UsersListCall) CustomFieldMask(customFieldMask string) *UsersListCall { // Customer sets the optional parameter "customer": The unique ID for // the customer's Google Workspace account. In case of a multi-domain -// account, to fetch all groups for a customer, fill this field instead -// of domain. You can also use the `my_customer` alias to represent your -// account's `customerId`. The `customerId` is also returned as part of -// the Users resource (/admin-sdk/directory/v1/reference/users). Either -// the `customer` or the `domain` parameter must be provided. +// account, to fetch all groups for a customer, use this field instead +// of `domain`. You can also use the `my_customer` alias to represent +// your account's `customerId`. The `customerId` is also returned as +// part of the Users (/admin-sdk/directory/v1/reference/users) resource. +// You must provide either the `customer` or the `domain` parameter. func (c *UsersListCall) Customer(customer string) *UsersListCall { c.urlParams_.Set("customer", customer) return c @@ -23307,7 +23378,7 @@ func (c *UsersListCall) Do(opts ...googleapi.CallOption) (*Users, error) { // "type": "string" // }, // "customer": { - // "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, fill this field instead of domain. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users resource](/admin-sdk/directory/v1/reference/users). Either the `customer` or the `domain` parameter must be provided.", + // "description": "The unique ID for the customer's Google Workspace account. In case of a multi-domain account, to fetch all groups for a customer, use this field instead of `domain`. You can also use the `my_customer` alias to represent your account's `customerId`. The `customerId` is also returned as part of the [Users](/admin-sdk/directory/v1/reference/users) resource. You must provide either the `customer` or the `domain` parameter.", // "location": "query", // "type": "string" // }, @@ -23946,9 +24017,14 @@ type UsersUpdateCall struct { } // Update: Updates a user. This method supports patch semantics, meaning -// you only need to include the fields you wish to update. Fields that -// are not present in the request will be preserved, and fields set to -// `null` will be cleared. +// that you only need to include the fields you wish to update. Fields +// that are not present in the request will be preserved, and fields set +// to `null` will be cleared. For repeating fields that contain arrays, +// individual items in the array can't be patched piecemeal; they must +// be supplied in the request body with the desired values for all +// items. See the user accounts guide +// (https://developers.google.com/admin-sdk/directory/v1/guides/manage-users#update_user) +// for more information. // // - userKey: Identifies the user in the API request. The value can be // the user's primary email address, alias email address, or unique @@ -24051,7 +24127,7 @@ func (c *UsersUpdateCall) Do(opts ...googleapi.CallOption) (*User, error) { } return ret, nil // { - // "description": "Updates a user. This method supports patch semantics, meaning you only need to include the fields you wish to update. Fields that are not present in the request will be preserved, and fields set to `null` will be cleared.", + // "description": "Updates a user. This method supports patch semantics, meaning that you only need to include the fields you wish to update. Fields that are not present in the request will be preserved, and fields set to `null` will be cleared. For repeating fields that contain arrays, individual items in the array can't be patched piecemeal; they must be supplied in the request body with the desired values for all items. See the [user accounts guide](https://developers.google.com/admin-sdk/directory/v1/guides/manage-users#update_user) for more information.", // "flatPath": "admin/directory/v1/users/{userKey}", // "httpMethod": "PUT", // "id": "directory.users.update", diff --git a/adsense/v2/adsense-api.json b/adsense/v2/adsense-api.json index 1f36b477449..d0b152b4b00 100644 --- a/adsense/v2/adsense-api.json +++ b/adsense/v2/adsense-api.json @@ -1824,7 +1824,7 @@ } } }, - "revision": "20221025", + "revision": "20221201", "rootUrl": "https://adsense.googleapis.com/", "schemas": { "Account": { @@ -2551,10 +2551,10 @@ ], "enumDescriptions": [ "State unspecified.", - "The site hasn't been checked yet.", - "Running some checks on the site. This usually takes a few days, but in some cases can take up to 2 weeks.", - "The site is ready to show ads.", - "Publisher needs to fix some issues before the site is ready to show ads." + "Either: * The site hasn't been checked yet. * The site is inactive and needs another review before it can show ads again. Learn how to [request a review for an inactive site](https://support.google.com/adsense/answer/9393996).", + "Google is running some checks on the site. This usually takes a few days, but in some cases it can take two to four weeks.", + "The site is ready to show ads. Learn how to [set up ads on the site](https://support.google.com/adsense/answer/7037624).", + "Publisher needs to fix some issues before the site is ready to show ads. Learn what to do [if a new site isn't ready](https://support.google.com/adsense/answer/9061852)." ], "readOnly": true, "type": "string" diff --git a/adsense/v2/adsense-gen.go b/adsense/v2/adsense-gen.go index 09a966fd343..ca8f2fe50f2 100644 --- a/adsense/v2/adsense-gen.go +++ b/adsense/v2/adsense-gen.go @@ -1521,12 +1521,18 @@ type Site struct { // // Possible values: // "STATE_UNSPECIFIED" - State unspecified. - // "REQUIRES_REVIEW" - The site hasn't been checked yet. - // "GETTING_READY" - Running some checks on the site. This usually - // takes a few days, but in some cases can take up to 2 weeks. - // "READY" - The site is ready to show ads. + // "REQUIRES_REVIEW" - Either: * The site hasn't been checked yet. * + // The site is inactive and needs another review before it can show ads + // again. Learn how to [request a review for an inactive + // site](https://support.google.com/adsense/answer/9393996). + // "GETTING_READY" - Google is running some checks on the site. This + // usually takes a few days, but in some cases it can take two to four + // weeks. + // "READY" - The site is ready to show ads. Learn how to [set up ads + // on the site](https://support.google.com/adsense/answer/7037624). // "NEEDS_ATTENTION" - Publisher needs to fix some issues before the - // site is ready to show ads. + // site is ready to show ads. Learn what to do [if a new site isn't + // ready](https://support.google.com/adsense/answer/9061852). State string `json:"state,omitempty"` // ServerResponse contains the HTTP response code and headers from the diff --git a/analyticsadmin/v1alpha/analyticsadmin-api.json b/analyticsadmin/v1alpha/analyticsadmin-api.json index f06b7cd8808..215e33aef3a 100644 --- a/analyticsadmin/v1alpha/analyticsadmin-api.json +++ b/analyticsadmin/v1alpha/analyticsadmin-api.json @@ -2350,7 +2350,7 @@ "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must match the call that provided the page token.", + "description": "A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListFirebaseLinks` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -2956,7 +2956,7 @@ } } }, - "revision": "20221101", + "revision": "20221201", "rootUrl": "https://analyticsadmin.googleapis.com/", "schemas": { "GoogleAnalyticsAdminV1alphaAccessBetweenFilter": { @@ -4070,6 +4070,54 @@ }, "type": "object" }, + "GoogleAnalyticsAdminV1alphaBigQueryLink": { + "description": "A link between a GA4 Property and BigQuery project.", + "id": "GoogleAnalyticsAdminV1alphaBigQueryLink", + "properties": { + "createTime": { + "description": "Output only. Time when the link was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "dailyExportEnabled": { + "description": "If set true, enables daily data export to the linked Google Cloud project.", + "type": "boolean" + }, + "excludedEvents": { + "description": "The list of event names that will be excluded from exports.", + "items": { + "type": "string" + }, + "type": "array" + }, + "exportStreams": { + "description": "The list of streams under the parent property for which data will be exported. Format: properties/{property_id}/dataStreams/{stream_id} Example: ['properties/1000/dataStreams/2000']", + "items": { + "type": "string" + }, + "type": "array" + }, + "includeAdvertisingId": { + "description": "If set true, exported data will include advertising identifiers for mobile app streams.", + "type": "boolean" + }, + "name": { + "description": "Output only. Resource name of this BigQuery link. Format: 'properties/{property_id}/bigQueryLinks/{bigquery_link_id}' Format: 'properties/1234/bigQueryLinks/abc567'", + "readOnly": true, + "type": "string" + }, + "project": { + "description": "Immutable. The linked Google Cloud project. When creating a BigQueryLink, you may provide this resource name using either a project number or project ID. Once this resource has been created, the returned project will always have a project that contains a project number. Format: 'projects/{project number}' Example: 'projects/1234'", + "type": "string" + }, + "streamingExportEnabled": { + "description": "If set true, enables streaming export to the linked Google Cloud project.", + "type": "boolean" + } + }, + "type": "object" + }, "GoogleAnalyticsAdminV1alphaCancelDisplayVideo360AdvertiserLinkProposalRequest": { "description": "Request message for CancelDisplayVideo360AdvertiserLinkProposal RPC.", "id": "GoogleAnalyticsAdminV1alphaCancelDisplayVideo360AdvertiserLinkProposalRequest", @@ -4123,6 +4171,10 @@ "$ref": "GoogleAnalyticsAdminV1alphaAttributionSettings", "description": "A snapshot of AttributionSettings resource in change history." }, + "bigqueryLink": { + "$ref": "GoogleAnalyticsAdminV1alphaBigQueryLink", + "description": "A snapshot of a BigQuery link resource in change history." + }, "conversionEvent": { "$ref": "GoogleAnalyticsAdminV1alphaConversionEvent", "description": "A snapshot of a ConversionEvent resource in change history." diff --git a/analyticsadmin/v1alpha/analyticsadmin-gen.go b/analyticsadmin/v1alpha/analyticsadmin-gen.go index bbaef373323..0b1b48fd7aa 100644 --- a/analyticsadmin/v1alpha/analyticsadmin-gen.go +++ b/analyticsadmin/v1alpha/analyticsadmin-gen.go @@ -2374,6 +2374,70 @@ func (s *GoogleAnalyticsAdminV1alphaBatchUpdateUserLinksResponse) MarshalJSON() return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleAnalyticsAdminV1alphaBigQueryLink: A link between a GA4 +// Property and BigQuery project. +type GoogleAnalyticsAdminV1alphaBigQueryLink struct { + // CreateTime: Output only. Time when the link was created. + CreateTime string `json:"createTime,omitempty"` + + // DailyExportEnabled: If set true, enables daily data export to the + // linked Google Cloud project. + DailyExportEnabled bool `json:"dailyExportEnabled,omitempty"` + + // ExcludedEvents: The list of event names that will be excluded from + // exports. + ExcludedEvents []string `json:"excludedEvents,omitempty"` + + // ExportStreams: The list of streams under the parent property for + // which data will be exported. Format: + // properties/{property_id}/dataStreams/{stream_id} Example: + // ['properties/1000/dataStreams/2000'] + ExportStreams []string `json:"exportStreams,omitempty"` + + // IncludeAdvertisingId: If set true, exported data will include + // advertising identifiers for mobile app streams. + IncludeAdvertisingId bool `json:"includeAdvertisingId,omitempty"` + + // Name: Output only. Resource name of this BigQuery link. Format: + // 'properties/{property_id}/bigQueryLinks/{bigquery_link_id}' Format: + // 'properties/1234/bigQueryLinks/abc567' + Name string `json:"name,omitempty"` + + // Project: Immutable. The linked Google Cloud project. When creating a + // BigQueryLink, you may provide this resource name using either a + // project number or project ID. Once this resource has been created, + // the returned project will always have a project that contains a + // project number. Format: 'projects/{project number}' Example: + // 'projects/1234' + Project string `json:"project,omitempty"` + + // StreamingExportEnabled: If set true, enables streaming export to the + // linked Google Cloud project. + StreamingExportEnabled bool `json:"streamingExportEnabled,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 *GoogleAnalyticsAdminV1alphaBigQueryLink) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1alphaBigQueryLink + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleAnalyticsAdminV1alphaCancelDisplayVideo360AdvertiserLinkProposal // Request: Request message for // CancelDisplayVideo360AdvertiserLinkProposal RPC. @@ -2440,6 +2504,10 @@ type GoogleAnalyticsAdminV1alphaChangeHistoryChangeChangeHistoryResource struct // change history. AttributionSettings *GoogleAnalyticsAdminV1alphaAttributionSettings `json:"attributionSettings,omitempty"` + // BigqueryLink: A snapshot of a BigQuery link resource in change + // history. + BigqueryLink *GoogleAnalyticsAdminV1alphaBigQueryLink `json:"bigqueryLink,omitempty"` + // ConversionEvent: A snapshot of a ConversionEvent resource in change // history. ConversionEvent *GoogleAnalyticsAdminV1alphaConversionEvent `json:"conversionEvent,omitempty"` @@ -16887,7 +16955,7 @@ func (c *PropertiesFirebaseLinksListCall) PageSize(pageSize int64) *PropertiesFi // PageToken sets the optional parameter "pageToken": A page token, // received from a previous `ListFirebaseLinks` call. Provide this to // retrieve the subsequent page. When paginating, all other parameters -// provided to `ListProperties` must match the call that provided the +// provided to `ListFirebaseLinks` must match the call that provided the // page token. func (c *PropertiesFirebaseLinksListCall) PageToken(pageToken string) *PropertiesFirebaseLinksListCall { c.urlParams_.Set("pageToken", pageToken) @@ -17010,7 +17078,7 @@ func (c *PropertiesFirebaseLinksListCall) Do(opts ...googleapi.CallOption) (*Goo // "type": "integer" // }, // "pageToken": { - // "description": "A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must match the call that provided the page token.", + // "description": "A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListFirebaseLinks` must match the call that provided the page token.", // "location": "query", // "type": "string" // }, diff --git a/analyticsadmin/v1beta/analyticsadmin-api.json b/analyticsadmin/v1beta/analyticsadmin-api.json new file mode 100644 index 00000000000..34f5e88a065 --- /dev/null +++ b/analyticsadmin/v1beta/analyticsadmin-api.json @@ -0,0 +1,2692 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/analytics.edit": { + "description": "Edit Google Analytics management entities" + }, + "https://www.googleapis.com/auth/analytics.readonly": { + "description": "See and download your Google Analytics data" + } + } + } + }, + "basePath": "", + "baseUrl": "https://analyticsadmin.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Google Analytics Admin", + "description": "", + "discoveryVersion": "v1", + "documentationLink": "http://code.google.com/apis/analytics/docs/mgmt/home.html", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "analyticsadmin:v1beta", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://analyticsadmin.mtls.googleapis.com/", + "name": "analyticsadmin", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" + }, + "key": { + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "accountSummaries": { + "methods": { + "list": { + "description": "Returns summaries of all accounts accessible by the caller.", + "flatPath": "v1beta/accountSummaries", + "httpMethod": "GET", + "id": "analyticsadmin.accountSummaries.list", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "The maximum number of AccountSummary resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token, received from a previous `ListAccountSummaries` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccountSummaries` must match the call that provided the page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/accountSummaries", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaListAccountSummariesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + }, + "accounts": { + "methods": { + "delete": { + "description": "Marks target Account as soft-deleted (ie: \"trashed\") and returns it. This API does not have a method to restore soft-deleted accounts. However, they can be restored using the Trash Can UI. If the accounts are not restored before the expiration time, the account and all child resources (eg: Properties, GoogleAdsLinks, Streams, UserLinks) will be permanently purged. https://support.google.com/analytics/answer/6154772 Returns an error if the target is not found.", + "flatPath": "v1beta/accounts/{accountsId}", + "httpMethod": "DELETE", + "id": "analyticsadmin.accounts.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Account to soft-delete. Format: accounts/{account} Example: \"accounts/100\"", + "location": "path", + "pattern": "^accounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "get": { + "description": "Lookup for a single Account.", + "flatPath": "v1beta/accounts/{accountsId}", + "httpMethod": "GET", + "id": "analyticsadmin.accounts.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the account to lookup. Format: accounts/{account} Example: \"accounts/100\"", + "location": "path", + "pattern": "^accounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaAccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "getDataSharingSettings": { + "description": "Get data sharing settings on an account. Data sharing settings are singletons.", + "flatPath": "v1beta/accounts/{accountsId}/dataSharingSettings", + "httpMethod": "GET", + "id": "analyticsadmin.accounts.getDataSharingSettings", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the settings to lookup. Format: accounts/{account}/dataSharingSettings Example: \"accounts/1000/dataSharingSettings\"", + "location": "path", + "pattern": "^accounts/[^/]+/dataSharingSettings$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaDataSharingSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "list": { + "description": "Returns all accounts accessible by the caller. Note that these accounts might not currently have GA4 properties. Soft-deleted (ie: \"trashed\") accounts are excluded by default. Returns an empty list if no relevant accounts are found.", + "flatPath": "v1beta/accounts", + "httpMethod": "GET", + "id": "analyticsadmin.accounts.list", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "showDeleted": { + "description": "Whether to include soft-deleted (ie: \"trashed\") Accounts in the results. Accounts can be inspected to determine whether they are deleted or not.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta/accounts", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaListAccountsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Updates an account.", + "flatPath": "v1beta/accounts/{accountsId}", + "httpMethod": "PATCH", + "id": "analyticsadmin.accounts.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. Resource name of this account. Format: accounts/{account} Example: \"accounts/100\"", + "location": "path", + "pattern": "^accounts/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The list of fields to be updated. Field names must be in snake case (e.g., \"field_to_update\"). Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/{+name}", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaAccount" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaAccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "provisionAccountTicket": { + "description": "Requests a ticket for creating an account.", + "flatPath": "v1beta/accounts:provisionAccountTicket", + "httpMethod": "POST", + "id": "analyticsadmin.accounts.provisionAccountTicket", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta/accounts:provisionAccountTicket", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaProvisionAccountTicketRequest" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaProvisionAccountTicketResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "searchChangeHistoryEvents": { + "description": "Searches through all changes to an account or its children given the specified set of filters.", + "flatPath": "v1beta/accounts/{accountsId}:searchChangeHistoryEvents", + "httpMethod": "POST", + "id": "analyticsadmin.accounts.searchChangeHistoryEvents", + "parameterOrder": [ + "account" + ], + "parameters": { + "account": { + "description": "Required. The account resource for which to return change history resources.", + "location": "path", + "pattern": "^accounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+account}:searchChangeHistoryEvents", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsRequest" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + } + }, + "properties": { + "methods": { + "acknowledgeUserDataCollection": { + "description": "Acknowledges the terms of user data collection for the specified property. This acknowledgement must be completed (either in the Google Analytics UI or via this API) before MeasurementProtocolSecret resources may be created.", + "flatPath": "v1beta/properties/{propertiesId}:acknowledgeUserDataCollection", + "httpMethod": "POST", + "id": "analyticsadmin.properties.acknowledgeUserDataCollection", + "parameterOrder": [ + "property" + ], + "parameters": { + "property": { + "description": "Required. The property for which to acknowledge user data collection.", + "location": "path", + "pattern": "^properties/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+property}:acknowledgeUserDataCollection", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionRequest" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "create": { + "description": "Creates an \"GA4\" property with the specified location and attributes.", + "flatPath": "v1beta/properties", + "httpMethod": "POST", + "id": "analyticsadmin.properties.create", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta/properties", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaProperty" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaProperty" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "delete": { + "description": "Marks target Property as soft-deleted (ie: \"trashed\") and returns it. This API does not have a method to restore soft-deleted properties. However, they can be restored using the Trash Can UI. If the properties are not restored before the expiration time, the Property and all child resources (eg: GoogleAdsLinks, Streams, UserLinks) will be permanently purged. https://support.google.com/analytics/answer/6154772 Returns an error if the target is not found, or is not a GA4 Property.", + "flatPath": "v1beta/properties/{propertiesId}", + "httpMethod": "DELETE", + "id": "analyticsadmin.properties.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Property to soft-delete. Format: properties/{property_id} Example: \"properties/1000\"", + "location": "path", + "pattern": "^properties/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaProperty" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "get": { + "description": "Lookup for a single \"GA4\" Property.", + "flatPath": "v1beta/properties/{propertiesId}", + "httpMethod": "GET", + "id": "analyticsadmin.properties.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the property to lookup. Format: properties/{property_id} Example: \"properties/1000\"", + "location": "path", + "pattern": "^properties/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaProperty" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "getDataRetentionSettings": { + "description": "Returns the singleton data retention settings for this property.", + "flatPath": "v1beta/properties/{propertiesId}/dataRetentionSettings", + "httpMethod": "GET", + "id": "analyticsadmin.properties.getDataRetentionSettings", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the settings to lookup. Format: properties/{property}/dataRetentionSettings Example: \"properties/1000/dataRetentionSettings\"", + "location": "path", + "pattern": "^properties/[^/]+/dataRetentionSettings$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaDataRetentionSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "list": { + "description": "Returns child Properties under the specified parent Account. Only \"GA4\" properties will be returned. Properties will be excluded if the caller does not have access. Soft-deleted (ie: \"trashed\") properties are excluded by default. Returns an empty list if no relevant properties are found.", + "flatPath": "v1beta/properties", + "httpMethod": "GET", + "id": "analyticsadmin.properties.list", + "parameterOrder": [], + "parameters": { + "filter": { + "description": "Required. An expression for filtering the results of the request. Fields eligible for filtering are: `parent:`(The resource name of the parent account/property) or `ancestor:`(The resource name of the parent account) or `firebase_project:`(The id or number of the linked firebase project). Some examples of filters: ``` | Filter | Description | |-----------------------------|-------------------------------------------| | parent:accounts/123 | The account with account id: 123. | | parent:properties/123 | The property with property id: 123. | | ancestor:accounts/123 | The account with account id: 123. | | firebase_project:project-id | The firebase project with id: project-id. | | firebase_project:123 | The firebase project with number: 123. | ```", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token, received from a previous `ListProperties` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "showDeleted": { + "description": "Whether to include soft-deleted (ie: \"trashed\") Properties in the results. Properties can be inspected to determine whether they are deleted or not.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta/properties", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaListPropertiesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Updates a property.", + "flatPath": "v1beta/properties/{propertiesId}", + "httpMethod": "PATCH", + "id": "analyticsadmin.properties.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. Resource name of this property. Format: properties/{property_id} Example: \"properties/1000\"", + "location": "path", + "pattern": "^properties/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The list of fields to be updated. Field names must be in snake case (e.g., \"field_to_update\"). Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/{+name}", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaProperty" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaProperty" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "updateDataRetentionSettings": { + "description": "Updates the singleton data retention settings for this property.", + "flatPath": "v1beta/properties/{propertiesId}/dataRetentionSettings", + "httpMethod": "PATCH", + "id": "analyticsadmin.properties.updateDataRetentionSettings", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. Resource name for this DataRetentionSetting resource. Format: properties/{property}/dataRetentionSettings", + "location": "path", + "pattern": "^properties/[^/]+/dataRetentionSettings$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The list of fields to be updated. Field names must be in snake case (e.g., \"field_to_update\"). Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/{+name}", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaDataRetentionSettings" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaDataRetentionSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + }, + "resources": { + "conversionEvents": { + "methods": { + "create": { + "description": "Creates a conversion event with the specified attributes.", + "flatPath": "v1beta/properties/{propertiesId}/conversionEvents", + "httpMethod": "POST", + "id": "analyticsadmin.properties.conversionEvents.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the parent property where this conversion event will be created. Format: properties/123", + "location": "path", + "pattern": "^properties/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/conversionEvents", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaConversionEvent" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaConversionEvent" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "delete": { + "description": "Deletes a conversion event in a property.", + "flatPath": "v1beta/properties/{propertiesId}/conversionEvents/{conversionEventsId}", + "httpMethod": "DELETE", + "id": "analyticsadmin.properties.conversionEvents.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the conversion event to delete. Format: properties/{property}/conversionEvents/{conversion_event} Example: \"properties/123/conversionEvents/456\"", + "location": "path", + "pattern": "^properties/[^/]+/conversionEvents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "get": { + "description": "Retrieve a single conversion event.", + "flatPath": "v1beta/properties/{propertiesId}/conversionEvents/{conversionEventsId}", + "httpMethod": "GET", + "id": "analyticsadmin.properties.conversionEvents.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the conversion event to retrieve. Format: properties/{property}/conversionEvents/{conversion_event} Example: \"properties/123/conversionEvents/456\"", + "location": "path", + "pattern": "^properties/[^/]+/conversionEvents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaConversionEvent" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "list": { + "description": "Returns a list of conversion events in the specified parent property. Returns an empty list if no conversion events are found.", + "flatPath": "v1beta/properties/{propertiesId}/conversionEvents", + "httpMethod": "GET", + "id": "analyticsadmin.properties.conversionEvents.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token, received from a previous `ListConversionEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConversionEvents` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the parent property. Example: 'properties/123'", + "location": "path", + "pattern": "^properties/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/conversionEvents", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaListConversionEventsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + }, + "customDimensions": { + "methods": { + "archive": { + "description": "Archives a CustomDimension on a property.", + "flatPath": "v1beta/properties/{propertiesId}/customDimensions/{customDimensionsId}:archive", + "httpMethod": "POST", + "id": "analyticsadmin.properties.customDimensions.archive", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the CustomDimension to archive. Example format: properties/1234/customDimensions/5678", + "location": "path", + "pattern": "^properties/[^/]+/customDimensions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}:archive", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaArchiveCustomDimensionRequest" + }, + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "create": { + "description": "Creates a CustomDimension.", + "flatPath": "v1beta/properties/{propertiesId}/customDimensions", + "httpMethod": "POST", + "id": "analyticsadmin.properties.customDimensions.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Example format: properties/1234", + "location": "path", + "pattern": "^properties/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/customDimensions", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaCustomDimension" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaCustomDimension" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "get": { + "description": "Lookup for a single CustomDimension.", + "flatPath": "v1beta/properties/{propertiesId}/customDimensions/{customDimensionsId}", + "httpMethod": "GET", + "id": "analyticsadmin.properties.customDimensions.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the CustomDimension to get. Example format: properties/1234/customDimensions/5678", + "location": "path", + "pattern": "^properties/[^/]+/customDimensions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaCustomDimension" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "list": { + "description": "Lists CustomDimensions on a property.", + "flatPath": "v1beta/properties/{propertiesId}/customDimensions", + "httpMethod": "GET", + "id": "analyticsadmin.properties.customDimensions.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token, received from a previous `ListCustomDimensions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCustomDimensions` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Example format: properties/1234", + "location": "path", + "pattern": "^properties/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/customDimensions", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaListCustomDimensionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Updates a CustomDimension on a property.", + "flatPath": "v1beta/properties/{propertiesId}/customDimensions/{customDimensionsId}", + "httpMethod": "PATCH", + "id": "analyticsadmin.properties.customDimensions.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. Resource name for this CustomDimension resource. Format: properties/{property}/customDimensions/{customDimension}", + "location": "path", + "pattern": "^properties/[^/]+/customDimensions/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The list of fields to be updated. Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/{+name}", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaCustomDimension" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaCustomDimension" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + } + }, + "customMetrics": { + "methods": { + "archive": { + "description": "Archives a CustomMetric on a property.", + "flatPath": "v1beta/properties/{propertiesId}/customMetrics/{customMetricsId}:archive", + "httpMethod": "POST", + "id": "analyticsadmin.properties.customMetrics.archive", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the CustomMetric to archive. Example format: properties/1234/customMetrics/5678", + "location": "path", + "pattern": "^properties/[^/]+/customMetrics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}:archive", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaArchiveCustomMetricRequest" + }, + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "create": { + "description": "Creates a CustomMetric.", + "flatPath": "v1beta/properties/{propertiesId}/customMetrics", + "httpMethod": "POST", + "id": "analyticsadmin.properties.customMetrics.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Example format: properties/1234", + "location": "path", + "pattern": "^properties/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/customMetrics", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaCustomMetric" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaCustomMetric" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "get": { + "description": "Lookup for a single CustomMetric.", + "flatPath": "v1beta/properties/{propertiesId}/customMetrics/{customMetricsId}", + "httpMethod": "GET", + "id": "analyticsadmin.properties.customMetrics.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the CustomMetric to get. Example format: properties/1234/customMetrics/5678", + "location": "path", + "pattern": "^properties/[^/]+/customMetrics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaCustomMetric" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "list": { + "description": "Lists CustomMetrics on a property.", + "flatPath": "v1beta/properties/{propertiesId}/customMetrics", + "httpMethod": "GET", + "id": "analyticsadmin.properties.customMetrics.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token, received from a previous `ListCustomMetrics` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCustomMetrics` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Example format: properties/1234", + "location": "path", + "pattern": "^properties/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/customMetrics", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaListCustomMetricsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Updates a CustomMetric on a property.", + "flatPath": "v1beta/properties/{propertiesId}/customMetrics/{customMetricsId}", + "httpMethod": "PATCH", + "id": "analyticsadmin.properties.customMetrics.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. Resource name for this CustomMetric resource. Format: properties/{property}/customMetrics/{customMetric}", + "location": "path", + "pattern": "^properties/[^/]+/customMetrics/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The list of fields to be updated. Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/{+name}", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaCustomMetric" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaCustomMetric" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + } + }, + "dataStreams": { + "methods": { + "create": { + "description": "Creates a DataStream.", + "flatPath": "v1beta/properties/{propertiesId}/dataStreams", + "httpMethod": "POST", + "id": "analyticsadmin.properties.dataStreams.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Example format: properties/1234", + "location": "path", + "pattern": "^properties/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/dataStreams", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaDataStream" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaDataStream" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "delete": { + "description": "Deletes a DataStream on a property.", + "flatPath": "v1beta/properties/{propertiesId}/dataStreams/{dataStreamsId}", + "httpMethod": "DELETE", + "id": "analyticsadmin.properties.dataStreams.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the DataStream to delete. Example format: properties/1234/dataStreams/5678", + "location": "path", + "pattern": "^properties/[^/]+/dataStreams/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "get": { + "description": "Lookup for a single DataStream.", + "flatPath": "v1beta/properties/{propertiesId}/dataStreams/{dataStreamsId}", + "httpMethod": "GET", + "id": "analyticsadmin.properties.dataStreams.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the DataStream to get. Example format: properties/1234/dataStreams/5678", + "location": "path", + "pattern": "^properties/[^/]+/dataStreams/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaDataStream" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "list": { + "description": "Lists DataStreams on a property.", + "flatPath": "v1beta/properties/{propertiesId}/dataStreams", + "httpMethod": "GET", + "id": "analyticsadmin.properties.dataStreams.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token, received from a previous `ListDataStreams` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListDataStreams` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Example format: properties/1234", + "location": "path", + "pattern": "^properties/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/dataStreams", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaListDataStreamsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Updates a DataStream on a property.", + "flatPath": "v1beta/properties/{propertiesId}/dataStreams/{dataStreamsId}", + "httpMethod": "PATCH", + "id": "analyticsadmin.properties.dataStreams.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. Resource name of this Data Stream. Format: properties/{property_id}/dataStreams/{stream_id} Example: \"properties/1000/dataStreams/2000\"", + "location": "path", + "pattern": "^properties/[^/]+/dataStreams/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The list of fields to be updated. Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/{+name}", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaDataStream" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaDataStream" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + }, + "resources": { + "measurementProtocolSecrets": { + "methods": { + "create": { + "description": "Creates a measurement protocol secret.", + "flatPath": "v1beta/properties/{propertiesId}/dataStreams/{dataStreamsId}/measurementProtocolSecrets", + "httpMethod": "POST", + "id": "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource where this secret will be created. Format: properties/{property}/dataStreams/{dataStream}", + "location": "path", + "pattern": "^properties/[^/]+/dataStreams/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/measurementProtocolSecrets", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaMeasurementProtocolSecret" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaMeasurementProtocolSecret" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "delete": { + "description": "Deletes target MeasurementProtocolSecret.", + "flatPath": "v1beta/properties/{propertiesId}/dataStreams/{dataStreamsId}/measurementProtocolSecrets/{measurementProtocolSecretsId}", + "httpMethod": "DELETE", + "id": "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the MeasurementProtocolSecret to delete. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets/{measurementProtocolSecret}", + "location": "path", + "pattern": "^properties/[^/]+/dataStreams/[^/]+/measurementProtocolSecrets/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "get": { + "description": "Lookup for a single \"GA4\" MeasurementProtocolSecret.", + "flatPath": "v1beta/properties/{propertiesId}/dataStreams/{dataStreamsId}/measurementProtocolSecrets/{measurementProtocolSecretsId}", + "httpMethod": "GET", + "id": "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the measurement protocol secret to lookup. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets/{measurementProtocolSecret}", + "location": "path", + "pattern": "^properties/[^/]+/dataStreams/[^/]+/measurementProtocolSecrets/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaMeasurementProtocolSecret" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "list": { + "description": "Returns child MeasurementProtocolSecrets under the specified parent Property.", + "flatPath": "v1beta/properties/{propertiesId}/dataStreams/{dataStreamsId}/measurementProtocolSecrets", + "httpMethod": "GET", + "id": "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of resources to return. If unspecified, at most 10 resources will be returned. The maximum value is 10. Higher values will be coerced to the maximum.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token, received from a previous `ListMeasurementProtocolSecrets` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMeasurementProtocolSecrets` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the parent stream. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets", + "location": "path", + "pattern": "^properties/[^/]+/dataStreams/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/measurementProtocolSecrets", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaListMeasurementProtocolSecretsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Updates a measurement protocol secret.", + "flatPath": "v1beta/properties/{propertiesId}/dataStreams/{dataStreamsId}/measurementProtocolSecrets/{measurementProtocolSecretsId}", + "httpMethod": "PATCH", + "id": "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets/{measurementProtocolSecret}", + "location": "path", + "pattern": "^properties/[^/]+/dataStreams/[^/]+/measurementProtocolSecrets/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "The list of fields to be updated. Omitted fields will not be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/{+name}", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaMeasurementProtocolSecret" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaMeasurementProtocolSecret" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + } + } + } + }, + "firebaseLinks": { + "methods": { + "create": { + "description": "Creates a FirebaseLink. Properties can have at most one FirebaseLink.", + "flatPath": "v1beta/properties/{propertiesId}/firebaseLinks", + "httpMethod": "POST", + "id": "analyticsadmin.properties.firebaseLinks.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Format: properties/{property_id} Example: properties/1234", + "location": "path", + "pattern": "^properties/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/firebaseLinks", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaFirebaseLink" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaFirebaseLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "delete": { + "description": "Deletes a FirebaseLink on a property", + "flatPath": "v1beta/properties/{propertiesId}/firebaseLinks/{firebaseLinksId}", + "httpMethod": "DELETE", + "id": "analyticsadmin.properties.firebaseLinks.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Format: properties/{property_id}/firebaseLinks/{firebase_link_id} Example: properties/1234/firebaseLinks/5678", + "location": "path", + "pattern": "^properties/[^/]+/firebaseLinks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "list": { + "description": "Lists FirebaseLinks on a property. Properties can have at most one FirebaseLink.", + "flatPath": "v1beta/properties/{propertiesId}/firebaseLinks", + "httpMethod": "GET", + "id": "analyticsadmin.properties.firebaseLinks.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListFirebaseLinks` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Format: properties/{property_id} Example: properties/1234", + "location": "path", + "pattern": "^properties/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/firebaseLinks", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaListFirebaseLinksResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + } + } + }, + "googleAdsLinks": { + "methods": { + "create": { + "description": "Creates a GoogleAdsLink.", + "flatPath": "v1beta/properties/{propertiesId}/googleAdsLinks", + "httpMethod": "POST", + "id": "analyticsadmin.properties.googleAdsLinks.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Example format: properties/1234", + "location": "path", + "pattern": "^properties/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/googleAdsLinks", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaGoogleAdsLink" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaGoogleAdsLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "delete": { + "description": "Deletes a GoogleAdsLink on a property", + "flatPath": "v1beta/properties/{propertiesId}/googleAdsLinks/{googleAdsLinksId}", + "httpMethod": "DELETE", + "id": "analyticsadmin.properties.googleAdsLinks.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Example format: properties/1234/googleAdsLinks/5678", + "location": "path", + "pattern": "^properties/[^/]+/googleAdsLinks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "list": { + "description": "Lists GoogleAdsLinks on a property.", + "flatPath": "v1beta/properties/{propertiesId}/googleAdsLinks", + "httpMethod": "GET", + "id": "analyticsadmin.properties.googleAdsLinks.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token, received from a previous `ListGoogleAdsLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoogleAdsLinks` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Example format: properties/1234", + "location": "path", + "pattern": "^properties/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/googleAdsLinks", + "response": { + "$ref": "GoogleAnalyticsAdminV1betaListGoogleAdsLinksResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "description": "Updates a GoogleAdsLink on a property", + "flatPath": "v1beta/properties/{propertiesId}/googleAdsLinks/{googleAdsLinksId}", + "httpMethod": "PATCH", + "id": "analyticsadmin.properties.googleAdsLinks.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. Format: properties/{propertyId}/googleAdsLinks/{googleAdsLinkId} Note: googleAdsLinkId is not the Google Ads customer ID.", + "location": "path", + "pattern": "^properties/[^/]+/googleAdsLinks/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The list of fields to be updated. Field names must be in snake case (e.g., \"field_to_update\"). Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/{+name}", + "request": { + "$ref": "GoogleAnalyticsAdminV1betaGoogleAdsLink" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1betaGoogleAdsLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + } + } + } + } + }, + "revision": "20221201", + "rootUrl": "https://analyticsadmin.googleapis.com/", + "schemas": { + "GoogleAnalyticsAdminV1betaAccount": { + "description": "A resource message representing a Google Analytics account.", + "id": "GoogleAnalyticsAdminV1betaAccount", + "properties": { + "createTime": { + "description": "Output only. Time when this account was originally created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "deleted": { + "description": "Output only. Indicates whether this Account is soft-deleted or not. Deleted accounts are excluded from List results unless specifically requested.", + "readOnly": true, + "type": "boolean" + }, + "displayName": { + "description": "Required. Human-readable display name for this account.", + "type": "string" + }, + "name": { + "description": "Output only. Resource name of this account. Format: accounts/{account} Example: \"accounts/100\"", + "readOnly": true, + "type": "string" + }, + "regionCode": { + "description": "Country of business. Must be a Unicode CLDR region code.", + "type": "string" + }, + "updateTime": { + "description": "Output only. Time when account payload fields were last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaAccountSummary": { + "description": "A virtual resource representing an overview of an account and all its child GA4 properties.", + "id": "GoogleAnalyticsAdminV1betaAccountSummary", + "properties": { + "account": { + "description": "Resource name of account referred to by this account summary Format: accounts/{account_id} Example: \"accounts/1000\"", + "type": "string" + }, + "displayName": { + "description": "Display name for the account referred to in this account summary.", + "type": "string" + }, + "name": { + "description": "Resource name for this account summary. Format: accountSummaries/{account_id} Example: \"accountSummaries/1000\"", + "type": "string" + }, + "propertySummaries": { + "description": "List of summaries for child accounts of this account.", + "items": { + "$ref": "GoogleAnalyticsAdminV1betaPropertySummary" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionRequest": { + "description": "Request message for AcknowledgeUserDataCollection RPC.", + "id": "GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionRequest", + "properties": { + "acknowledgement": { + "description": "Required. An acknowledgement that the caller of this method understands the terms of user data collection. This field must contain the exact value: \"I acknowledge that I have the necessary privacy disclosures and rights from my end users for the collection and processing of their data, including the association of such data with the visitation information Google Analytics collects from my site and/or app property.\"", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionResponse": { + "description": "Response message for AcknowledgeUserDataCollection RPC.", + "id": "GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionResponse", + "properties": {}, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaArchiveCustomDimensionRequest": { + "description": "Request message for ArchiveCustomDimension RPC.", + "id": "GoogleAnalyticsAdminV1betaArchiveCustomDimensionRequest", + "properties": {}, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaArchiveCustomMetricRequest": { + "description": "Request message for ArchiveCustomMetric RPC.", + "id": "GoogleAnalyticsAdminV1betaArchiveCustomMetricRequest", + "properties": {}, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaChangeHistoryChange": { + "description": "A description of a change to a single Google Analytics resource.", + "id": "GoogleAnalyticsAdminV1betaChangeHistoryChange", + "properties": { + "action": { + "description": "The type of action that changed this resource.", + "enum": [ + "ACTION_TYPE_UNSPECIFIED", + "CREATED", + "UPDATED", + "DELETED" + ], + "enumDescriptions": [ + "Action type unknown or not specified.", + "Resource was created in this change.", + "Resource was updated in this change.", + "Resource was deleted in this change." + ], + "type": "string" + }, + "resource": { + "description": "Resource name of the resource whose changes are described by this entry.", + "type": "string" + }, + "resourceAfterChange": { + "$ref": "GoogleAnalyticsAdminV1betaChangeHistoryChangeChangeHistoryResource", + "description": "Resource contents from after the change was made. If this resource was deleted in this change, this field will be missing." + }, + "resourceBeforeChange": { + "$ref": "GoogleAnalyticsAdminV1betaChangeHistoryChangeChangeHistoryResource", + "description": "Resource contents from before the change was made. If this resource was created in this change, this field will be missing." + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaChangeHistoryChangeChangeHistoryResource": { + "description": "A snapshot of a resource as before or after the result of a change in change history.", + "id": "GoogleAnalyticsAdminV1betaChangeHistoryChangeChangeHistoryResource", + "properties": { + "account": { + "$ref": "GoogleAnalyticsAdminV1betaAccount", + "description": "A snapshot of an Account resource in change history." + }, + "conversionEvent": { + "$ref": "GoogleAnalyticsAdminV1betaConversionEvent", + "description": "A snapshot of a ConversionEvent resource in change history." + }, + "dataRetentionSettings": { + "$ref": "GoogleAnalyticsAdminV1betaDataRetentionSettings", + "description": "A snapshot of a data retention settings resource in change history." + }, + "dataStream": { + "$ref": "GoogleAnalyticsAdminV1betaDataStream", + "description": "A snapshot of a DataStream resource in change history." + }, + "firebaseLink": { + "$ref": "GoogleAnalyticsAdminV1betaFirebaseLink", + "description": "A snapshot of a FirebaseLink resource in change history." + }, + "googleAdsLink": { + "$ref": "GoogleAnalyticsAdminV1betaGoogleAdsLink", + "description": "A snapshot of a GoogleAdsLink resource in change history." + }, + "measurementProtocolSecret": { + "$ref": "GoogleAnalyticsAdminV1betaMeasurementProtocolSecret", + "description": "A snapshot of a MeasurementProtocolSecret resource in change history." + }, + "property": { + "$ref": "GoogleAnalyticsAdminV1betaProperty", + "description": "A snapshot of a Property resource in change history." + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaChangeHistoryEvent": { + "description": "A set of changes within a Google Analytics account or its child properties that resulted from the same cause. Common causes would be updates made in the Google Analytics UI, changes from customer support, or automatic Google Analytics system changes.", + "id": "GoogleAnalyticsAdminV1betaChangeHistoryEvent", + "properties": { + "actorType": { + "description": "The type of actor that made this change.", + "enum": [ + "ACTOR_TYPE_UNSPECIFIED", + "USER", + "SYSTEM", + "SUPPORT" + ], + "enumDescriptions": [ + "Unknown or unspecified actor type.", + "Changes made by the user specified in actor_email.", + "Changes made by the Google Analytics system.", + "Changes made by Google Analytics support team staff." + ], + "type": "string" + }, + "changeTime": { + "description": "Time when change was made.", + "format": "google-datetime", + "type": "string" + }, + "changes": { + "description": "A list of changes made in this change history event that fit the filters specified in SearchChangeHistoryEventsRequest.", + "items": { + "$ref": "GoogleAnalyticsAdminV1betaChangeHistoryChange" + }, + "type": "array" + }, + "changesFiltered": { + "description": "If true, then the list of changes returned was filtered, and does not represent all changes that occurred in this event.", + "type": "boolean" + }, + "id": { + "description": "ID of this change history event. This ID is unique across Google Analytics.", + "type": "string" + }, + "userActorEmail": { + "description": "Email address of the Google account that made the change. This will be a valid email address if the actor field is set to USER, and empty otherwise. Google accounts that have been deleted will cause an error.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaConversionEvent": { + "description": "A conversion event in a Google Analytics property.", + "id": "GoogleAnalyticsAdminV1betaConversionEvent", + "properties": { + "createTime": { + "description": "Output only. Time when this conversion event was created in the property.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "custom": { + "description": "Output only. If set to true, this conversion event refers to a custom event. If set to false, this conversion event refers to a default event in GA. Default events typically have special meaning in GA. Default events are usually created for you by the GA system, but in some cases can be created by property admins. Custom events count towards the maximum number of custom conversion events that may be created per property.", + "readOnly": true, + "type": "boolean" + }, + "deletable": { + "description": "Output only. If set, this event can currently be deleted via DeleteConversionEvent.", + "readOnly": true, + "type": "boolean" + }, + "eventName": { + "description": "Immutable. The event name for this conversion event. Examples: 'click', 'purchase'", + "type": "string" + }, + "name": { + "description": "Output only. Resource name of this conversion event. Format: properties/{property}/conversionEvents/{conversion_event}", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaCustomDimension": { + "description": "A definition for a CustomDimension.", + "id": "GoogleAnalyticsAdminV1betaCustomDimension", + "properties": { + "description": { + "description": "Optional. Description for this custom dimension. Max length of 150 characters.", + "type": "string" + }, + "disallowAdsPersonalization": { + "description": "Optional. If set to true, sets this dimension as NPA and excludes it from ads personalization. This is currently only supported by user-scoped custom dimensions.", + "type": "boolean" + }, + "displayName": { + "description": "Required. Display name for this custom dimension as shown in the Analytics UI. Max length of 82 characters, alphanumeric plus space and underscore starting with a letter. Legacy system-generated display names may contain square brackets, but updates to this field will never permit square brackets.", + "type": "string" + }, + "name": { + "description": "Output only. Resource name for this CustomDimension resource. Format: properties/{property}/customDimensions/{customDimension}", + "readOnly": true, + "type": "string" + }, + "parameterName": { + "description": "Required. Immutable. Tagging parameter name for this custom dimension. If this is a user-scoped dimension, then this is the user property name. If this is an event-scoped dimension, then this is the event parameter name. May only contain alphanumeric and underscore characters, starting with a letter. Max length of 24 characters for user-scoped dimensions, 40 characters for event-scoped dimensions.", + "type": "string" + }, + "scope": { + "description": "Required. Immutable. The scope of this dimension.", + "enum": [ + "DIMENSION_SCOPE_UNSPECIFIED", + "EVENT", + "USER" + ], + "enumDescriptions": [ + "Scope unknown or not specified.", + "Dimension scoped to an event.", + "Dimension scoped to a user." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaCustomMetric": { + "description": "A definition for a custom metric.", + "id": "GoogleAnalyticsAdminV1betaCustomMetric", + "properties": { + "description": { + "description": "Optional. Description for this custom dimension. Max length of 150 characters.", + "type": "string" + }, + "displayName": { + "description": "Required. Display name for this custom metric as shown in the Analytics UI. Max length of 82 characters, alphanumeric plus space and underscore starting with a letter. Legacy system-generated display names may contain square brackets, but updates to this field will never permit square brackets.", + "type": "string" + }, + "measurementUnit": { + "description": "Required. The type for the custom metric's value.", + "enum": [ + "MEASUREMENT_UNIT_UNSPECIFIED", + "STANDARD", + "CURRENCY", + "FEET", + "METERS", + "KILOMETERS", + "MILES", + "MILLISECONDS", + "SECONDS", + "MINUTES", + "HOURS" + ], + "enumDescriptions": [ + "MeasurementUnit unspecified or missing.", + "This metric uses default units.", + "This metric measures a currency.", + "This metric measures feet.", + "This metric measures meters.", + "This metric measures kilometers.", + "This metric measures miles.", + "This metric measures milliseconds.", + "This metric measures seconds.", + "This metric measures minutes.", + "This metric measures hours." + ], + "type": "string" + }, + "name": { + "description": "Output only. Resource name for this CustomMetric resource. Format: properties/{property}/customMetrics/{customMetric}", + "readOnly": true, + "type": "string" + }, + "parameterName": { + "description": "Required. Immutable. Tagging name for this custom metric. If this is an event-scoped metric, then this is the event parameter name. May only contain alphanumeric and underscore charactes, starting with a letter. Max length of 40 characters for event-scoped metrics.", + "type": "string" + }, + "restrictedMetricType": { + "description": "Optional. Types of restricted data that this metric may contain. Required for metrics with CURRENCY measurement unit. Must be empty for metrics with a non-CURRENCY measurement unit.", + "items": { + "enum": [ + "RESTRICTED_METRIC_TYPE_UNSPECIFIED", + "COST_DATA", + "REVENUE_DATA" + ], + "enumDescriptions": [ + "Type unknown or unspecified.", + "Metric reports cost data.", + "Metric reports revenue data." + ], + "type": "string" + }, + "type": "array" + }, + "scope": { + "description": "Required. Immutable. The scope of this custom metric.", + "enum": [ + "METRIC_SCOPE_UNSPECIFIED", + "EVENT" + ], + "enumDescriptions": [ + "Scope unknown or not specified.", + "Metric scoped to an event." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaDataRetentionSettings": { + "description": "Settings values for data retention. This is a singleton resource.", + "id": "GoogleAnalyticsAdminV1betaDataRetentionSettings", + "properties": { + "eventDataRetention": { + "description": "The length of time that event-level data is retained.", + "enum": [ + "RETENTION_DURATION_UNSPECIFIED", + "TWO_MONTHS", + "FOURTEEN_MONTHS", + "TWENTY_SIX_MONTHS", + "THIRTY_EIGHT_MONTHS", + "FIFTY_MONTHS" + ], + "enumDescriptions": [ + "Data retention time duration is not specified.", + "The data retention time duration is 2 months.", + "The data retention time duration is 14 months.", + "The data retention time duration is 26 months. Available to 360 properties only.", + "The data retention time duration is 38 months. Available to 360 properties only.", + "The data retention time duration is 50 months. Available to 360 properties only." + ], + "type": "string" + }, + "name": { + "description": "Output only. Resource name for this DataRetentionSetting resource. Format: properties/{property}/dataRetentionSettings", + "readOnly": true, + "type": "string" + }, + "resetUserDataOnNewActivity": { + "description": "If true, reset the retention period for the user identifier with every event from that user.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaDataSharingSettings": { + "description": "A resource message representing data sharing settings of a Google Analytics account.", + "id": "GoogleAnalyticsAdminV1betaDataSharingSettings", + "properties": { + "name": { + "description": "Output only. Resource name. Format: accounts/{account}/dataSharingSettings Example: \"accounts/1000/dataSharingSettings\"", + "readOnly": true, + "type": "string" + }, + "sharingWithGoogleAnySalesEnabled": { + "description": "Allows any of Google sales to access the data in order to suggest configuration changes to improve results.", + "type": "boolean" + }, + "sharingWithGoogleAssignedSalesEnabled": { + "description": "Allows Google sales teams that are assigned to the customer to access the data in order to suggest configuration changes to improve results. Sales team restrictions still apply when enabled.", + "type": "boolean" + }, + "sharingWithGoogleProductsEnabled": { + "description": "Allows Google to use the data to improve other Google products or services.", + "type": "boolean" + }, + "sharingWithGoogleSupportEnabled": { + "description": "Allows Google support to access the data in order to help troubleshoot issues.", + "type": "boolean" + }, + "sharingWithOthersEnabled": { + "description": "Allows Google to share the data anonymously in aggregate form with others.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaDataStream": { + "description": "A resource message representing a data stream.", + "id": "GoogleAnalyticsAdminV1betaDataStream", + "properties": { + "androidAppStreamData": { + "$ref": "GoogleAnalyticsAdminV1betaDataStreamAndroidAppStreamData", + "description": "Data specific to Android app streams. Must be populated if type is ANDROID_APP_DATA_STREAM." + }, + "createTime": { + "description": "Output only. Time when this stream was originally created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Human-readable display name for the Data Stream. Required for web data streams. The max allowed display name length is 255 UTF-16 code units.", + "type": "string" + }, + "iosAppStreamData": { + "$ref": "GoogleAnalyticsAdminV1betaDataStreamIosAppStreamData", + "description": "Data specific to iOS app streams. Must be populated if type is IOS_APP_DATA_STREAM." + }, + "name": { + "description": "Output only. Resource name of this Data Stream. Format: properties/{property_id}/dataStreams/{stream_id} Example: \"properties/1000/dataStreams/2000\"", + "readOnly": true, + "type": "string" + }, + "type": { + "description": "Required. Immutable. The type of this DataStream resource.", + "enum": [ + "DATA_STREAM_TYPE_UNSPECIFIED", + "WEB_DATA_STREAM", + "ANDROID_APP_DATA_STREAM", + "IOS_APP_DATA_STREAM" + ], + "enumDescriptions": [ + "Type unknown or not specified.", + "Web data stream.", + "Android app data stream.", + "iOS app data stream." + ], + "type": "string" + }, + "updateTime": { + "description": "Output only. Time when stream payload fields were last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "webStreamData": { + "$ref": "GoogleAnalyticsAdminV1betaDataStreamWebStreamData", + "description": "Data specific to web streams. Must be populated if type is WEB_DATA_STREAM." + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaDataStreamAndroidAppStreamData": { + "description": "Data specific to Android app streams.", + "id": "GoogleAnalyticsAdminV1betaDataStreamAndroidAppStreamData", + "properties": { + "firebaseAppId": { + "description": "Output only. ID of the corresponding Android app in Firebase, if any. This ID can change if the Android app is deleted and recreated.", + "readOnly": true, + "type": "string" + }, + "packageName": { + "description": "Immutable. The package name for the app being measured. Example: \"com.example.myandroidapp\"", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaDataStreamIosAppStreamData": { + "description": "Data specific to iOS app streams.", + "id": "GoogleAnalyticsAdminV1betaDataStreamIosAppStreamData", + "properties": { + "bundleId": { + "description": "Required. Immutable. The Apple App Store Bundle ID for the app Example: \"com.example.myiosapp\"", + "type": "string" + }, + "firebaseAppId": { + "description": "Output only. ID of the corresponding iOS app in Firebase, if any. This ID can change if the iOS app is deleted and recreated.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaDataStreamWebStreamData": { + "description": "Data specific to web streams.", + "id": "GoogleAnalyticsAdminV1betaDataStreamWebStreamData", + "properties": { + "defaultUri": { + "description": "Immutable. Domain name of the web app being measured, or empty. Example: \"http://www.google.com\", \"https://www.google.com\"", + "type": "string" + }, + "firebaseAppId": { + "description": "Output only. ID of the corresponding web app in Firebase, if any. This ID can change if the web app is deleted and recreated.", + "readOnly": true, + "type": "string" + }, + "measurementId": { + "description": "Output only. Analytics \"Measurement ID\", without the \"G-\" prefix. Example: \"G-1A2BCD345E\" would just be \"1A2BCD345E\"", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaFirebaseLink": { + "description": "A link between a GA4 property and a Firebase project.", + "id": "GoogleAnalyticsAdminV1betaFirebaseLink", + "properties": { + "createTime": { + "description": "Output only. Time when this FirebaseLink was originally created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Output only. Example format: properties/1234/firebaseLinks/5678", + "readOnly": true, + "type": "string" + }, + "project": { + "description": "Immutable. Firebase project resource name. When creating a FirebaseLink, you may provide this resource name using either a project number or project ID. Once this resource has been created, returned FirebaseLinks will always have a project_name that contains a project number. Format: 'projects/{project number}' Example: 'projects/1234'", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaGoogleAdsLink": { + "description": "A link between a GA4 property and a Google Ads account.", + "id": "GoogleAnalyticsAdminV1betaGoogleAdsLink", + "properties": { + "adsPersonalizationEnabled": { + "description": "Enable personalized advertising features with this integration. Automatically publish my Google Analytics audience lists and Google Analytics remarketing events/parameters to the linked Google Ads account. If this field is not set on create/update, it will be defaulted to true.", + "type": "boolean" + }, + "canManageClients": { + "description": "Output only. If true, this link is for a Google Ads manager account.", + "readOnly": true, + "type": "boolean" + }, + "createTime": { + "description": "Output only. Time when this link was originally created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "creatorEmailAddress": { + "description": "Output only. Email address of the user that created the link. An empty string will be returned if the email address can't be retrieved.", + "readOnly": true, + "type": "string" + }, + "customerId": { + "description": "Immutable. Google Ads customer ID.", + "type": "string" + }, + "name": { + "description": "Output only. Format: properties/{propertyId}/googleAdsLinks/{googleAdsLinkId} Note: googleAdsLinkId is not the Google Ads customer ID.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Time when this link was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaListAccountSummariesResponse": { + "description": "Response message for ListAccountSummaries RPC.", + "id": "GoogleAnalyticsAdminV1betaListAccountSummariesResponse", + "properties": { + "accountSummaries": { + "description": "Account summaries of all accounts the caller has access to.", + "items": { + "$ref": "GoogleAnalyticsAdminV1betaAccountSummary" + }, + "type": "array" + }, + "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" + }, + "GoogleAnalyticsAdminV1betaListAccountsResponse": { + "description": "Request message for ListAccounts RPC.", + "id": "GoogleAnalyticsAdminV1betaListAccountsResponse", + "properties": { + "accounts": { + "description": "Results that were accessible to the caller.", + "items": { + "$ref": "GoogleAnalyticsAdminV1betaAccount" + }, + "type": "array" + }, + "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" + }, + "GoogleAnalyticsAdminV1betaListConversionEventsResponse": { + "description": "Response message for ListConversionEvents RPC.", + "id": "GoogleAnalyticsAdminV1betaListConversionEventsResponse", + "properties": { + "conversionEvents": { + "description": "The requested conversion events", + "items": { + "$ref": "GoogleAnalyticsAdminV1betaConversionEvent" + }, + "type": "array" + }, + "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" + }, + "GoogleAnalyticsAdminV1betaListCustomDimensionsResponse": { + "description": "Response message for ListCustomDimensions RPC.", + "id": "GoogleAnalyticsAdminV1betaListCustomDimensionsResponse", + "properties": { + "customDimensions": { + "description": "List of CustomDimensions.", + "items": { + "$ref": "GoogleAnalyticsAdminV1betaCustomDimension" + }, + "type": "array" + }, + "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" + }, + "GoogleAnalyticsAdminV1betaListCustomMetricsResponse": { + "description": "Response message for ListCustomMetrics RPC.", + "id": "GoogleAnalyticsAdminV1betaListCustomMetricsResponse", + "properties": { + "customMetrics": { + "description": "List of CustomMetrics.", + "items": { + "$ref": "GoogleAnalyticsAdminV1betaCustomMetric" + }, + "type": "array" + }, + "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" + }, + "GoogleAnalyticsAdminV1betaListDataStreamsResponse": { + "description": "Response message for ListDataStreams RPC.", + "id": "GoogleAnalyticsAdminV1betaListDataStreamsResponse", + "properties": { + "dataStreams": { + "description": "List of DataStreams.", + "items": { + "$ref": "GoogleAnalyticsAdminV1betaDataStream" + }, + "type": "array" + }, + "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" + }, + "GoogleAnalyticsAdminV1betaListFirebaseLinksResponse": { + "description": "Response message for ListFirebaseLinks RPC", + "id": "GoogleAnalyticsAdminV1betaListFirebaseLinksResponse", + "properties": { + "firebaseLinks": { + "description": "List of FirebaseLinks. This will have at most one value.", + "items": { + "$ref": "GoogleAnalyticsAdminV1betaFirebaseLink" + }, + "type": "array" + }, + "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. Currently, Google Analytics supports only one FirebaseLink per property, so this will never be populated.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaListGoogleAdsLinksResponse": { + "description": "Response message for ListGoogleAdsLinks RPC.", + "id": "GoogleAnalyticsAdminV1betaListGoogleAdsLinksResponse", + "properties": { + "googleAdsLinks": { + "description": "List of GoogleAdsLinks.", + "items": { + "$ref": "GoogleAnalyticsAdminV1betaGoogleAdsLink" + }, + "type": "array" + }, + "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" + }, + "GoogleAnalyticsAdminV1betaListMeasurementProtocolSecretsResponse": { + "description": "Response message for ListMeasurementProtocolSecret RPC", + "id": "GoogleAnalyticsAdminV1betaListMeasurementProtocolSecretsResponse", + "properties": { + "measurementProtocolSecrets": { + "description": "A list of secrets for the parent stream specified in the request.", + "items": { + "$ref": "GoogleAnalyticsAdminV1betaMeasurementProtocolSecret" + }, + "type": "array" + }, + "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" + }, + "GoogleAnalyticsAdminV1betaListPropertiesResponse": { + "description": "Response message for ListProperties RPC.", + "id": "GoogleAnalyticsAdminV1betaListPropertiesResponse", + "properties": { + "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" + }, + "properties": { + "description": "Results that matched the filter criteria and were accessible to the caller.", + "items": { + "$ref": "GoogleAnalyticsAdminV1betaProperty" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaMeasurementProtocolSecret": { + "description": "A secret value used for sending hits to Measurement Protocol.", + "id": "GoogleAnalyticsAdminV1betaMeasurementProtocolSecret", + "properties": { + "displayName": { + "description": "Required. Human-readable display name for this secret.", + "type": "string" + }, + "name": { + "description": "Output only. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets/{measurementProtocolSecret}", + "readOnly": true, + "type": "string" + }, + "secretValue": { + "description": "Output only. The measurement protocol secret value. Pass this value to the api_secret field of the Measurement Protocol API when sending hits to this secret's parent property.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaProperty": { + "description": "A resource message representing a Google Analytics GA4 property.", + "id": "GoogleAnalyticsAdminV1betaProperty", + "properties": { + "account": { + "description": "Immutable. The resource name of the parent account Format: accounts/{account_id} Example: \"accounts/123\"", + "type": "string" + }, + "createTime": { + "description": "Output only. Time when the entity was originally created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "currencyCode": { + "description": "The currency type used in reports involving monetary values. Format: https://en.wikipedia.org/wiki/ISO_4217 Examples: \"USD\", \"EUR\", \"JPY\"", + "type": "string" + }, + "deleteTime": { + "description": "Output only. If set, the time at which this property was trashed. If not set, then this property is not currently in the trash can.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Required. Human-readable display name for this property. The max allowed display name length is 100 UTF-16 code units.", + "type": "string" + }, + "expireTime": { + "description": "Output only. If set, the time at which this trashed property will be permanently deleted. If not set, then this property is not currently in the trash can and is not slated to be deleted.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "industryCategory": { + "description": "Industry associated with this property Example: AUTOMOTIVE, FOOD_AND_DRINK", + "enum": [ + "INDUSTRY_CATEGORY_UNSPECIFIED", + "AUTOMOTIVE", + "BUSINESS_AND_INDUSTRIAL_MARKETS", + "FINANCE", + "HEALTHCARE", + "TECHNOLOGY", + "TRAVEL", + "OTHER", + "ARTS_AND_ENTERTAINMENT", + "BEAUTY_AND_FITNESS", + "BOOKS_AND_LITERATURE", + "FOOD_AND_DRINK", + "GAMES", + "HOBBIES_AND_LEISURE", + "HOME_AND_GARDEN", + "INTERNET_AND_TELECOM", + "LAW_AND_GOVERNMENT", + "NEWS", + "ONLINE_COMMUNITIES", + "PEOPLE_AND_SOCIETY", + "PETS_AND_ANIMALS", + "REAL_ESTATE", + "REFERENCE", + "SCIENCE", + "SPORTS", + "JOBS_AND_EDUCATION", + "SHOPPING" + ], + "enumDescriptions": [ + "Industry category unspecified", + "Automotive", + "Business and industrial markets", + "Finance", + "Healthcare", + "Technology", + "Travel", + "Other", + "Arts and entertainment", + "Beauty and fitness", + "Books and literature", + "Food and drink", + "Games", + "Hobbies and leisure", + "Home and garden", + "Internet and telecom", + "Law and government", + "News", + "Online communities", + "People and society", + "Pets and animals", + "Real estate", + "Reference", + "Science", + "Sports", + "Jobs and education", + "Shopping" + ], + "type": "string" + }, + "name": { + "description": "Output only. Resource name of this property. Format: properties/{property_id} Example: \"properties/1000\"", + "readOnly": true, + "type": "string" + }, + "parent": { + "description": "Immutable. Resource name of this property's logical parent. Note: The Property-Moving UI can be used to change the parent. Format: accounts/{account}, properties/{property} Example: \"accounts/100\", \"properties/101\"", + "type": "string" + }, + "propertyType": { + "description": "Immutable. The property type for this Property resource. When creating a property, if the type is \"PROPERTY_TYPE_UNSPECIFIED\", then \"ORDINARY_PROPERTY\" will be implied. \"SUBPROPERTY\" and \"ROLLUP_PROPERTY\" types cannot yet be created via Google Analytics Admin API.", + "enum": [ + "PROPERTY_TYPE_UNSPECIFIED", + "PROPERTY_TYPE_ORDINARY", + "PROPERTY_TYPE_SUBPROPERTY", + "PROPERTY_TYPE_ROLLUP" + ], + "enumDescriptions": [ + "Unknown or unspecified property type", + "Ordinary GA4 property", + "GA4 subproperty", + "GA4 rollup property" + ], + "type": "string" + }, + "serviceLevel": { + "description": "Output only. The Google Analytics service level that applies to this property.", + "enum": [ + "SERVICE_LEVEL_UNSPECIFIED", + "GOOGLE_ANALYTICS_STANDARD", + "GOOGLE_ANALYTICS_360" + ], + "enumDescriptions": [ + "Service level not specified or invalid.", + "The standard version of Google Analytics.", + "The paid, premium version of Google Analytics." + ], + "readOnly": true, + "type": "string" + }, + "timeZone": { + "description": "Required. Reporting Time Zone, used as the day boundary for reports, regardless of where the data originates. If the time zone honors DST, Analytics will automatically adjust for the changes. NOTE: Changing the time zone only affects data going forward, and is not applied retroactively. Format: https://www.iana.org/time-zones Example: \"America/Los_Angeles\"", + "type": "string" + }, + "updateTime": { + "description": "Output only. Time when entity payload fields were last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaPropertySummary": { + "description": "A virtual resource representing metadata for a GA4 property.", + "id": "GoogleAnalyticsAdminV1betaPropertySummary", + "properties": { + "displayName": { + "description": "Display name for the property referred to in this property summary.", + "type": "string" + }, + "parent": { + "description": "Resource name of this property's logical parent. Note: The Property-Moving UI can be used to change the parent. Format: accounts/{account}, properties/{property} Example: \"accounts/100\", \"properties/200\"", + "type": "string" + }, + "property": { + "description": "Resource name of property referred to by this property summary Format: properties/{property_id} Example: \"properties/1000\"", + "type": "string" + }, + "propertyType": { + "description": "The property's property type.", + "enum": [ + "PROPERTY_TYPE_UNSPECIFIED", + "PROPERTY_TYPE_ORDINARY", + "PROPERTY_TYPE_SUBPROPERTY", + "PROPERTY_TYPE_ROLLUP" + ], + "enumDescriptions": [ + "Unknown or unspecified property type", + "Ordinary GA4 property", + "GA4 subproperty", + "GA4 rollup property" + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaProvisionAccountTicketRequest": { + "description": "Request message for ProvisionAccountTicket RPC.", + "id": "GoogleAnalyticsAdminV1betaProvisionAccountTicketRequest", + "properties": { + "account": { + "$ref": "GoogleAnalyticsAdminV1betaAccount", + "description": "The account to create." + }, + "redirectUri": { + "description": "Redirect URI where the user will be sent after accepting Terms of Service. Must be configured in Developers Console as a Redirect URI", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaProvisionAccountTicketResponse": { + "description": "Response message for ProvisionAccountTicket RPC.", + "id": "GoogleAnalyticsAdminV1betaProvisionAccountTicketResponse", + "properties": { + "accountTicketId": { + "description": "The param to be passed in the ToS link.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsRequest": { + "description": "Request message for SearchChangeHistoryEvents RPC.", + "id": "GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsRequest", + "properties": { + "action": { + "description": "Optional. If set, only return changes that match one or more of these types of actions.", + "items": { + "enum": [ + "ACTION_TYPE_UNSPECIFIED", + "CREATED", + "UPDATED", + "DELETED" + ], + "enumDescriptions": [ + "Action type unknown or not specified.", + "Resource was created in this change.", + "Resource was updated in this change.", + "Resource was deleted in this change." + ], + "type": "string" + }, + "type": "array" + }, + "actorEmail": { + "description": "Optional. If set, only return changes if they are made by a user in this list.", + "items": { + "type": "string" + }, + "type": "array" + }, + "earliestChangeTime": { + "description": "Optional. If set, only return changes made after this time (inclusive).", + "format": "google-datetime", + "type": "string" + }, + "latestChangeTime": { + "description": "Optional. If set, only return changes made before this time (inclusive).", + "format": "google-datetime", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of ChangeHistoryEvent items to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 items will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `SearchChangeHistoryEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `SearchChangeHistoryEvents` must match the call that provided the page token.", + "type": "string" + }, + "property": { + "description": "Optional. Resource name for a child property. If set, only return changes made to this property or its child resources.", + "type": "string" + }, + "resourceType": { + "description": "Optional. If set, only return changes if they are for a resource that matches at least one of these types.", + "items": { + "enum": [ + "CHANGE_HISTORY_RESOURCE_TYPE_UNSPECIFIED", + "ACCOUNT", + "PROPERTY", + "FIREBASE_LINK", + "GOOGLE_ADS_LINK", + "GOOGLE_SIGNALS_SETTINGS", + "CONVERSION_EVENT", + "MEASUREMENT_PROTOCOL_SECRET", + "DATA_RETENTION_SETTINGS", + "DISPLAY_VIDEO_360_ADVERTISER_LINK", + "DISPLAY_VIDEO_360_ADVERTISER_LINK_PROPOSAL", + "SEARCH_ADS_360_LINK", + "DATA_STREAM", + "ATTRIBUTION_SETTINGS", + "EXPANDED_DATA_SET", + "CHANNEL_GROUP" + ], + "enumDescriptions": [ + "Resource type unknown or not specified.", + "Account resource", + "Property resource", + "FirebaseLink resource", + "GoogleAdsLink resource", + "GoogleSignalsSettings resource", + "ConversionEvent resource", + "MeasurementProtocolSecret resource", + "DataRetentionSettings resource", + "DisplayVideo360AdvertiserLink resource", + "DisplayVideo360AdvertiserLinkProposal resource", + "SearchAds360Link resource", + "DataStream resource", + "AttributionSettings resource", + "ExpandedDataSet resource", + "ChannelGroup resource" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsResponse": { + "description": "Response message for SearchAccounts RPC.", + "id": "GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsResponse", + "properties": { + "changeHistoryEvents": { + "description": "Results that were accessible to the caller.", + "items": { + "$ref": "GoogleAnalyticsAdminV1betaChangeHistoryEvent" + }, + "type": "array" + }, + "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" + }, + "GoogleProtobufEmpty": { + "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": "GoogleProtobufEmpty", + "properties": {}, + "type": "object" + } + }, + "servicePath": "", + "title": "Google Analytics Admin API", + "version": "v1beta", + "version_module": true +} \ No newline at end of file diff --git a/analyticsadmin/v1beta/analyticsadmin-gen.go b/analyticsadmin/v1beta/analyticsadmin-gen.go new file mode 100644 index 00000000000..71d53370c98 --- /dev/null +++ b/analyticsadmin/v1beta/analyticsadmin-gen.go @@ -0,0 +1,9491 @@ +// Copyright 2022 Google LLC. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// Code generated file. DO NOT EDIT. + +// Package analyticsadmin provides access to the Google Analytics Admin API. +// +// For product documentation, see: http://code.google.com/apis/analytics/docs/mgmt/home.html +// +// # Creating a client +// +// Usage example: +// +// import "google.golang.org/api/analyticsadmin/v1beta" +// ... +// ctx := context.Background() +// analyticsadminService, err := analyticsadmin.NewService(ctx) +// +// In this example, Google Application Default Credentials are used for authentication. +// +// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. +// +// # Other authentication options +// +// By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use option.WithScopes: +// +// analyticsadminService, err := analyticsadmin.NewService(ctx, option.WithScopes(analyticsadmin.AnalyticsReadonlyScope)) +// +// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey: +// +// analyticsadminService, err := analyticsadmin.NewService(ctx, option.WithAPIKey("AIza...")) +// +// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource: +// +// config := &oauth2.Config{...} +// // ... +// token, err := config.Exchange(ctx, ...) +// analyticsadminService, err := analyticsadmin.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) +// +// See https://godoc.org/google.golang.org/api/option/ for details on options. +package analyticsadmin // import "google.golang.org/api/analyticsadmin/v1beta" + +import ( + "bytes" + "context" + "encoding/json" + "errors" + "fmt" + "io" + "net/http" + "net/url" + "strconv" + "strings" + + googleapi "google.golang.org/api/googleapi" + internal "google.golang.org/api/internal" + gensupport "google.golang.org/api/internal/gensupport" + option "google.golang.org/api/option" + internaloption "google.golang.org/api/option/internaloption" + htransport "google.golang.org/api/transport/http" +) + +// Always reference these packages, just in case the auto-generated code +// below doesn't. +var _ = bytes.NewBuffer +var _ = strconv.Itoa +var _ = fmt.Sprintf +var _ = json.NewDecoder +var _ = io.Copy +var _ = url.Parse +var _ = gensupport.MarshalJSON +var _ = googleapi.Version +var _ = errors.New +var _ = strings.Replace +var _ = context.Canceled +var _ = internaloption.WithDefaultEndpoint + +const apiId = "analyticsadmin:v1beta" +const apiName = "analyticsadmin" +const apiVersion = "v1beta" +const basePath = "https://analyticsadmin.googleapis.com/" +const mtlsBasePath = "https://analyticsadmin.mtls.googleapis.com/" + +// OAuth2 scopes used by this API. +const ( + // Edit Google Analytics management entities + AnalyticsEditScope = "https://www.googleapis.com/auth/analytics.edit" + + // See and download your Google Analytics data + AnalyticsReadonlyScope = "https://www.googleapis.com/auth/analytics.readonly" +) + +// NewService creates a new Service. +func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { + scopesOption := internaloption.WithDefaultScopes( + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly", + ) + // NOTE: prepend, so we don't override user-specified scopes. + opts = append([]option.ClientOption{scopesOption}, opts...) + opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) + opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) + client, endpoint, err := htransport.NewClient(ctx, opts...) + if err != nil { + return nil, err + } + s, err := New(client) + if err != nil { + return nil, err + } + if endpoint != "" { + s.BasePath = endpoint + } + return s, nil +} + +// New creates a new Service. It uses the provided http.Client for requests. +// +// Deprecated: please use NewService instead. +// To provide a custom HTTP client, use option.WithHTTPClient. +// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. +func New(client *http.Client) (*Service, error) { + if client == nil { + return nil, errors.New("client is nil") + } + s := &Service{client: client, BasePath: basePath} + s.AccountSummaries = NewAccountSummariesService(s) + s.Accounts = NewAccountsService(s) + s.Properties = NewPropertiesService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + AccountSummaries *AccountSummariesService + + Accounts *AccountsService + + Properties *PropertiesService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewAccountSummariesService(s *Service) *AccountSummariesService { + rs := &AccountSummariesService{s: s} + return rs +} + +type AccountSummariesService struct { + s *Service +} + +func NewAccountsService(s *Service) *AccountsService { + rs := &AccountsService{s: s} + return rs +} + +type AccountsService struct { + s *Service +} + +func NewPropertiesService(s *Service) *PropertiesService { + rs := &PropertiesService{s: s} + rs.ConversionEvents = NewPropertiesConversionEventsService(s) + rs.CustomDimensions = NewPropertiesCustomDimensionsService(s) + rs.CustomMetrics = NewPropertiesCustomMetricsService(s) + rs.DataStreams = NewPropertiesDataStreamsService(s) + rs.FirebaseLinks = NewPropertiesFirebaseLinksService(s) + rs.GoogleAdsLinks = NewPropertiesGoogleAdsLinksService(s) + return rs +} + +type PropertiesService struct { + s *Service + + ConversionEvents *PropertiesConversionEventsService + + CustomDimensions *PropertiesCustomDimensionsService + + CustomMetrics *PropertiesCustomMetricsService + + DataStreams *PropertiesDataStreamsService + + FirebaseLinks *PropertiesFirebaseLinksService + + GoogleAdsLinks *PropertiesGoogleAdsLinksService +} + +func NewPropertiesConversionEventsService(s *Service) *PropertiesConversionEventsService { + rs := &PropertiesConversionEventsService{s: s} + return rs +} + +type PropertiesConversionEventsService struct { + s *Service +} + +func NewPropertiesCustomDimensionsService(s *Service) *PropertiesCustomDimensionsService { + rs := &PropertiesCustomDimensionsService{s: s} + return rs +} + +type PropertiesCustomDimensionsService struct { + s *Service +} + +func NewPropertiesCustomMetricsService(s *Service) *PropertiesCustomMetricsService { + rs := &PropertiesCustomMetricsService{s: s} + return rs +} + +type PropertiesCustomMetricsService struct { + s *Service +} + +func NewPropertiesDataStreamsService(s *Service) *PropertiesDataStreamsService { + rs := &PropertiesDataStreamsService{s: s} + rs.MeasurementProtocolSecrets = NewPropertiesDataStreamsMeasurementProtocolSecretsService(s) + return rs +} + +type PropertiesDataStreamsService struct { + s *Service + + MeasurementProtocolSecrets *PropertiesDataStreamsMeasurementProtocolSecretsService +} + +func NewPropertiesDataStreamsMeasurementProtocolSecretsService(s *Service) *PropertiesDataStreamsMeasurementProtocolSecretsService { + rs := &PropertiesDataStreamsMeasurementProtocolSecretsService{s: s} + return rs +} + +type PropertiesDataStreamsMeasurementProtocolSecretsService struct { + s *Service +} + +func NewPropertiesFirebaseLinksService(s *Service) *PropertiesFirebaseLinksService { + rs := &PropertiesFirebaseLinksService{s: s} + return rs +} + +type PropertiesFirebaseLinksService struct { + s *Service +} + +func NewPropertiesGoogleAdsLinksService(s *Service) *PropertiesGoogleAdsLinksService { + rs := &PropertiesGoogleAdsLinksService{s: s} + return rs +} + +type PropertiesGoogleAdsLinksService struct { + s *Service +} + +// GoogleAnalyticsAdminV1betaAccount: A resource message representing a +// Google Analytics account. +type GoogleAnalyticsAdminV1betaAccount struct { + // CreateTime: Output only. Time when this account was originally + // created. + CreateTime string `json:"createTime,omitempty"` + + // Deleted: Output only. Indicates whether this Account is soft-deleted + // or not. Deleted accounts are excluded from List results unless + // specifically requested. + Deleted bool `json:"deleted,omitempty"` + + // DisplayName: Required. Human-readable display name for this account. + DisplayName string `json:"displayName,omitempty"` + + // Name: Output only. Resource name of this account. Format: + // accounts/{account} Example: "accounts/100" + Name string `json:"name,omitempty"` + + // RegionCode: Country of business. Must be a Unicode CLDR region code. + RegionCode string `json:"regionCode,omitempty"` + + // UpdateTime: Output only. Time when account payload fields were last + // updated. + UpdateTime string `json:"updateTime,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 *GoogleAnalyticsAdminV1betaAccount) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaAccount + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaAccountSummary: A virtual resource +// representing an overview of an account and all its child GA4 +// properties. +type GoogleAnalyticsAdminV1betaAccountSummary struct { + // Account: Resource name of account referred to by this account summary + // Format: accounts/{account_id} Example: "accounts/1000" + Account string `json:"account,omitempty"` + + // DisplayName: Display name for the account referred to in this account + // summary. + DisplayName string `json:"displayName,omitempty"` + + // Name: Resource name for this account summary. Format: + // accountSummaries/{account_id} Example: "accountSummaries/1000" + Name string `json:"name,omitempty"` + + // PropertySummaries: List of summaries for child accounts of this + // account. + PropertySummaries []*GoogleAnalyticsAdminV1betaPropertySummary `json:"propertySummaries,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Account") 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. "Account") 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 *GoogleAnalyticsAdminV1betaAccountSummary) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaAccountSummary + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionRequest: +// Request message for AcknowledgeUserDataCollection RPC. +type GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionRequest struct { + // Acknowledgement: Required. An acknowledgement that the caller of this + // method understands the terms of user data collection. This field must + // contain the exact value: "I acknowledge that I have the necessary + // privacy disclosures and rights from my end users for the collection + // and processing of their data, including the association of such data + // with the visitation information Google Analytics collects from my + // site and/or app property." + Acknowledgement string `json:"acknowledgement,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Acknowledgement") 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. "Acknowledgement") 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 *GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionResponse: +// Response message for AcknowledgeUserDataCollection RPC. +type GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionResponse struct { + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` +} + +// GoogleAnalyticsAdminV1betaArchiveCustomDimensionRequest: Request +// message for ArchiveCustomDimension RPC. +type GoogleAnalyticsAdminV1betaArchiveCustomDimensionRequest struct { +} + +// GoogleAnalyticsAdminV1betaArchiveCustomMetricRequest: Request message +// for ArchiveCustomMetric RPC. +type GoogleAnalyticsAdminV1betaArchiveCustomMetricRequest struct { +} + +// GoogleAnalyticsAdminV1betaChangeHistoryChange: A description of a +// change to a single Google Analytics resource. +type GoogleAnalyticsAdminV1betaChangeHistoryChange struct { + // Action: The type of action that changed this resource. + // + // Possible values: + // "ACTION_TYPE_UNSPECIFIED" - Action type unknown or not specified. + // "CREATED" - Resource was created in this change. + // "UPDATED" - Resource was updated in this change. + // "DELETED" - Resource was deleted in this change. + Action string `json:"action,omitempty"` + + // Resource: Resource name of the resource whose changes are described + // by this entry. + Resource string `json:"resource,omitempty"` + + // ResourceAfterChange: Resource contents from after the change was + // made. If this resource was deleted in this change, this field will be + // missing. + ResourceAfterChange *GoogleAnalyticsAdminV1betaChangeHistoryChangeChangeHistoryResource `json:"resourceAfterChange,omitempty"` + + // ResourceBeforeChange: Resource contents from before the change was + // made. If this resource was created in this change, this field will be + // missing. + ResourceBeforeChange *GoogleAnalyticsAdminV1betaChangeHistoryChangeChangeHistoryResource `json:"resourceBeforeChange,omitempty"` + + // 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 *GoogleAnalyticsAdminV1betaChangeHistoryChange) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaChangeHistoryChange + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaChangeHistoryChangeChangeHistoryResource: A +// snapshot of a resource as before or after the result of a change in +// change history. +type GoogleAnalyticsAdminV1betaChangeHistoryChangeChangeHistoryResource struct { + // Account: A snapshot of an Account resource in change history. + Account *GoogleAnalyticsAdminV1betaAccount `json:"account,omitempty"` + + // ConversionEvent: A snapshot of a ConversionEvent resource in change + // history. + ConversionEvent *GoogleAnalyticsAdminV1betaConversionEvent `json:"conversionEvent,omitempty"` + + // DataRetentionSettings: A snapshot of a data retention settings + // resource in change history. + DataRetentionSettings *GoogleAnalyticsAdminV1betaDataRetentionSettings `json:"dataRetentionSettings,omitempty"` + + // DataStream: A snapshot of a DataStream resource in change history. + DataStream *GoogleAnalyticsAdminV1betaDataStream `json:"dataStream,omitempty"` + + // FirebaseLink: A snapshot of a FirebaseLink resource in change + // history. + FirebaseLink *GoogleAnalyticsAdminV1betaFirebaseLink `json:"firebaseLink,omitempty"` + + // GoogleAdsLink: A snapshot of a GoogleAdsLink resource in change + // history. + GoogleAdsLink *GoogleAnalyticsAdminV1betaGoogleAdsLink `json:"googleAdsLink,omitempty"` + + // MeasurementProtocolSecret: A snapshot of a MeasurementProtocolSecret + // resource in change history. + MeasurementProtocolSecret *GoogleAnalyticsAdminV1betaMeasurementProtocolSecret `json:"measurementProtocolSecret,omitempty"` + + // Property: A snapshot of a Property resource in change history. + Property *GoogleAnalyticsAdminV1betaProperty `json:"property,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Account") 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. "Account") 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 *GoogleAnalyticsAdminV1betaChangeHistoryChangeChangeHistoryResource) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaChangeHistoryChangeChangeHistoryResource + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaChangeHistoryEvent: A set of changes within +// a Google Analytics account or its child properties that resulted from +// the same cause. Common causes would be updates made in the Google +// Analytics UI, changes from customer support, or automatic Google +// Analytics system changes. +type GoogleAnalyticsAdminV1betaChangeHistoryEvent struct { + // ActorType: The type of actor that made this change. + // + // Possible values: + // "ACTOR_TYPE_UNSPECIFIED" - Unknown or unspecified actor type. + // "USER" - Changes made by the user specified in actor_email. + // "SYSTEM" - Changes made by the Google Analytics system. + // "SUPPORT" - Changes made by Google Analytics support team staff. + ActorType string `json:"actorType,omitempty"` + + // ChangeTime: Time when change was made. + ChangeTime string `json:"changeTime,omitempty"` + + // Changes: A list of changes made in this change history event that fit + // the filters specified in SearchChangeHistoryEventsRequest. + Changes []*GoogleAnalyticsAdminV1betaChangeHistoryChange `json:"changes,omitempty"` + + // ChangesFiltered: If true, then the list of changes returned was + // filtered, and does not represent all changes that occurred in this + // event. + ChangesFiltered bool `json:"changesFiltered,omitempty"` + + // Id: ID of this change history event. This ID is unique across Google + // Analytics. + Id string `json:"id,omitempty"` + + // UserActorEmail: Email address of the Google account that made the + // change. This will be a valid email address if the actor field is set + // to USER, and empty otherwise. Google accounts that have been deleted + // will cause an error. + UserActorEmail string `json:"userActorEmail,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActorType") 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. "ActorType") 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 *GoogleAnalyticsAdminV1betaChangeHistoryEvent) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaChangeHistoryEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaConversionEvent: A conversion event in a +// Google Analytics property. +type GoogleAnalyticsAdminV1betaConversionEvent struct { + // CreateTime: Output only. Time when this conversion event was created + // in the property. + CreateTime string `json:"createTime,omitempty"` + + // Custom: Output only. If set to true, this conversion event refers to + // a custom event. If set to false, this conversion event refers to a + // default event in GA. Default events typically have special meaning in + // GA. Default events are usually created for you by the GA system, but + // in some cases can be created by property admins. Custom events count + // towards the maximum number of custom conversion events that may be + // created per property. + Custom bool `json:"custom,omitempty"` + + // Deletable: Output only. If set, this event can currently be deleted + // via DeleteConversionEvent. + Deletable bool `json:"deletable,omitempty"` + + // EventName: Immutable. The event name for this conversion event. + // Examples: 'click', 'purchase' + EventName string `json:"eventName,omitempty"` + + // Name: Output only. Resource name of this conversion event. Format: + // properties/{property}/conversionEvents/{conversion_event} + 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. "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 *GoogleAnalyticsAdminV1betaConversionEvent) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaConversionEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaCustomDimension: A definition for a +// CustomDimension. +type GoogleAnalyticsAdminV1betaCustomDimension struct { + // Description: Optional. Description for this custom dimension. Max + // length of 150 characters. + Description string `json:"description,omitempty"` + + // DisallowAdsPersonalization: Optional. If set to true, sets this + // dimension as NPA and excludes it from ads personalization. This is + // currently only supported by user-scoped custom dimensions. + DisallowAdsPersonalization bool `json:"disallowAdsPersonalization,omitempty"` + + // DisplayName: Required. Display name for this custom dimension as + // shown in the Analytics UI. Max length of 82 characters, alphanumeric + // plus space and underscore starting with a letter. Legacy + // system-generated display names may contain square brackets, but + // updates to this field will never permit square brackets. + DisplayName string `json:"displayName,omitempty"` + + // Name: Output only. Resource name for this CustomDimension resource. + // Format: properties/{property}/customDimensions/{customDimension} + Name string `json:"name,omitempty"` + + // ParameterName: Required. Immutable. Tagging parameter name for this + // custom dimension. If this is a user-scoped dimension, then this is + // the user property name. If this is an event-scoped dimension, then + // this is the event parameter name. May only contain alphanumeric and + // underscore characters, starting with a letter. Max length of 24 + // characters for user-scoped dimensions, 40 characters for event-scoped + // dimensions. + ParameterName string `json:"parameterName,omitempty"` + + // Scope: Required. Immutable. The scope of this dimension. + // + // Possible values: + // "DIMENSION_SCOPE_UNSPECIFIED" - Scope unknown or not specified. + // "EVENT" - Dimension scoped to an event. + // "USER" - Dimension scoped to a user. + Scope string `json:"scope,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Description") 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. "Description") 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 *GoogleAnalyticsAdminV1betaCustomDimension) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaCustomDimension + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaCustomMetric: A definition for a custom +// metric. +type GoogleAnalyticsAdminV1betaCustomMetric struct { + // Description: Optional. Description for this custom dimension. Max + // length of 150 characters. + Description string `json:"description,omitempty"` + + // DisplayName: Required. Display name for this custom metric as shown + // in the Analytics UI. Max length of 82 characters, alphanumeric plus + // space and underscore starting with a letter. Legacy system-generated + // display names may contain square brackets, but updates to this field + // will never permit square brackets. + DisplayName string `json:"displayName,omitempty"` + + // MeasurementUnit: Required. The type for the custom metric's value. + // + // Possible values: + // "MEASUREMENT_UNIT_UNSPECIFIED" - MeasurementUnit unspecified or + // missing. + // "STANDARD" - This metric uses default units. + // "CURRENCY" - This metric measures a currency. + // "FEET" - This metric measures feet. + // "METERS" - This metric measures meters. + // "KILOMETERS" - This metric measures kilometers. + // "MILES" - This metric measures miles. + // "MILLISECONDS" - This metric measures milliseconds. + // "SECONDS" - This metric measures seconds. + // "MINUTES" - This metric measures minutes. + // "HOURS" - This metric measures hours. + MeasurementUnit string `json:"measurementUnit,omitempty"` + + // Name: Output only. Resource name for this CustomMetric resource. + // Format: properties/{property}/customMetrics/{customMetric} + Name string `json:"name,omitempty"` + + // ParameterName: Required. Immutable. Tagging name for this custom + // metric. If this is an event-scoped metric, then this is the event + // parameter name. May only contain alphanumeric and underscore + // charactes, starting with a letter. Max length of 40 characters for + // event-scoped metrics. + ParameterName string `json:"parameterName,omitempty"` + + // RestrictedMetricType: Optional. Types of restricted data that this + // metric may contain. Required for metrics with CURRENCY measurement + // unit. Must be empty for metrics with a non-CURRENCY measurement unit. + // + // Possible values: + // "RESTRICTED_METRIC_TYPE_UNSPECIFIED" - Type unknown or unspecified. + // "COST_DATA" - Metric reports cost data. + // "REVENUE_DATA" - Metric reports revenue data. + RestrictedMetricType []string `json:"restrictedMetricType,omitempty"` + + // Scope: Required. Immutable. The scope of this custom metric. + // + // Possible values: + // "METRIC_SCOPE_UNSPECIFIED" - Scope unknown or not specified. + // "EVENT" - Metric scoped to an event. + Scope string `json:"scope,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Description") 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. "Description") 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 *GoogleAnalyticsAdminV1betaCustomMetric) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaCustomMetric + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaDataRetentionSettings: Settings values for +// data retention. This is a singleton resource. +type GoogleAnalyticsAdminV1betaDataRetentionSettings struct { + // EventDataRetention: The length of time that event-level data is + // retained. + // + // Possible values: + // "RETENTION_DURATION_UNSPECIFIED" - Data retention time duration is + // not specified. + // "TWO_MONTHS" - The data retention time duration is 2 months. + // "FOURTEEN_MONTHS" - The data retention time duration is 14 months. + // "TWENTY_SIX_MONTHS" - The data retention time duration is 26 + // months. Available to 360 properties only. + // "THIRTY_EIGHT_MONTHS" - The data retention time duration is 38 + // months. Available to 360 properties only. + // "FIFTY_MONTHS" - The data retention time duration is 50 months. + // Available to 360 properties only. + EventDataRetention string `json:"eventDataRetention,omitempty"` + + // Name: Output only. Resource name for this DataRetentionSetting + // resource. Format: properties/{property}/dataRetentionSettings + Name string `json:"name,omitempty"` + + // ResetUserDataOnNewActivity: If true, reset the retention period for + // the user identifier with every event from that user. + ResetUserDataOnNewActivity bool `json:"resetUserDataOnNewActivity,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "EventDataRetention") + // 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. "EventDataRetention") 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 *GoogleAnalyticsAdminV1betaDataRetentionSettings) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaDataRetentionSettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaDataSharingSettings: A resource message +// representing data sharing settings of a Google Analytics account. +type GoogleAnalyticsAdminV1betaDataSharingSettings struct { + // Name: Output only. Resource name. Format: + // accounts/{account}/dataSharingSettings Example: + // "accounts/1000/dataSharingSettings" + Name string `json:"name,omitempty"` + + // SharingWithGoogleAnySalesEnabled: Allows any of Google sales to + // access the data in order to suggest configuration changes to improve + // results. + SharingWithGoogleAnySalesEnabled bool `json:"sharingWithGoogleAnySalesEnabled,omitempty"` + + // SharingWithGoogleAssignedSalesEnabled: Allows Google sales teams that + // are assigned to the customer to access the data in order to suggest + // configuration changes to improve results. Sales team restrictions + // still apply when enabled. + SharingWithGoogleAssignedSalesEnabled bool `json:"sharingWithGoogleAssignedSalesEnabled,omitempty"` + + // SharingWithGoogleProductsEnabled: Allows Google to use the data to + // improve other Google products or services. + SharingWithGoogleProductsEnabled bool `json:"sharingWithGoogleProductsEnabled,omitempty"` + + // SharingWithGoogleSupportEnabled: Allows Google support to access the + // data in order to help troubleshoot issues. + SharingWithGoogleSupportEnabled bool `json:"sharingWithGoogleSupportEnabled,omitempty"` + + // SharingWithOthersEnabled: Allows Google to share the data anonymously + // in aggregate form with others. + SharingWithOthersEnabled bool `json:"sharingWithOthersEnabled,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 *GoogleAnalyticsAdminV1betaDataSharingSettings) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaDataSharingSettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaDataStream: A resource message representing +// a data stream. +type GoogleAnalyticsAdminV1betaDataStream struct { + // AndroidAppStreamData: Data specific to Android app streams. Must be + // populated if type is ANDROID_APP_DATA_STREAM. + AndroidAppStreamData *GoogleAnalyticsAdminV1betaDataStreamAndroidAppStreamData `json:"androidAppStreamData,omitempty"` + + // CreateTime: Output only. Time when this stream was originally + // created. + CreateTime string `json:"createTime,omitempty"` + + // DisplayName: Human-readable display name for the Data Stream. + // Required for web data streams. The max allowed display name length is + // 255 UTF-16 code units. + DisplayName string `json:"displayName,omitempty"` + + // IosAppStreamData: Data specific to iOS app streams. Must be populated + // if type is IOS_APP_DATA_STREAM. + IosAppStreamData *GoogleAnalyticsAdminV1betaDataStreamIosAppStreamData `json:"iosAppStreamData,omitempty"` + + // Name: Output only. Resource name of this Data Stream. Format: + // properties/{property_id}/dataStreams/{stream_id} Example: + // "properties/1000/dataStreams/2000" + Name string `json:"name,omitempty"` + + // Type: Required. Immutable. The type of this DataStream resource. + // + // Possible values: + // "DATA_STREAM_TYPE_UNSPECIFIED" - Type unknown or not specified. + // "WEB_DATA_STREAM" - Web data stream. + // "ANDROID_APP_DATA_STREAM" - Android app data stream. + // "IOS_APP_DATA_STREAM" - iOS app data stream. + Type string `json:"type,omitempty"` + + // UpdateTime: Output only. Time when stream payload fields were last + // updated. + UpdateTime string `json:"updateTime,omitempty"` + + // WebStreamData: Data specific to web streams. Must be populated if + // type is WEB_DATA_STREAM. + WebStreamData *GoogleAnalyticsAdminV1betaDataStreamWebStreamData `json:"webStreamData,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. + // "AndroidAppStreamData") 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. "AndroidAppStreamData") 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 *GoogleAnalyticsAdminV1betaDataStream) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaDataStream + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaDataStreamAndroidAppStreamData: Data +// specific to Android app streams. +type GoogleAnalyticsAdminV1betaDataStreamAndroidAppStreamData struct { + // FirebaseAppId: Output only. ID of the corresponding Android app in + // Firebase, if any. This ID can change if the Android app is deleted + // and recreated. + FirebaseAppId string `json:"firebaseAppId,omitempty"` + + // PackageName: Immutable. The package name for the app being measured. + // Example: "com.example.myandroidapp" + PackageName string `json:"packageName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FirebaseAppId") 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. "FirebaseAppId") 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 *GoogleAnalyticsAdminV1betaDataStreamAndroidAppStreamData) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaDataStreamAndroidAppStreamData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaDataStreamIosAppStreamData: Data specific +// to iOS app streams. +type GoogleAnalyticsAdminV1betaDataStreamIosAppStreamData struct { + // BundleId: Required. Immutable. The Apple App Store Bundle ID for the + // app Example: "com.example.myiosapp" + BundleId string `json:"bundleId,omitempty"` + + // FirebaseAppId: Output only. ID of the corresponding iOS app in + // Firebase, if any. This ID can change if the iOS app is deleted and + // recreated. + FirebaseAppId string `json:"firebaseAppId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BundleId") 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. "BundleId") 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 *GoogleAnalyticsAdminV1betaDataStreamIosAppStreamData) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaDataStreamIosAppStreamData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaDataStreamWebStreamData: Data specific to +// web streams. +type GoogleAnalyticsAdminV1betaDataStreamWebStreamData struct { + // DefaultUri: Immutable. Domain name of the web app being measured, or + // empty. Example: "http://www.google.com", "https://www.google.com" + DefaultUri string `json:"defaultUri,omitempty"` + + // FirebaseAppId: Output only. ID of the corresponding web app in + // Firebase, if any. This ID can change if the web app is deleted and + // recreated. + FirebaseAppId string `json:"firebaseAppId,omitempty"` + + // MeasurementId: Output only. Analytics "Measurement ID", without the + // "G-" prefix. Example: "G-1A2BCD345E" would just be "1A2BCD345E" + MeasurementId string `json:"measurementId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DefaultUri") 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. "DefaultUri") 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 *GoogleAnalyticsAdminV1betaDataStreamWebStreamData) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaDataStreamWebStreamData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaFirebaseLink: A link between a GA4 property +// and a Firebase project. +type GoogleAnalyticsAdminV1betaFirebaseLink struct { + // CreateTime: Output only. Time when this FirebaseLink was originally + // created. + CreateTime string `json:"createTime,omitempty"` + + // Name: Output only. Example format: properties/1234/firebaseLinks/5678 + Name string `json:"name,omitempty"` + + // Project: Immutable. Firebase project resource name. When creating a + // FirebaseLink, you may provide this resource name using either a + // project number or project ID. Once this resource has been created, + // returned FirebaseLinks will always have a project_name that contains + // a project number. Format: 'projects/{project number}' Example: + // 'projects/1234' + Project string `json:"project,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 *GoogleAnalyticsAdminV1betaFirebaseLink) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaFirebaseLink + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaGoogleAdsLink: A link between a GA4 +// property and a Google Ads account. +type GoogleAnalyticsAdminV1betaGoogleAdsLink struct { + // AdsPersonalizationEnabled: Enable personalized advertising features + // with this integration. Automatically publish my Google Analytics + // audience lists and Google Analytics remarketing events/parameters to + // the linked Google Ads account. If this field is not set on + // create/update, it will be defaulted to true. + AdsPersonalizationEnabled bool `json:"adsPersonalizationEnabled,omitempty"` + + // CanManageClients: Output only. If true, this link is for a Google Ads + // manager account. + CanManageClients bool `json:"canManageClients,omitempty"` + + // CreateTime: Output only. Time when this link was originally created. + CreateTime string `json:"createTime,omitempty"` + + // CreatorEmailAddress: Output only. Email address of the user that + // created the link. An empty string will be returned if the email + // address can't be retrieved. + CreatorEmailAddress string `json:"creatorEmailAddress,omitempty"` + + // CustomerId: Immutable. Google Ads customer ID. + CustomerId string `json:"customerId,omitempty"` + + // Name: Output only. Format: + // properties/{propertyId}/googleAdsLinks/{googleAdsLinkId} Note: + // googleAdsLinkId is not the Google Ads customer ID. + Name string `json:"name,omitempty"` + + // UpdateTime: Output only. Time when this link was last updated. + UpdateTime string `json:"updateTime,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. + // "AdsPersonalizationEnabled") 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. + // "AdsPersonalizationEnabled") 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 *GoogleAnalyticsAdminV1betaGoogleAdsLink) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaGoogleAdsLink + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaListAccountSummariesResponse: Response +// message for ListAccountSummaries RPC. +type GoogleAnalyticsAdminV1betaListAccountSummariesResponse struct { + // AccountSummaries: Account summaries of all accounts the caller has + // access to. + AccountSummaries []*GoogleAnalyticsAdminV1betaAccountSummary `json:"accountSummaries,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"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AccountSummaries") 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. "AccountSummaries") 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 *GoogleAnalyticsAdminV1betaListAccountSummariesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaListAccountSummariesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaListAccountsResponse: Request message for +// ListAccounts RPC. +type GoogleAnalyticsAdminV1betaListAccountsResponse struct { + // Accounts: Results that were accessible to the caller. + Accounts []*GoogleAnalyticsAdminV1betaAccount `json:"accounts,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"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Accounts") 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. "Accounts") 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 *GoogleAnalyticsAdminV1betaListAccountsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaListAccountsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaListConversionEventsResponse: Response +// message for ListConversionEvents RPC. +type GoogleAnalyticsAdminV1betaListConversionEventsResponse struct { + // ConversionEvents: The requested conversion events + ConversionEvents []*GoogleAnalyticsAdminV1betaConversionEvent `json:"conversionEvents,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"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "ConversionEvents") 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. "ConversionEvents") 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 *GoogleAnalyticsAdminV1betaListConversionEventsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaListConversionEventsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaListCustomDimensionsResponse: Response +// message for ListCustomDimensions RPC. +type GoogleAnalyticsAdminV1betaListCustomDimensionsResponse struct { + // CustomDimensions: List of CustomDimensions. + CustomDimensions []*GoogleAnalyticsAdminV1betaCustomDimension `json:"customDimensions,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"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CustomDimensions") 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. "CustomDimensions") 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 *GoogleAnalyticsAdminV1betaListCustomDimensionsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaListCustomDimensionsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaListCustomMetricsResponse: Response message +// for ListCustomMetrics RPC. +type GoogleAnalyticsAdminV1betaListCustomMetricsResponse struct { + // CustomMetrics: List of CustomMetrics. + CustomMetrics []*GoogleAnalyticsAdminV1betaCustomMetric `json:"customMetrics,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"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CustomMetrics") 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. "CustomMetrics") 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 *GoogleAnalyticsAdminV1betaListCustomMetricsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaListCustomMetricsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaListDataStreamsResponse: Response message +// for ListDataStreams RPC. +type GoogleAnalyticsAdminV1betaListDataStreamsResponse struct { + // DataStreams: List of DataStreams. + DataStreams []*GoogleAnalyticsAdminV1betaDataStream `json:"dataStreams,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"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "DataStreams") 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. "DataStreams") 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 *GoogleAnalyticsAdminV1betaListDataStreamsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaListDataStreamsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaListFirebaseLinksResponse: Response message +// for ListFirebaseLinks RPC +type GoogleAnalyticsAdminV1betaListFirebaseLinksResponse struct { + // FirebaseLinks: List of FirebaseLinks. This will have at most one + // value. + FirebaseLinks []*GoogleAnalyticsAdminV1betaFirebaseLink `json:"firebaseLinks,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. Currently, Google Analytics supports only one FirebaseLink per + // property, so this will never be populated. + 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. "FirebaseLinks") 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. "FirebaseLinks") 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 *GoogleAnalyticsAdminV1betaListFirebaseLinksResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaListFirebaseLinksResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaListGoogleAdsLinksResponse: Response +// message for ListGoogleAdsLinks RPC. +type GoogleAnalyticsAdminV1betaListGoogleAdsLinksResponse struct { + // GoogleAdsLinks: List of GoogleAdsLinks. + GoogleAdsLinks []*GoogleAnalyticsAdminV1betaGoogleAdsLink `json:"googleAdsLinks,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"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "GoogleAdsLinks") 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. "GoogleAdsLinks") 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 *GoogleAnalyticsAdminV1betaListGoogleAdsLinksResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaListGoogleAdsLinksResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaListMeasurementProtocolSecretsResponse: +// Response message for ListMeasurementProtocolSecret RPC +type GoogleAnalyticsAdminV1betaListMeasurementProtocolSecretsResponse struct { + // MeasurementProtocolSecrets: A list of secrets for the parent stream + // specified in the request. + MeasurementProtocolSecrets []*GoogleAnalyticsAdminV1betaMeasurementProtocolSecret `json:"measurementProtocolSecrets,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"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. + // "MeasurementProtocolSecrets") 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. + // "MeasurementProtocolSecrets") 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 *GoogleAnalyticsAdminV1betaListMeasurementProtocolSecretsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaListMeasurementProtocolSecretsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaListPropertiesResponse: Response message +// for ListProperties RPC. +type GoogleAnalyticsAdminV1betaListPropertiesResponse struct { + // 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"` + + // Properties: Results that matched the filter criteria and were + // accessible to the caller. + Properties []*GoogleAnalyticsAdminV1betaProperty `json:"properties,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 *GoogleAnalyticsAdminV1betaListPropertiesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaListPropertiesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaMeasurementProtocolSecret: A secret value +// used for sending hits to Measurement Protocol. +type GoogleAnalyticsAdminV1betaMeasurementProtocolSecret struct { + // DisplayName: Required. Human-readable display name for this secret. + DisplayName string `json:"displayName,omitempty"` + + // Name: Output only. Resource name of this secret. This secret may be a + // child of any type of stream. Format: + // properties/{property}/dataStreams/{dataStream}/measurementProtocolSecr + // ets/{measurementProtocolSecret} + Name string `json:"name,omitempty"` + + // SecretValue: Output only. The measurement protocol secret value. Pass + // this value to the api_secret field of the Measurement Protocol API + // when sending hits to this secret's parent property. + SecretValue string `json:"secretValue,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // 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 *GoogleAnalyticsAdminV1betaMeasurementProtocolSecret) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaMeasurementProtocolSecret + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaProperty: A resource message representing a +// Google Analytics GA4 property. +type GoogleAnalyticsAdminV1betaProperty struct { + // Account: Immutable. The resource name of the parent account Format: + // accounts/{account_id} Example: "accounts/123" + Account string `json:"account,omitempty"` + + // CreateTime: Output only. Time when the entity was originally created. + CreateTime string `json:"createTime,omitempty"` + + // CurrencyCode: The currency type used in reports involving monetary + // values. Format: https://en.wikipedia.org/wiki/ISO_4217 Examples: + // "USD", "EUR", "JPY" + CurrencyCode string `json:"currencyCode,omitempty"` + + // DeleteTime: Output only. If set, the time at which this property was + // trashed. If not set, then this property is not currently in the trash + // can. + DeleteTime string `json:"deleteTime,omitempty"` + + // DisplayName: Required. Human-readable display name for this property. + // The max allowed display name length is 100 UTF-16 code units. + DisplayName string `json:"displayName,omitempty"` + + // ExpireTime: Output only. If set, the time at which this trashed + // property will be permanently deleted. If not set, then this property + // is not currently in the trash can and is not slated to be deleted. + ExpireTime string `json:"expireTime,omitempty"` + + // IndustryCategory: Industry associated with this property Example: + // AUTOMOTIVE, FOOD_AND_DRINK + // + // Possible values: + // "INDUSTRY_CATEGORY_UNSPECIFIED" - Industry category unspecified + // "AUTOMOTIVE" - Automotive + // "BUSINESS_AND_INDUSTRIAL_MARKETS" - Business and industrial markets + // "FINANCE" - Finance + // "HEALTHCARE" - Healthcare + // "TECHNOLOGY" - Technology + // "TRAVEL" - Travel + // "OTHER" - Other + // "ARTS_AND_ENTERTAINMENT" - Arts and entertainment + // "BEAUTY_AND_FITNESS" - Beauty and fitness + // "BOOKS_AND_LITERATURE" - Books and literature + // "FOOD_AND_DRINK" - Food and drink + // "GAMES" - Games + // "HOBBIES_AND_LEISURE" - Hobbies and leisure + // "HOME_AND_GARDEN" - Home and garden + // "INTERNET_AND_TELECOM" - Internet and telecom + // "LAW_AND_GOVERNMENT" - Law and government + // "NEWS" - News + // "ONLINE_COMMUNITIES" - Online communities + // "PEOPLE_AND_SOCIETY" - People and society + // "PETS_AND_ANIMALS" - Pets and animals + // "REAL_ESTATE" - Real estate + // "REFERENCE" - Reference + // "SCIENCE" - Science + // "SPORTS" - Sports + // "JOBS_AND_EDUCATION" - Jobs and education + // "SHOPPING" - Shopping + IndustryCategory string `json:"industryCategory,omitempty"` + + // Name: Output only. Resource name of this property. Format: + // properties/{property_id} Example: "properties/1000" + Name string `json:"name,omitempty"` + + // Parent: Immutable. Resource name of this property's logical parent. + // Note: The Property-Moving UI can be used to change the parent. + // Format: accounts/{account}, properties/{property} Example: + // "accounts/100", "properties/101" + Parent string `json:"parent,omitempty"` + + // PropertyType: Immutable. The property type for this Property + // resource. When creating a property, if the type is + // "PROPERTY_TYPE_UNSPECIFIED", then "ORDINARY_PROPERTY" will be + // implied. "SUBPROPERTY" and "ROLLUP_PROPERTY" types cannot yet be + // created via Google Analytics Admin API. + // + // Possible values: + // "PROPERTY_TYPE_UNSPECIFIED" - Unknown or unspecified property type + // "PROPERTY_TYPE_ORDINARY" - Ordinary GA4 property + // "PROPERTY_TYPE_SUBPROPERTY" - GA4 subproperty + // "PROPERTY_TYPE_ROLLUP" - GA4 rollup property + PropertyType string `json:"propertyType,omitempty"` + + // ServiceLevel: Output only. The Google Analytics service level that + // applies to this property. + // + // Possible values: + // "SERVICE_LEVEL_UNSPECIFIED" - Service level not specified or + // invalid. + // "GOOGLE_ANALYTICS_STANDARD" - The standard version of Google + // Analytics. + // "GOOGLE_ANALYTICS_360" - The paid, premium version of Google + // Analytics. + ServiceLevel string `json:"serviceLevel,omitempty"` + + // TimeZone: Required. Reporting Time Zone, used as the day boundary for + // reports, regardless of where the data originates. If the time zone + // honors DST, Analytics will automatically adjust for the changes. + // NOTE: Changing the time zone only affects data going forward, and is + // not applied retroactively. Format: https://www.iana.org/time-zones + // Example: "America/Los_Angeles" + TimeZone string `json:"timeZone,omitempty"` + + // UpdateTime: Output only. Time when entity payload fields were last + // updated. + UpdateTime string `json:"updateTime,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Account") 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. "Account") 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 *GoogleAnalyticsAdminV1betaProperty) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaProperty + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaPropertySummary: A virtual resource +// representing metadata for a GA4 property. +type GoogleAnalyticsAdminV1betaPropertySummary struct { + // DisplayName: Display name for the property referred to in this + // property summary. + DisplayName string `json:"displayName,omitempty"` + + // Parent: Resource name of this property's logical parent. Note: The + // Property-Moving UI can be used to change the parent. Format: + // accounts/{account}, properties/{property} Example: "accounts/100", + // "properties/200" + Parent string `json:"parent,omitempty"` + + // Property: Resource name of property referred to by this property + // summary Format: properties/{property_id} Example: "properties/1000" + Property string `json:"property,omitempty"` + + // PropertyType: The property's property type. + // + // Possible values: + // "PROPERTY_TYPE_UNSPECIFIED" - Unknown or unspecified property type + // "PROPERTY_TYPE_ORDINARY" - Ordinary GA4 property + // "PROPERTY_TYPE_SUBPROPERTY" - GA4 subproperty + // "PROPERTY_TYPE_ROLLUP" - GA4 rollup property + PropertyType string `json:"propertyType,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 *GoogleAnalyticsAdminV1betaPropertySummary) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaPropertySummary + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaProvisionAccountTicketRequest: Request +// message for ProvisionAccountTicket RPC. +type GoogleAnalyticsAdminV1betaProvisionAccountTicketRequest struct { + // Account: The account to create. + Account *GoogleAnalyticsAdminV1betaAccount `json:"account,omitempty"` + + // RedirectUri: Redirect URI where the user will be sent after accepting + // Terms of Service. Must be configured in Developers Console as a + // Redirect URI + RedirectUri string `json:"redirectUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Account") 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. "Account") 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 *GoogleAnalyticsAdminV1betaProvisionAccountTicketRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaProvisionAccountTicketRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaProvisionAccountTicketResponse: Response +// message for ProvisionAccountTicket RPC. +type GoogleAnalyticsAdminV1betaProvisionAccountTicketResponse struct { + // AccountTicketId: The param to be passed in the ToS link. + AccountTicketId string `json:"accountTicketId,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AccountTicketId") 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. "AccountTicketId") 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 *GoogleAnalyticsAdminV1betaProvisionAccountTicketResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaProvisionAccountTicketResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsRequest: Request +// message for SearchChangeHistoryEvents RPC. +type GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsRequest struct { + // Action: Optional. If set, only return changes that match one or more + // of these types of actions. + // + // Possible values: + // "ACTION_TYPE_UNSPECIFIED" - Action type unknown or not specified. + // "CREATED" - Resource was created in this change. + // "UPDATED" - Resource was updated in this change. + // "DELETED" - Resource was deleted in this change. + Action []string `json:"action,omitempty"` + + // ActorEmail: Optional. If set, only return changes if they are made by + // a user in this list. + ActorEmail []string `json:"actorEmail,omitempty"` + + // EarliestChangeTime: Optional. If set, only return changes made after + // this time (inclusive). + EarliestChangeTime string `json:"earliestChangeTime,omitempty"` + + // LatestChangeTime: Optional. If set, only return changes made before + // this time (inclusive). + LatestChangeTime string `json:"latestChangeTime,omitempty"` + + // PageSize: Optional. The maximum number of ChangeHistoryEvent items to + // return. The service may return fewer than this value, even if there + // are additional pages. If unspecified, at most 50 items will be + // returned. The maximum value is 200 (higher values will be coerced to + // the maximum). + PageSize int64 `json:"pageSize,omitempty"` + + // PageToken: Optional. A page token, received from a previous + // `SearchChangeHistoryEvents` call. Provide this to retrieve the + // subsequent page. When paginating, all other parameters provided to + // `SearchChangeHistoryEvents` must match the call that provided the + // page token. + PageToken string `json:"pageToken,omitempty"` + + // Property: Optional. Resource name for a child property. If set, only + // return changes made to this property or its child resources. + Property string `json:"property,omitempty"` + + // ResourceType: Optional. If set, only return changes if they are for a + // resource that matches at least one of these types. + // + // Possible values: + // "CHANGE_HISTORY_RESOURCE_TYPE_UNSPECIFIED" - Resource type unknown + // or not specified. + // "ACCOUNT" - Account resource + // "PROPERTY" - Property resource + // "FIREBASE_LINK" - FirebaseLink resource + // "GOOGLE_ADS_LINK" - GoogleAdsLink resource + // "GOOGLE_SIGNALS_SETTINGS" - GoogleSignalsSettings resource + // "CONVERSION_EVENT" - ConversionEvent resource + // "MEASUREMENT_PROTOCOL_SECRET" - MeasurementProtocolSecret resource + // "DATA_RETENTION_SETTINGS" - DataRetentionSettings resource + // "DISPLAY_VIDEO_360_ADVERTISER_LINK" - DisplayVideo360AdvertiserLink + // resource + // "DISPLAY_VIDEO_360_ADVERTISER_LINK_PROPOSAL" - + // DisplayVideo360AdvertiserLinkProposal resource + // "SEARCH_ADS_360_LINK" - SearchAds360Link resource + // "DATA_STREAM" - DataStream resource + // "ATTRIBUTION_SETTINGS" - AttributionSettings resource + // "EXPANDED_DATA_SET" - ExpandedDataSet resource + // "CHANNEL_GROUP" - ChannelGroup resource + ResourceType []string `json:"resourceType,omitempty"` + + // 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 *GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsResponse: Response +// message for SearchAccounts RPC. +type GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsResponse struct { + // ChangeHistoryEvents: Results that were accessible to the caller. + ChangeHistoryEvents []*GoogleAnalyticsAdminV1betaChangeHistoryEvent `json:"changeHistoryEvents,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"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "ChangeHistoryEvents") + // 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. "ChangeHistoryEvents") 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 *GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleProtobufEmpty: 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); } +type GoogleProtobufEmpty struct { + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` +} + +// method id "analyticsadmin.accountSummaries.list": + +type AccountSummariesListCall struct { + s *Service + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Returns summaries of all accounts accessible by the caller. +func (r *AccountSummariesService) List() *AccountSummariesListCall { + c := &AccountSummariesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of AccountSummary resources to return. The service may return fewer +// than this value, even if there are additional pages. If unspecified, +// at most 50 resources will be returned. The maximum value is 200; +// (higher values will be coerced to the maximum) +func (c *AccountSummariesListCall) PageSize(pageSize int64) *AccountSummariesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token, +// received from a previous `ListAccountSummaries` call. Provide this to +// retrieve the subsequent page. When paginating, all other parameters +// provided to `ListAccountSummaries` must match the call that provided +// the page token. +func (c *AccountSummariesListCall) PageToken(pageToken string) *AccountSummariesListCall { + 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 *AccountSummariesListCall) Fields(s ...googleapi.Field) *AccountSummariesListCall { + 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 *AccountSummariesListCall) IfNoneMatch(entityTag string) *AccountSummariesListCall { + 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 *AccountSummariesListCall) Context(ctx context.Context) *AccountSummariesListCall { + 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 *AccountSummariesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AccountSummariesListCall) 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, "v1beta/accountSummaries") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "analyticsadmin.accountSummaries.list" call. +// Exactly one of +// *GoogleAnalyticsAdminV1betaListAccountSummariesResponse or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleAnalyticsAdminV1betaListAccountSummariesResponse.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 *AccountSummariesListCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaListAccountSummariesResponse, 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 := &GoogleAnalyticsAdminV1betaListAccountSummariesResponse{ + 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": "Returns summaries of all accounts accessible by the caller.", + // "flatPath": "v1beta/accountSummaries", + // "httpMethod": "GET", + // "id": "analyticsadmin.accountSummaries.list", + // "parameterOrder": [], + // "parameters": { + // "pageSize": { + // "description": "The maximum number of AccountSummary resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A page token, received from a previous `ListAccountSummaries` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccountSummaries` must match the call that provided the page token.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1beta/accountSummaries", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaListAccountSummariesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// 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 *AccountSummariesListCall) Pages(ctx context.Context, f func(*GoogleAnalyticsAdminV1betaListAccountSummariesResponse) 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 "analyticsadmin.accounts.delete": + +type AccountsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Marks target Account as soft-deleted (ie: "trashed") and +// returns it. This API does not have a method to restore soft-deleted +// accounts. However, they can be restored using the Trash Can UI. If +// the accounts are not restored before the expiration time, the account +// and all child resources (eg: Properties, GoogleAdsLinks, Streams, +// UserLinks) will be permanently purged. +// https://support.google.com/analytics/answer/6154772 Returns an error +// if the target is not found. +// +// - name: The name of the Account to soft-delete. Format: +// accounts/{account} Example: "accounts/100". +func (r *AccountsService) Delete(name string) *AccountsDeleteCall { + c := &AccountsDeleteCall{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 *AccountsDeleteCall) Fields(s ...googleapi.Field) *AccountsDeleteCall { + 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 *AccountsDeleteCall) Context(ctx context.Context) *AccountsDeleteCall { + 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 *AccountsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AccountsDeleteCall) 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, "v1beta/{+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 "analyticsadmin.accounts.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.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 *AccountsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, 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 := &GoogleProtobufEmpty{ + 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": "Marks target Account as soft-deleted (ie: \"trashed\") and returns it. This API does not have a method to restore soft-deleted accounts. However, they can be restored using the Trash Can UI. If the accounts are not restored before the expiration time, the account and all child resources (eg: Properties, GoogleAdsLinks, Streams, UserLinks) will be permanently purged. https://support.google.com/analytics/answer/6154772 Returns an error if the target is not found.", + // "flatPath": "v1beta/accounts/{accountsId}", + // "httpMethod": "DELETE", + // "id": "analyticsadmin.accounts.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the Account to soft-delete. Format: accounts/{account} Example: \"accounts/100\"", + // "location": "path", + // "pattern": "^accounts/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.accounts.get": + +type AccountsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Lookup for a single Account. +// +// - name: The name of the account to lookup. Format: accounts/{account} +// Example: "accounts/100". +func (r *AccountsService) Get(name string) *AccountsGetCall { + c := &AccountsGetCall{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 *AccountsGetCall) Fields(s ...googleapi.Field) *AccountsGetCall { + 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 *AccountsGetCall) IfNoneMatch(entityTag string) *AccountsGetCall { + 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 *AccountsGetCall) Context(ctx context.Context) *AccountsGetCall { + 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 *AccountsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AccountsGetCall) 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, "v1beta/{+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 "analyticsadmin.accounts.get" call. +// Exactly one of *GoogleAnalyticsAdminV1betaAccount or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleAnalyticsAdminV1betaAccount.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 *AccountsGetCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaAccount, 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 := &GoogleAnalyticsAdminV1betaAccount{ + 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": "Lookup for a single Account.", + // "flatPath": "v1beta/accounts/{accountsId}", + // "httpMethod": "GET", + // "id": "analyticsadmin.accounts.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the account to lookup. Format: accounts/{account} Example: \"accounts/100\"", + // "location": "path", + // "pattern": "^accounts/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaAccount" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// method id "analyticsadmin.accounts.getDataSharingSettings": + +type AccountsGetDataSharingSettingsCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetDataSharingSettings: Get data sharing settings on an account. Data +// sharing settings are singletons. +// +// - name: The name of the settings to lookup. Format: +// accounts/{account}/dataSharingSettings Example: +// "accounts/1000/dataSharingSettings". +func (r *AccountsService) GetDataSharingSettings(name string) *AccountsGetDataSharingSettingsCall { + c := &AccountsGetDataSharingSettingsCall{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 *AccountsGetDataSharingSettingsCall) Fields(s ...googleapi.Field) *AccountsGetDataSharingSettingsCall { + 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 *AccountsGetDataSharingSettingsCall) IfNoneMatch(entityTag string) *AccountsGetDataSharingSettingsCall { + 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 *AccountsGetDataSharingSettingsCall) Context(ctx context.Context) *AccountsGetDataSharingSettingsCall { + 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 *AccountsGetDataSharingSettingsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AccountsGetDataSharingSettingsCall) 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, "v1beta/{+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 "analyticsadmin.accounts.getDataSharingSettings" call. +// Exactly one of *GoogleAnalyticsAdminV1betaDataSharingSettings or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAnalyticsAdminV1betaDataSharingSettings.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 *AccountsGetDataSharingSettingsCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaDataSharingSettings, 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 := &GoogleAnalyticsAdminV1betaDataSharingSettings{ + 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": "Get data sharing settings on an account. Data sharing settings are singletons.", + // "flatPath": "v1beta/accounts/{accountsId}/dataSharingSettings", + // "httpMethod": "GET", + // "id": "analyticsadmin.accounts.getDataSharingSettings", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the settings to lookup. Format: accounts/{account}/dataSharingSettings Example: \"accounts/1000/dataSharingSettings\"", + // "location": "path", + // "pattern": "^accounts/[^/]+/dataSharingSettings$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaDataSharingSettings" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// method id "analyticsadmin.accounts.list": + +type AccountsListCall struct { + s *Service + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Returns all accounts accessible by the caller. Note that these +// accounts might not currently have GA4 properties. Soft-deleted (ie: +// "trashed") accounts are excluded by default. Returns an empty list if +// no relevant accounts are found. +func (r *AccountsService) List() *AccountsListCall { + c := &AccountsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of resources to return. The service may return fewer than this value, +// even if there are additional pages. If unspecified, at most 50 +// resources will be returned. The maximum value is 200; (higher values +// will be coerced to the maximum) +func (c *AccountsListCall) PageSize(pageSize int64) *AccountsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token, +// received from a previous `ListAccounts` call. Provide this to +// retrieve the subsequent page. When paginating, all other parameters +// provided to `ListAccounts` must match the call that provided the page +// token. +func (c *AccountsListCall) PageToken(pageToken string) *AccountsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// ShowDeleted sets the optional parameter "showDeleted": Whether to +// include soft-deleted (ie: "trashed") Accounts in the results. +// Accounts can be inspected to determine whether they are deleted or +// not. +func (c *AccountsListCall) ShowDeleted(showDeleted bool) *AccountsListCall { + c.urlParams_.Set("showDeleted", fmt.Sprint(showDeleted)) + 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 *AccountsListCall) Fields(s ...googleapi.Field) *AccountsListCall { + 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 *AccountsListCall) IfNoneMatch(entityTag string) *AccountsListCall { + 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 *AccountsListCall) Context(ctx context.Context) *AccountsListCall { + 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 *AccountsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AccountsListCall) 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, "v1beta/accounts") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "analyticsadmin.accounts.list" call. +// Exactly one of *GoogleAnalyticsAdminV1betaListAccountsResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAnalyticsAdminV1betaListAccountsResponse.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 *AccountsListCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaListAccountsResponse, 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 := &GoogleAnalyticsAdminV1betaListAccountsResponse{ + 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": "Returns all accounts accessible by the caller. Note that these accounts might not currently have GA4 properties. Soft-deleted (ie: \"trashed\") accounts are excluded by default. Returns an empty list if no relevant accounts are found.", + // "flatPath": "v1beta/accounts", + // "httpMethod": "GET", + // "id": "analyticsadmin.accounts.list", + // "parameterOrder": [], + // "parameters": { + // "pageSize": { + // "description": "The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must match the call that provided the page token.", + // "location": "query", + // "type": "string" + // }, + // "showDeleted": { + // "description": "Whether to include soft-deleted (ie: \"trashed\") Accounts in the results. Accounts can be inspected to determine whether they are deleted or not.", + // "location": "query", + // "type": "boolean" + // } + // }, + // "path": "v1beta/accounts", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaListAccountsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// 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 *AccountsListCall) Pages(ctx context.Context, f func(*GoogleAnalyticsAdminV1betaListAccountsResponse) 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 "analyticsadmin.accounts.patch": + +type AccountsPatchCall struct { + s *Service + name string + googleanalyticsadminv1betaaccount *GoogleAnalyticsAdminV1betaAccount + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates an account. +// +// - name: Output only. Resource name of this account. Format: +// accounts/{account} Example: "accounts/100". +func (r *AccountsService) Patch(name string, googleanalyticsadminv1betaaccount *GoogleAnalyticsAdminV1betaAccount) *AccountsPatchCall { + c := &AccountsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleanalyticsadminv1betaaccount = googleanalyticsadminv1betaaccount + return c +} + +// UpdateMask sets the optional parameter "updateMask": Required. The +// list of fields to be updated. Field names must be in snake case +// (e.g., "field_to_update"). Omitted fields will not be updated. To +// replace the entire entity, use one path with the string "*" to match +// all fields. +func (c *AccountsPatchCall) UpdateMask(updateMask string) *AccountsPatchCall { + 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 *AccountsPatchCall) Fields(s ...googleapi.Field) *AccountsPatchCall { + 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 *AccountsPatchCall) Context(ctx context.Context) *AccountsPatchCall { + 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 *AccountsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AccountsPatchCall) 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.googleanalyticsadminv1betaaccount) + 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, "v1beta/{+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 "analyticsadmin.accounts.patch" call. +// Exactly one of *GoogleAnalyticsAdminV1betaAccount or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleAnalyticsAdminV1betaAccount.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 *AccountsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaAccount, 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 := &GoogleAnalyticsAdminV1betaAccount{ + 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 an account.", + // "flatPath": "v1beta/accounts/{accountsId}", + // "httpMethod": "PATCH", + // "id": "analyticsadmin.accounts.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Output only. Resource name of this account. Format: accounts/{account} Example: \"accounts/100\"", + // "location": "path", + // "pattern": "^accounts/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Required. The list of fields to be updated. Field names must be in snake case (e.g., \"field_to_update\"). Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaAccount" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaAccount" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.accounts.provisionAccountTicket": + +type AccountsProvisionAccountTicketCall struct { + s *Service + googleanalyticsadminv1betaprovisionaccountticketrequest *GoogleAnalyticsAdminV1betaProvisionAccountTicketRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// ProvisionAccountTicket: Requests a ticket for creating an account. +func (r *AccountsService) ProvisionAccountTicket(googleanalyticsadminv1betaprovisionaccountticketrequest *GoogleAnalyticsAdminV1betaProvisionAccountTicketRequest) *AccountsProvisionAccountTicketCall { + c := &AccountsProvisionAccountTicketCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.googleanalyticsadminv1betaprovisionaccountticketrequest = googleanalyticsadminv1betaprovisionaccountticketrequest + 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 *AccountsProvisionAccountTicketCall) Fields(s ...googleapi.Field) *AccountsProvisionAccountTicketCall { + 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 *AccountsProvisionAccountTicketCall) Context(ctx context.Context) *AccountsProvisionAccountTicketCall { + 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 *AccountsProvisionAccountTicketCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AccountsProvisionAccountTicketCall) 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.googleanalyticsadminv1betaprovisionaccountticketrequest) + 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, "v1beta/accounts:provisionAccountTicket") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "analyticsadmin.accounts.provisionAccountTicket" call. +// Exactly one of +// *GoogleAnalyticsAdminV1betaProvisionAccountTicketResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAnalyticsAdminV1betaProvisionAccountTicketResponse.ServerRespon +// se.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 *AccountsProvisionAccountTicketCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaProvisionAccountTicketResponse, 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 := &GoogleAnalyticsAdminV1betaProvisionAccountTicketResponse{ + 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": "Requests a ticket for creating an account.", + // "flatPath": "v1beta/accounts:provisionAccountTicket", + // "httpMethod": "POST", + // "id": "analyticsadmin.accounts.provisionAccountTicket", + // "parameterOrder": [], + // "parameters": {}, + // "path": "v1beta/accounts:provisionAccountTicket", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaProvisionAccountTicketRequest" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaProvisionAccountTicketResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.accounts.searchChangeHistoryEvents": + +type AccountsSearchChangeHistoryEventsCall struct { + s *Service + account string + googleanalyticsadminv1betasearchchangehistoryeventsrequest *GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SearchChangeHistoryEvents: Searches through all changes to an account +// or its children given the specified set of filters. +// +// - account: The account resource for which to return change history +// resources. +func (r *AccountsService) SearchChangeHistoryEvents(account string, googleanalyticsadminv1betasearchchangehistoryeventsrequest *GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsRequest) *AccountsSearchChangeHistoryEventsCall { + c := &AccountsSearchChangeHistoryEventsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.account = account + c.googleanalyticsadminv1betasearchchangehistoryeventsrequest = googleanalyticsadminv1betasearchchangehistoryeventsrequest + 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 *AccountsSearchChangeHistoryEventsCall) Fields(s ...googleapi.Field) *AccountsSearchChangeHistoryEventsCall { + 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 *AccountsSearchChangeHistoryEventsCall) Context(ctx context.Context) *AccountsSearchChangeHistoryEventsCall { + 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 *AccountsSearchChangeHistoryEventsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AccountsSearchChangeHistoryEventsCall) 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.googleanalyticsadminv1betasearchchangehistoryeventsrequest) + 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, "v1beta/{+account}:searchChangeHistoryEvents") + 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{ + "account": c.account, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "analyticsadmin.accounts.searchChangeHistoryEvents" call. +// Exactly one of +// *GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsResponse.ServerRes +// ponse.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 *AccountsSearchChangeHistoryEventsCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsResponse, 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 := &GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsResponse{ + 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": "Searches through all changes to an account or its children given the specified set of filters.", + // "flatPath": "v1beta/accounts/{accountsId}:searchChangeHistoryEvents", + // "httpMethod": "POST", + // "id": "analyticsadmin.accounts.searchChangeHistoryEvents", + // "parameterOrder": [ + // "account" + // ], + // "parameters": { + // "account": { + // "description": "Required. The account resource for which to return change history resources.", + // "location": "path", + // "pattern": "^accounts/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+account}:searchChangeHistoryEvents", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsRequest" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// 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 *AccountsSearchChangeHistoryEventsCall) Pages(ctx context.Context, f func(*GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsResponse) error) error { + c.ctx_ = ctx + defer func(pt string) { c.googleanalyticsadminv1betasearchchangehistoryeventsrequest.PageToken = pt }(c.googleanalyticsadminv1betasearchchangehistoryeventsrequest.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.googleanalyticsadminv1betasearchchangehistoryeventsrequest.PageToken = x.NextPageToken + } +} + +// method id "analyticsadmin.properties.acknowledgeUserDataCollection": + +type PropertiesAcknowledgeUserDataCollectionCall struct { + s *Service + property string + googleanalyticsadminv1betaacknowledgeuserdatacollectionrequest *GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// AcknowledgeUserDataCollection: Acknowledges the terms of user data +// collection for the specified property. This acknowledgement must be +// completed (either in the Google Analytics UI or via this API) before +// MeasurementProtocolSecret resources may be created. +// +// - property: The property for which to acknowledge user data +// collection. +func (r *PropertiesService) AcknowledgeUserDataCollection(property string, googleanalyticsadminv1betaacknowledgeuserdatacollectionrequest *GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionRequest) *PropertiesAcknowledgeUserDataCollectionCall { + c := &PropertiesAcknowledgeUserDataCollectionCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.property = property + c.googleanalyticsadminv1betaacknowledgeuserdatacollectionrequest = googleanalyticsadminv1betaacknowledgeuserdatacollectionrequest + 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 *PropertiesAcknowledgeUserDataCollectionCall) Fields(s ...googleapi.Field) *PropertiesAcknowledgeUserDataCollectionCall { + 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 *PropertiesAcknowledgeUserDataCollectionCall) Context(ctx context.Context) *PropertiesAcknowledgeUserDataCollectionCall { + 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 *PropertiesAcknowledgeUserDataCollectionCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesAcknowledgeUserDataCollectionCall) 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.googleanalyticsadminv1betaacknowledgeuserdatacollectionrequest) + 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, "v1beta/{+property}:acknowledgeUserDataCollection") + 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{ + "property": c.property, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "analyticsadmin.properties.acknowledgeUserDataCollection" call. +// Exactly one of +// *GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionResponse.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 *PropertiesAcknowledgeUserDataCollectionCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionResponse, 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 := &GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionResponse{ + 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": "Acknowledges the terms of user data collection for the specified property. This acknowledgement must be completed (either in the Google Analytics UI or via this API) before MeasurementProtocolSecret resources may be created.", + // "flatPath": "v1beta/properties/{propertiesId}:acknowledgeUserDataCollection", + // "httpMethod": "POST", + // "id": "analyticsadmin.properties.acknowledgeUserDataCollection", + // "parameterOrder": [ + // "property" + // ], + // "parameters": { + // "property": { + // "description": "Required. The property for which to acknowledge user data collection.", + // "location": "path", + // "pattern": "^properties/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+property}:acknowledgeUserDataCollection", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionRequest" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaAcknowledgeUserDataCollectionResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.create": + +type PropertiesCreateCall struct { + s *Service + googleanalyticsadminv1betaproperty *GoogleAnalyticsAdminV1betaProperty + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates an "GA4" property with the specified location and +// attributes. +func (r *PropertiesService) Create(googleanalyticsadminv1betaproperty *GoogleAnalyticsAdminV1betaProperty) *PropertiesCreateCall { + c := &PropertiesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.googleanalyticsadminv1betaproperty = googleanalyticsadminv1betaproperty + 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 *PropertiesCreateCall) Fields(s ...googleapi.Field) *PropertiesCreateCall { + 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 *PropertiesCreateCall) Context(ctx context.Context) *PropertiesCreateCall { + 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 *PropertiesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesCreateCall) 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.googleanalyticsadminv1betaproperty) + 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, "v1beta/properties") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "analyticsadmin.properties.create" call. +// Exactly one of *GoogleAnalyticsAdminV1betaProperty or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleAnalyticsAdminV1betaProperty.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 *PropertiesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaProperty, 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 := &GoogleAnalyticsAdminV1betaProperty{ + 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 an \"GA4\" property with the specified location and attributes.", + // "flatPath": "v1beta/properties", + // "httpMethod": "POST", + // "id": "analyticsadmin.properties.create", + // "parameterOrder": [], + // "parameters": {}, + // "path": "v1beta/properties", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaProperty" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaProperty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.delete": + +type PropertiesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Marks target Property as soft-deleted (ie: "trashed") and +// returns it. This API does not have a method to restore soft-deleted +// properties. However, they can be restored using the Trash Can UI. If +// the properties are not restored before the expiration time, the +// Property and all child resources (eg: GoogleAdsLinks, Streams, +// UserLinks) will be permanently purged. +// https://support.google.com/analytics/answer/6154772 Returns an error +// if the target is not found, or is not a GA4 Property. +// +// - name: The name of the Property to soft-delete. Format: +// properties/{property_id} Example: "properties/1000". +func (r *PropertiesService) Delete(name string) *PropertiesDeleteCall { + c := &PropertiesDeleteCall{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 *PropertiesDeleteCall) Fields(s ...googleapi.Field) *PropertiesDeleteCall { + 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 *PropertiesDeleteCall) Context(ctx context.Context) *PropertiesDeleteCall { + 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 *PropertiesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesDeleteCall) 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, "v1beta/{+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 "analyticsadmin.properties.delete" call. +// Exactly one of *GoogleAnalyticsAdminV1betaProperty or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleAnalyticsAdminV1betaProperty.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 *PropertiesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaProperty, 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 := &GoogleAnalyticsAdminV1betaProperty{ + 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": "Marks target Property as soft-deleted (ie: \"trashed\") and returns it. This API does not have a method to restore soft-deleted properties. However, they can be restored using the Trash Can UI. If the properties are not restored before the expiration time, the Property and all child resources (eg: GoogleAdsLinks, Streams, UserLinks) will be permanently purged. https://support.google.com/analytics/answer/6154772 Returns an error if the target is not found, or is not a GA4 Property.", + // "flatPath": "v1beta/properties/{propertiesId}", + // "httpMethod": "DELETE", + // "id": "analyticsadmin.properties.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the Property to soft-delete. Format: properties/{property_id} Example: \"properties/1000\"", + // "location": "path", + // "pattern": "^properties/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaProperty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.get": + +type PropertiesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Lookup for a single "GA4" Property. +// +// - name: The name of the property to lookup. Format: +// properties/{property_id} Example: "properties/1000". +func (r *PropertiesService) Get(name string) *PropertiesGetCall { + c := &PropertiesGetCall{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 *PropertiesGetCall) Fields(s ...googleapi.Field) *PropertiesGetCall { + 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 *PropertiesGetCall) IfNoneMatch(entityTag string) *PropertiesGetCall { + 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 *PropertiesGetCall) Context(ctx context.Context) *PropertiesGetCall { + 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 *PropertiesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesGetCall) 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, "v1beta/{+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 "analyticsadmin.properties.get" call. +// Exactly one of *GoogleAnalyticsAdminV1betaProperty or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleAnalyticsAdminV1betaProperty.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 *PropertiesGetCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaProperty, 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 := &GoogleAnalyticsAdminV1betaProperty{ + 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": "Lookup for a single \"GA4\" Property.", + // "flatPath": "v1beta/properties/{propertiesId}", + // "httpMethod": "GET", + // "id": "analyticsadmin.properties.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the property to lookup. Format: properties/{property_id} Example: \"properties/1000\"", + // "location": "path", + // "pattern": "^properties/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaProperty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// method id "analyticsadmin.properties.getDataRetentionSettings": + +type PropertiesGetDataRetentionSettingsCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetDataRetentionSettings: Returns the singleton data retention +// settings for this property. +// +// - name: The name of the settings to lookup. Format: +// properties/{property}/dataRetentionSettings Example: +// "properties/1000/dataRetentionSettings". +func (r *PropertiesService) GetDataRetentionSettings(name string) *PropertiesGetDataRetentionSettingsCall { + c := &PropertiesGetDataRetentionSettingsCall{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 *PropertiesGetDataRetentionSettingsCall) Fields(s ...googleapi.Field) *PropertiesGetDataRetentionSettingsCall { + 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 *PropertiesGetDataRetentionSettingsCall) IfNoneMatch(entityTag string) *PropertiesGetDataRetentionSettingsCall { + 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 *PropertiesGetDataRetentionSettingsCall) Context(ctx context.Context) *PropertiesGetDataRetentionSettingsCall { + 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 *PropertiesGetDataRetentionSettingsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesGetDataRetentionSettingsCall) 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, "v1beta/{+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 "analyticsadmin.properties.getDataRetentionSettings" call. +// Exactly one of *GoogleAnalyticsAdminV1betaDataRetentionSettings or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAnalyticsAdminV1betaDataRetentionSettings.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 *PropertiesGetDataRetentionSettingsCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaDataRetentionSettings, 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 := &GoogleAnalyticsAdminV1betaDataRetentionSettings{ + 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": "Returns the singleton data retention settings for this property.", + // "flatPath": "v1beta/properties/{propertiesId}/dataRetentionSettings", + // "httpMethod": "GET", + // "id": "analyticsadmin.properties.getDataRetentionSettings", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the settings to lookup. Format: properties/{property}/dataRetentionSettings Example: \"properties/1000/dataRetentionSettings\"", + // "location": "path", + // "pattern": "^properties/[^/]+/dataRetentionSettings$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaDataRetentionSettings" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// method id "analyticsadmin.properties.list": + +type PropertiesListCall struct { + s *Service + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Returns child Properties under the specified parent Account. +// Only "GA4" properties will be returned. Properties will be excluded +// if the caller does not have access. Soft-deleted (ie: "trashed") +// properties are excluded by default. Returns an empty list if no +// relevant properties are found. +func (r *PropertiesService) List() *PropertiesListCall { + c := &PropertiesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + return c +} + +// Filter sets the optional parameter "filter": Required. An expression +// for filtering the results of the request. Fields eligible for +// filtering are: `parent:`(The resource name of the parent +// account/property) or `ancestor:`(The resource name of the parent +// account) or `firebase_project:`(The id or number of the linked +// firebase project). Some examples of filters: ``` | Filter | +// Description | +// |-----------------------------|--------------------------------------- +// ----| | parent:accounts/123 | The account with account id: 123. | | +// parent:properties/123 | The property with property id: 123. | | +// ancestor:accounts/123 | The account with account id: 123. | | +// firebase_project:project-id | The firebase project with id: +// project-id. | | firebase_project:123 | The firebase project with +// number: 123. | ``` +func (c *PropertiesListCall) Filter(filter string) *PropertiesListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of resources to return. The service may return fewer than this value, +// even if there are additional pages. If unspecified, at most 50 +// resources will be returned. The maximum value is 200; (higher values +// will be coerced to the maximum) +func (c *PropertiesListCall) PageSize(pageSize int64) *PropertiesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token, +// received from a previous `ListProperties` call. Provide this to +// retrieve the subsequent page. When paginating, all other parameters +// provided to `ListProperties` must match the call that provided the +// page token. +func (c *PropertiesListCall) PageToken(pageToken string) *PropertiesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// ShowDeleted sets the optional parameter "showDeleted": Whether to +// include soft-deleted (ie: "trashed") Properties in the results. +// Properties can be inspected to determine whether they are deleted or +// not. +func (c *PropertiesListCall) ShowDeleted(showDeleted bool) *PropertiesListCall { + c.urlParams_.Set("showDeleted", fmt.Sprint(showDeleted)) + 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 *PropertiesListCall) Fields(s ...googleapi.Field) *PropertiesListCall { + 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 *PropertiesListCall) IfNoneMatch(entityTag string) *PropertiesListCall { + 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 *PropertiesListCall) Context(ctx context.Context) *PropertiesListCall { + 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 *PropertiesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesListCall) 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, "v1beta/properties") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "analyticsadmin.properties.list" call. +// Exactly one of *GoogleAnalyticsAdminV1betaListPropertiesResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAnalyticsAdminV1betaListPropertiesResponse.ServerResponse.Heade +// r 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 *PropertiesListCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaListPropertiesResponse, 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 := &GoogleAnalyticsAdminV1betaListPropertiesResponse{ + 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": "Returns child Properties under the specified parent Account. Only \"GA4\" properties will be returned. Properties will be excluded if the caller does not have access. Soft-deleted (ie: \"trashed\") properties are excluded by default. Returns an empty list if no relevant properties are found.", + // "flatPath": "v1beta/properties", + // "httpMethod": "GET", + // "id": "analyticsadmin.properties.list", + // "parameterOrder": [], + // "parameters": { + // "filter": { + // "description": "Required. An expression for filtering the results of the request. Fields eligible for filtering are: `parent:`(The resource name of the parent account/property) or `ancestor:`(The resource name of the parent account) or `firebase_project:`(The id or number of the linked firebase project). Some examples of filters: ``` | Filter | Description | |-----------------------------|-------------------------------------------| | parent:accounts/123 | The account with account id: 123. | | parent:properties/123 | The property with property id: 123. | | ancestor:accounts/123 | The account with account id: 123. | | firebase_project:project-id | The firebase project with id: project-id. | | firebase_project:123 | The firebase project with number: 123. | ```", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A page token, received from a previous `ListProperties` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must match the call that provided the page token.", + // "location": "query", + // "type": "string" + // }, + // "showDeleted": { + // "description": "Whether to include soft-deleted (ie: \"trashed\") Properties in the results. Properties can be inspected to determine whether they are deleted or not.", + // "location": "query", + // "type": "boolean" + // } + // }, + // "path": "v1beta/properties", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaListPropertiesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// 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 *PropertiesListCall) Pages(ctx context.Context, f func(*GoogleAnalyticsAdminV1betaListPropertiesResponse) 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 "analyticsadmin.properties.patch": + +type PropertiesPatchCall struct { + s *Service + name string + googleanalyticsadminv1betaproperty *GoogleAnalyticsAdminV1betaProperty + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a property. +// +// - name: Output only. Resource name of this property. Format: +// properties/{property_id} Example: "properties/1000". +func (r *PropertiesService) Patch(name string, googleanalyticsadminv1betaproperty *GoogleAnalyticsAdminV1betaProperty) *PropertiesPatchCall { + c := &PropertiesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleanalyticsadminv1betaproperty = googleanalyticsadminv1betaproperty + return c +} + +// UpdateMask sets the optional parameter "updateMask": Required. The +// list of fields to be updated. Field names must be in snake case +// (e.g., "field_to_update"). Omitted fields will not be updated. To +// replace the entire entity, use one path with the string "*" to match +// all fields. +func (c *PropertiesPatchCall) UpdateMask(updateMask string) *PropertiesPatchCall { + 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 *PropertiesPatchCall) Fields(s ...googleapi.Field) *PropertiesPatchCall { + 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 *PropertiesPatchCall) Context(ctx context.Context) *PropertiesPatchCall { + 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 *PropertiesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesPatchCall) 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.googleanalyticsadminv1betaproperty) + 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, "v1beta/{+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 "analyticsadmin.properties.patch" call. +// Exactly one of *GoogleAnalyticsAdminV1betaProperty or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleAnalyticsAdminV1betaProperty.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 *PropertiesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaProperty, 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 := &GoogleAnalyticsAdminV1betaProperty{ + 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 a property.", + // "flatPath": "v1beta/properties/{propertiesId}", + // "httpMethod": "PATCH", + // "id": "analyticsadmin.properties.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Output only. Resource name of this property. Format: properties/{property_id} Example: \"properties/1000\"", + // "location": "path", + // "pattern": "^properties/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Required. The list of fields to be updated. Field names must be in snake case (e.g., \"field_to_update\"). Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaProperty" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaProperty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.updateDataRetentionSettings": + +type PropertiesUpdateDataRetentionSettingsCall struct { + s *Service + name string + googleanalyticsadminv1betadataretentionsettings *GoogleAnalyticsAdminV1betaDataRetentionSettings + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// UpdateDataRetentionSettings: Updates the singleton data retention +// settings for this property. +// +// - name: Output only. Resource name for this DataRetentionSetting +// resource. Format: properties/{property}/dataRetentionSettings. +func (r *PropertiesService) UpdateDataRetentionSettings(name string, googleanalyticsadminv1betadataretentionsettings *GoogleAnalyticsAdminV1betaDataRetentionSettings) *PropertiesUpdateDataRetentionSettingsCall { + c := &PropertiesUpdateDataRetentionSettingsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleanalyticsadminv1betadataretentionsettings = googleanalyticsadminv1betadataretentionsettings + return c +} + +// UpdateMask sets the optional parameter "updateMask": Required. The +// list of fields to be updated. Field names must be in snake case +// (e.g., "field_to_update"). Omitted fields will not be updated. To +// replace the entire entity, use one path with the string "*" to match +// all fields. +func (c *PropertiesUpdateDataRetentionSettingsCall) UpdateMask(updateMask string) *PropertiesUpdateDataRetentionSettingsCall { + 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 *PropertiesUpdateDataRetentionSettingsCall) Fields(s ...googleapi.Field) *PropertiesUpdateDataRetentionSettingsCall { + 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 *PropertiesUpdateDataRetentionSettingsCall) Context(ctx context.Context) *PropertiesUpdateDataRetentionSettingsCall { + 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 *PropertiesUpdateDataRetentionSettingsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesUpdateDataRetentionSettingsCall) 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.googleanalyticsadminv1betadataretentionsettings) + 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, "v1beta/{+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 "analyticsadmin.properties.updateDataRetentionSettings" call. +// Exactly one of *GoogleAnalyticsAdminV1betaDataRetentionSettings or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAnalyticsAdminV1betaDataRetentionSettings.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 *PropertiesUpdateDataRetentionSettingsCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaDataRetentionSettings, 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 := &GoogleAnalyticsAdminV1betaDataRetentionSettings{ + 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 singleton data retention settings for this property.", + // "flatPath": "v1beta/properties/{propertiesId}/dataRetentionSettings", + // "httpMethod": "PATCH", + // "id": "analyticsadmin.properties.updateDataRetentionSettings", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Output only. Resource name for this DataRetentionSetting resource. Format: properties/{property}/dataRetentionSettings", + // "location": "path", + // "pattern": "^properties/[^/]+/dataRetentionSettings$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Required. The list of fields to be updated. Field names must be in snake case (e.g., \"field_to_update\"). Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaDataRetentionSettings" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaDataRetentionSettings" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.conversionEvents.create": + +type PropertiesConversionEventsCreateCall struct { + s *Service + parent string + googleanalyticsadminv1betaconversionevent *GoogleAnalyticsAdminV1betaConversionEvent + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a conversion event with the specified attributes. +// +// - parent: The resource name of the parent property where this +// conversion event will be created. Format: properties/123. +func (r *PropertiesConversionEventsService) Create(parent string, googleanalyticsadminv1betaconversionevent *GoogleAnalyticsAdminV1betaConversionEvent) *PropertiesConversionEventsCreateCall { + c := &PropertiesConversionEventsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleanalyticsadminv1betaconversionevent = googleanalyticsadminv1betaconversionevent + 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 *PropertiesConversionEventsCreateCall) Fields(s ...googleapi.Field) *PropertiesConversionEventsCreateCall { + 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 *PropertiesConversionEventsCreateCall) Context(ctx context.Context) *PropertiesConversionEventsCreateCall { + 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 *PropertiesConversionEventsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesConversionEventsCreateCall) 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.googleanalyticsadminv1betaconversionevent) + 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, "v1beta/{+parent}/conversionEvents") + 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 "analyticsadmin.properties.conversionEvents.create" call. +// Exactly one of *GoogleAnalyticsAdminV1betaConversionEvent or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAnalyticsAdminV1betaConversionEvent.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 *PropertiesConversionEventsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaConversionEvent, 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 := &GoogleAnalyticsAdminV1betaConversionEvent{ + 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 conversion event with the specified attributes.", + // "flatPath": "v1beta/properties/{propertiesId}/conversionEvents", + // "httpMethod": "POST", + // "id": "analyticsadmin.properties.conversionEvents.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The resource name of the parent property where this conversion event will be created. Format: properties/123", + // "location": "path", + // "pattern": "^properties/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+parent}/conversionEvents", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaConversionEvent" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaConversionEvent" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.conversionEvents.delete": + +type PropertiesConversionEventsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a conversion event in a property. +// +// - name: The resource name of the conversion event to delete. Format: +// properties/{property}/conversionEvents/{conversion_event} Example: +// "properties/123/conversionEvents/456". +func (r *PropertiesConversionEventsService) Delete(name string) *PropertiesConversionEventsDeleteCall { + c := &PropertiesConversionEventsDeleteCall{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 *PropertiesConversionEventsDeleteCall) Fields(s ...googleapi.Field) *PropertiesConversionEventsDeleteCall { + 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 *PropertiesConversionEventsDeleteCall) Context(ctx context.Context) *PropertiesConversionEventsDeleteCall { + 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 *PropertiesConversionEventsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesConversionEventsDeleteCall) 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, "v1beta/{+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 "analyticsadmin.properties.conversionEvents.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.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 *PropertiesConversionEventsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, 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 := &GoogleProtobufEmpty{ + 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 conversion event in a property.", + // "flatPath": "v1beta/properties/{propertiesId}/conversionEvents/{conversionEventsId}", + // "httpMethod": "DELETE", + // "id": "analyticsadmin.properties.conversionEvents.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The resource name of the conversion event to delete. Format: properties/{property}/conversionEvents/{conversion_event} Example: \"properties/123/conversionEvents/456\"", + // "location": "path", + // "pattern": "^properties/[^/]+/conversionEvents/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.conversionEvents.get": + +type PropertiesConversionEventsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Retrieve a single conversion event. +// +// - name: The resource name of the conversion event to retrieve. +// Format: properties/{property}/conversionEvents/{conversion_event} +// Example: "properties/123/conversionEvents/456". +func (r *PropertiesConversionEventsService) Get(name string) *PropertiesConversionEventsGetCall { + c := &PropertiesConversionEventsGetCall{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 *PropertiesConversionEventsGetCall) Fields(s ...googleapi.Field) *PropertiesConversionEventsGetCall { + 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 *PropertiesConversionEventsGetCall) IfNoneMatch(entityTag string) *PropertiesConversionEventsGetCall { + 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 *PropertiesConversionEventsGetCall) Context(ctx context.Context) *PropertiesConversionEventsGetCall { + 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 *PropertiesConversionEventsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesConversionEventsGetCall) 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, "v1beta/{+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 "analyticsadmin.properties.conversionEvents.get" call. +// Exactly one of *GoogleAnalyticsAdminV1betaConversionEvent or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAnalyticsAdminV1betaConversionEvent.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 *PropertiesConversionEventsGetCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaConversionEvent, 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 := &GoogleAnalyticsAdminV1betaConversionEvent{ + 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": "Retrieve a single conversion event.", + // "flatPath": "v1beta/properties/{propertiesId}/conversionEvents/{conversionEventsId}", + // "httpMethod": "GET", + // "id": "analyticsadmin.properties.conversionEvents.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The resource name of the conversion event to retrieve. Format: properties/{property}/conversionEvents/{conversion_event} Example: \"properties/123/conversionEvents/456\"", + // "location": "path", + // "pattern": "^properties/[^/]+/conversionEvents/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaConversionEvent" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// method id "analyticsadmin.properties.conversionEvents.list": + +type PropertiesConversionEventsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Returns a list of conversion events in the specified parent +// property. Returns an empty list if no conversion events are found. +// +// - parent: The resource name of the parent property. Example: +// 'properties/123'. +func (r *PropertiesConversionEventsService) List(parent string) *PropertiesConversionEventsListCall { + c := &PropertiesConversionEventsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of resources to return. If unspecified, at most 50 resources will be +// returned. The maximum value is 200; (higher values will be coerced to +// the maximum) +func (c *PropertiesConversionEventsListCall) PageSize(pageSize int64) *PropertiesConversionEventsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token, +// received from a previous `ListConversionEvents` call. Provide this to +// retrieve the subsequent page. When paginating, all other parameters +// provided to `ListConversionEvents` must match the call that provided +// the page token. +func (c *PropertiesConversionEventsListCall) PageToken(pageToken string) *PropertiesConversionEventsListCall { + 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 *PropertiesConversionEventsListCall) Fields(s ...googleapi.Field) *PropertiesConversionEventsListCall { + 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 *PropertiesConversionEventsListCall) IfNoneMatch(entityTag string) *PropertiesConversionEventsListCall { + 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 *PropertiesConversionEventsListCall) Context(ctx context.Context) *PropertiesConversionEventsListCall { + 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 *PropertiesConversionEventsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesConversionEventsListCall) 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, "v1beta/{+parent}/conversionEvents") + 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 "analyticsadmin.properties.conversionEvents.list" call. +// Exactly one of +// *GoogleAnalyticsAdminV1betaListConversionEventsResponse or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleAnalyticsAdminV1betaListConversionEventsResponse.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 *PropertiesConversionEventsListCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaListConversionEventsResponse, 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 := &GoogleAnalyticsAdminV1betaListConversionEventsResponse{ + 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": "Returns a list of conversion events in the specified parent property. Returns an empty list if no conversion events are found.", + // "flatPath": "v1beta/properties/{propertiesId}/conversionEvents", + // "httpMethod": "GET", + // "id": "analyticsadmin.properties.conversionEvents.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A page token, received from a previous `ListConversionEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConversionEvents` must match the call that provided the page token.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The resource name of the parent property. Example: 'properties/123'", + // "location": "path", + // "pattern": "^properties/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+parent}/conversionEvents", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaListConversionEventsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// 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 *PropertiesConversionEventsListCall) Pages(ctx context.Context, f func(*GoogleAnalyticsAdminV1betaListConversionEventsResponse) 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 "analyticsadmin.properties.customDimensions.archive": + +type PropertiesCustomDimensionsArchiveCall struct { + s *Service + name string + googleanalyticsadminv1betaarchivecustomdimensionrequest *GoogleAnalyticsAdminV1betaArchiveCustomDimensionRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Archive: Archives a CustomDimension on a property. +// +// - name: The name of the CustomDimension to archive. Example format: +// properties/1234/customDimensions/5678. +func (r *PropertiesCustomDimensionsService) Archive(name string, googleanalyticsadminv1betaarchivecustomdimensionrequest *GoogleAnalyticsAdminV1betaArchiveCustomDimensionRequest) *PropertiesCustomDimensionsArchiveCall { + c := &PropertiesCustomDimensionsArchiveCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleanalyticsadminv1betaarchivecustomdimensionrequest = googleanalyticsadminv1betaarchivecustomdimensionrequest + 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 *PropertiesCustomDimensionsArchiveCall) Fields(s ...googleapi.Field) *PropertiesCustomDimensionsArchiveCall { + 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 *PropertiesCustomDimensionsArchiveCall) Context(ctx context.Context) *PropertiesCustomDimensionsArchiveCall { + 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 *PropertiesCustomDimensionsArchiveCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesCustomDimensionsArchiveCall) 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.googleanalyticsadminv1betaarchivecustomdimensionrequest) + 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, "v1beta/{+name}:archive") + 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 "analyticsadmin.properties.customDimensions.archive" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.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 *PropertiesCustomDimensionsArchiveCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, 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 := &GoogleProtobufEmpty{ + 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": "Archives a CustomDimension on a property.", + // "flatPath": "v1beta/properties/{propertiesId}/customDimensions/{customDimensionsId}:archive", + // "httpMethod": "POST", + // "id": "analyticsadmin.properties.customDimensions.archive", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the CustomDimension to archive. Example format: properties/1234/customDimensions/5678", + // "location": "path", + // "pattern": "^properties/[^/]+/customDimensions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}:archive", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaArchiveCustomDimensionRequest" + // }, + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.customDimensions.create": + +type PropertiesCustomDimensionsCreateCall struct { + s *Service + parent string + googleanalyticsadminv1betacustomdimension *GoogleAnalyticsAdminV1betaCustomDimension + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a CustomDimension. +// +// - parent: Example format: properties/1234. +func (r *PropertiesCustomDimensionsService) Create(parent string, googleanalyticsadminv1betacustomdimension *GoogleAnalyticsAdminV1betaCustomDimension) *PropertiesCustomDimensionsCreateCall { + c := &PropertiesCustomDimensionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleanalyticsadminv1betacustomdimension = googleanalyticsadminv1betacustomdimension + 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 *PropertiesCustomDimensionsCreateCall) Fields(s ...googleapi.Field) *PropertiesCustomDimensionsCreateCall { + 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 *PropertiesCustomDimensionsCreateCall) Context(ctx context.Context) *PropertiesCustomDimensionsCreateCall { + 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 *PropertiesCustomDimensionsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesCustomDimensionsCreateCall) 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.googleanalyticsadminv1betacustomdimension) + 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, "v1beta/{+parent}/customDimensions") + 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 "analyticsadmin.properties.customDimensions.create" call. +// Exactly one of *GoogleAnalyticsAdminV1betaCustomDimension or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAnalyticsAdminV1betaCustomDimension.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 *PropertiesCustomDimensionsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaCustomDimension, 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 := &GoogleAnalyticsAdminV1betaCustomDimension{ + 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 CustomDimension.", + // "flatPath": "v1beta/properties/{propertiesId}/customDimensions", + // "httpMethod": "POST", + // "id": "analyticsadmin.properties.customDimensions.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. Example format: properties/1234", + // "location": "path", + // "pattern": "^properties/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+parent}/customDimensions", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaCustomDimension" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaCustomDimension" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.customDimensions.get": + +type PropertiesCustomDimensionsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Lookup for a single CustomDimension. +// +// - name: The name of the CustomDimension to get. Example format: +// properties/1234/customDimensions/5678. +func (r *PropertiesCustomDimensionsService) Get(name string) *PropertiesCustomDimensionsGetCall { + c := &PropertiesCustomDimensionsGetCall{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 *PropertiesCustomDimensionsGetCall) Fields(s ...googleapi.Field) *PropertiesCustomDimensionsGetCall { + 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 *PropertiesCustomDimensionsGetCall) IfNoneMatch(entityTag string) *PropertiesCustomDimensionsGetCall { + 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 *PropertiesCustomDimensionsGetCall) Context(ctx context.Context) *PropertiesCustomDimensionsGetCall { + 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 *PropertiesCustomDimensionsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesCustomDimensionsGetCall) 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, "v1beta/{+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 "analyticsadmin.properties.customDimensions.get" call. +// Exactly one of *GoogleAnalyticsAdminV1betaCustomDimension or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAnalyticsAdminV1betaCustomDimension.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 *PropertiesCustomDimensionsGetCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaCustomDimension, 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 := &GoogleAnalyticsAdminV1betaCustomDimension{ + 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": "Lookup for a single CustomDimension.", + // "flatPath": "v1beta/properties/{propertiesId}/customDimensions/{customDimensionsId}", + // "httpMethod": "GET", + // "id": "analyticsadmin.properties.customDimensions.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the CustomDimension to get. Example format: properties/1234/customDimensions/5678", + // "location": "path", + // "pattern": "^properties/[^/]+/customDimensions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaCustomDimension" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// method id "analyticsadmin.properties.customDimensions.list": + +type PropertiesCustomDimensionsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists CustomDimensions on a property. +// +// - parent: Example format: properties/1234. +func (r *PropertiesCustomDimensionsService) List(parent string) *PropertiesCustomDimensionsListCall { + c := &PropertiesCustomDimensionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of resources to return. If unspecified, at most 50 resources will be +// returned. The maximum value is 200 (higher values will be coerced to +// the maximum). +func (c *PropertiesCustomDimensionsListCall) PageSize(pageSize int64) *PropertiesCustomDimensionsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token, +// received from a previous `ListCustomDimensions` call. Provide this to +// retrieve the subsequent page. When paginating, all other parameters +// provided to `ListCustomDimensions` must match the call that provided +// the page token. +func (c *PropertiesCustomDimensionsListCall) PageToken(pageToken string) *PropertiesCustomDimensionsListCall { + 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 *PropertiesCustomDimensionsListCall) Fields(s ...googleapi.Field) *PropertiesCustomDimensionsListCall { + 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 *PropertiesCustomDimensionsListCall) IfNoneMatch(entityTag string) *PropertiesCustomDimensionsListCall { + 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 *PropertiesCustomDimensionsListCall) Context(ctx context.Context) *PropertiesCustomDimensionsListCall { + 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 *PropertiesCustomDimensionsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesCustomDimensionsListCall) 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, "v1beta/{+parent}/customDimensions") + 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 "analyticsadmin.properties.customDimensions.list" call. +// Exactly one of +// *GoogleAnalyticsAdminV1betaListCustomDimensionsResponse or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleAnalyticsAdminV1betaListCustomDimensionsResponse.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 *PropertiesCustomDimensionsListCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaListCustomDimensionsResponse, 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 := &GoogleAnalyticsAdminV1betaListCustomDimensionsResponse{ + 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 CustomDimensions on a property.", + // "flatPath": "v1beta/properties/{propertiesId}/customDimensions", + // "httpMethod": "GET", + // "id": "analyticsadmin.properties.customDimensions.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A page token, received from a previous `ListCustomDimensions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCustomDimensions` must match the call that provided the page token.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. Example format: properties/1234", + // "location": "path", + // "pattern": "^properties/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+parent}/customDimensions", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaListCustomDimensionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// 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 *PropertiesCustomDimensionsListCall) Pages(ctx context.Context, f func(*GoogleAnalyticsAdminV1betaListCustomDimensionsResponse) 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 "analyticsadmin.properties.customDimensions.patch": + +type PropertiesCustomDimensionsPatchCall struct { + s *Service + name string + googleanalyticsadminv1betacustomdimension *GoogleAnalyticsAdminV1betaCustomDimension + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a CustomDimension on a property. +// +// - name: Output only. Resource name for this CustomDimension resource. +// Format: properties/{property}/customDimensions/{customDimension}. +func (r *PropertiesCustomDimensionsService) Patch(name string, googleanalyticsadminv1betacustomdimension *GoogleAnalyticsAdminV1betaCustomDimension) *PropertiesCustomDimensionsPatchCall { + c := &PropertiesCustomDimensionsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleanalyticsadminv1betacustomdimension = googleanalyticsadminv1betacustomdimension + return c +} + +// UpdateMask sets the optional parameter "updateMask": Required. The +// list of fields to be updated. Omitted fields will not be updated. To +// replace the entire entity, use one path with the string "*" to match +// all fields. +func (c *PropertiesCustomDimensionsPatchCall) UpdateMask(updateMask string) *PropertiesCustomDimensionsPatchCall { + 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 *PropertiesCustomDimensionsPatchCall) Fields(s ...googleapi.Field) *PropertiesCustomDimensionsPatchCall { + 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 *PropertiesCustomDimensionsPatchCall) Context(ctx context.Context) *PropertiesCustomDimensionsPatchCall { + 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 *PropertiesCustomDimensionsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesCustomDimensionsPatchCall) 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.googleanalyticsadminv1betacustomdimension) + 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, "v1beta/{+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 "analyticsadmin.properties.customDimensions.patch" call. +// Exactly one of *GoogleAnalyticsAdminV1betaCustomDimension or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAnalyticsAdminV1betaCustomDimension.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 *PropertiesCustomDimensionsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaCustomDimension, 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 := &GoogleAnalyticsAdminV1betaCustomDimension{ + 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 a CustomDimension on a property.", + // "flatPath": "v1beta/properties/{propertiesId}/customDimensions/{customDimensionsId}", + // "httpMethod": "PATCH", + // "id": "analyticsadmin.properties.customDimensions.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Output only. Resource name for this CustomDimension resource. Format: properties/{property}/customDimensions/{customDimension}", + // "location": "path", + // "pattern": "^properties/[^/]+/customDimensions/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Required. The list of fields to be updated. Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaCustomDimension" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaCustomDimension" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.customMetrics.archive": + +type PropertiesCustomMetricsArchiveCall struct { + s *Service + name string + googleanalyticsadminv1betaarchivecustommetricrequest *GoogleAnalyticsAdminV1betaArchiveCustomMetricRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Archive: Archives a CustomMetric on a property. +// +// - name: The name of the CustomMetric to archive. Example format: +// properties/1234/customMetrics/5678. +func (r *PropertiesCustomMetricsService) Archive(name string, googleanalyticsadminv1betaarchivecustommetricrequest *GoogleAnalyticsAdminV1betaArchiveCustomMetricRequest) *PropertiesCustomMetricsArchiveCall { + c := &PropertiesCustomMetricsArchiveCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleanalyticsadminv1betaarchivecustommetricrequest = googleanalyticsadminv1betaarchivecustommetricrequest + 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 *PropertiesCustomMetricsArchiveCall) Fields(s ...googleapi.Field) *PropertiesCustomMetricsArchiveCall { + 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 *PropertiesCustomMetricsArchiveCall) Context(ctx context.Context) *PropertiesCustomMetricsArchiveCall { + 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 *PropertiesCustomMetricsArchiveCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesCustomMetricsArchiveCall) 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.googleanalyticsadminv1betaarchivecustommetricrequest) + 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, "v1beta/{+name}:archive") + 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 "analyticsadmin.properties.customMetrics.archive" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.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 *PropertiesCustomMetricsArchiveCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, 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 := &GoogleProtobufEmpty{ + 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": "Archives a CustomMetric on a property.", + // "flatPath": "v1beta/properties/{propertiesId}/customMetrics/{customMetricsId}:archive", + // "httpMethod": "POST", + // "id": "analyticsadmin.properties.customMetrics.archive", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the CustomMetric to archive. Example format: properties/1234/customMetrics/5678", + // "location": "path", + // "pattern": "^properties/[^/]+/customMetrics/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}:archive", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaArchiveCustomMetricRequest" + // }, + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.customMetrics.create": + +type PropertiesCustomMetricsCreateCall struct { + s *Service + parent string + googleanalyticsadminv1betacustommetric *GoogleAnalyticsAdminV1betaCustomMetric + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a CustomMetric. +// +// - parent: Example format: properties/1234. +func (r *PropertiesCustomMetricsService) Create(parent string, googleanalyticsadminv1betacustommetric *GoogleAnalyticsAdminV1betaCustomMetric) *PropertiesCustomMetricsCreateCall { + c := &PropertiesCustomMetricsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleanalyticsadminv1betacustommetric = googleanalyticsadminv1betacustommetric + 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 *PropertiesCustomMetricsCreateCall) Fields(s ...googleapi.Field) *PropertiesCustomMetricsCreateCall { + 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 *PropertiesCustomMetricsCreateCall) Context(ctx context.Context) *PropertiesCustomMetricsCreateCall { + 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 *PropertiesCustomMetricsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesCustomMetricsCreateCall) 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.googleanalyticsadminv1betacustommetric) + 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, "v1beta/{+parent}/customMetrics") + 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 "analyticsadmin.properties.customMetrics.create" call. +// Exactly one of *GoogleAnalyticsAdminV1betaCustomMetric or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleAnalyticsAdminV1betaCustomMetric.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 *PropertiesCustomMetricsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaCustomMetric, 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 := &GoogleAnalyticsAdminV1betaCustomMetric{ + 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 CustomMetric.", + // "flatPath": "v1beta/properties/{propertiesId}/customMetrics", + // "httpMethod": "POST", + // "id": "analyticsadmin.properties.customMetrics.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. Example format: properties/1234", + // "location": "path", + // "pattern": "^properties/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+parent}/customMetrics", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaCustomMetric" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaCustomMetric" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.customMetrics.get": + +type PropertiesCustomMetricsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Lookup for a single CustomMetric. +// +// - name: The name of the CustomMetric to get. Example format: +// properties/1234/customMetrics/5678. +func (r *PropertiesCustomMetricsService) Get(name string) *PropertiesCustomMetricsGetCall { + c := &PropertiesCustomMetricsGetCall{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 *PropertiesCustomMetricsGetCall) Fields(s ...googleapi.Field) *PropertiesCustomMetricsGetCall { + 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 *PropertiesCustomMetricsGetCall) IfNoneMatch(entityTag string) *PropertiesCustomMetricsGetCall { + 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 *PropertiesCustomMetricsGetCall) Context(ctx context.Context) *PropertiesCustomMetricsGetCall { + 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 *PropertiesCustomMetricsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesCustomMetricsGetCall) 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, "v1beta/{+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 "analyticsadmin.properties.customMetrics.get" call. +// Exactly one of *GoogleAnalyticsAdminV1betaCustomMetric or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleAnalyticsAdminV1betaCustomMetric.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 *PropertiesCustomMetricsGetCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaCustomMetric, 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 := &GoogleAnalyticsAdminV1betaCustomMetric{ + 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": "Lookup for a single CustomMetric.", + // "flatPath": "v1beta/properties/{propertiesId}/customMetrics/{customMetricsId}", + // "httpMethod": "GET", + // "id": "analyticsadmin.properties.customMetrics.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the CustomMetric to get. Example format: properties/1234/customMetrics/5678", + // "location": "path", + // "pattern": "^properties/[^/]+/customMetrics/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaCustomMetric" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// method id "analyticsadmin.properties.customMetrics.list": + +type PropertiesCustomMetricsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists CustomMetrics on a property. +// +// - parent: Example format: properties/1234. +func (r *PropertiesCustomMetricsService) List(parent string) *PropertiesCustomMetricsListCall { + c := &PropertiesCustomMetricsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of resources to return. If unspecified, at most 50 resources will be +// returned. The maximum value is 200 (higher values will be coerced to +// the maximum). +func (c *PropertiesCustomMetricsListCall) PageSize(pageSize int64) *PropertiesCustomMetricsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token, +// received from a previous `ListCustomMetrics` call. Provide this to +// retrieve the subsequent page. When paginating, all other parameters +// provided to `ListCustomMetrics` must match the call that provided the +// page token. +func (c *PropertiesCustomMetricsListCall) PageToken(pageToken string) *PropertiesCustomMetricsListCall { + 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 *PropertiesCustomMetricsListCall) Fields(s ...googleapi.Field) *PropertiesCustomMetricsListCall { + 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 *PropertiesCustomMetricsListCall) IfNoneMatch(entityTag string) *PropertiesCustomMetricsListCall { + 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 *PropertiesCustomMetricsListCall) Context(ctx context.Context) *PropertiesCustomMetricsListCall { + 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 *PropertiesCustomMetricsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesCustomMetricsListCall) 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, "v1beta/{+parent}/customMetrics") + 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 "analyticsadmin.properties.customMetrics.list" call. +// Exactly one of *GoogleAnalyticsAdminV1betaListCustomMetricsResponse +// or error will be non-nil. Any non-2xx status code is an error. +// Response headers are in either +// *GoogleAnalyticsAdminV1betaListCustomMetricsResponse.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 *PropertiesCustomMetricsListCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaListCustomMetricsResponse, 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 := &GoogleAnalyticsAdminV1betaListCustomMetricsResponse{ + 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 CustomMetrics on a property.", + // "flatPath": "v1beta/properties/{propertiesId}/customMetrics", + // "httpMethod": "GET", + // "id": "analyticsadmin.properties.customMetrics.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A page token, received from a previous `ListCustomMetrics` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCustomMetrics` must match the call that provided the page token.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. Example format: properties/1234", + // "location": "path", + // "pattern": "^properties/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+parent}/customMetrics", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaListCustomMetricsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// 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 *PropertiesCustomMetricsListCall) Pages(ctx context.Context, f func(*GoogleAnalyticsAdminV1betaListCustomMetricsResponse) 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 "analyticsadmin.properties.customMetrics.patch": + +type PropertiesCustomMetricsPatchCall struct { + s *Service + name string + googleanalyticsadminv1betacustommetric *GoogleAnalyticsAdminV1betaCustomMetric + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a CustomMetric on a property. +// +// - name: Output only. Resource name for this CustomMetric resource. +// Format: properties/{property}/customMetrics/{customMetric}. +func (r *PropertiesCustomMetricsService) Patch(name string, googleanalyticsadminv1betacustommetric *GoogleAnalyticsAdminV1betaCustomMetric) *PropertiesCustomMetricsPatchCall { + c := &PropertiesCustomMetricsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleanalyticsadminv1betacustommetric = googleanalyticsadminv1betacustommetric + return c +} + +// UpdateMask sets the optional parameter "updateMask": Required. The +// list of fields to be updated. Omitted fields will not be updated. To +// replace the entire entity, use one path with the string "*" to match +// all fields. +func (c *PropertiesCustomMetricsPatchCall) UpdateMask(updateMask string) *PropertiesCustomMetricsPatchCall { + 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 *PropertiesCustomMetricsPatchCall) Fields(s ...googleapi.Field) *PropertiesCustomMetricsPatchCall { + 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 *PropertiesCustomMetricsPatchCall) Context(ctx context.Context) *PropertiesCustomMetricsPatchCall { + 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 *PropertiesCustomMetricsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesCustomMetricsPatchCall) 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.googleanalyticsadminv1betacustommetric) + 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, "v1beta/{+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 "analyticsadmin.properties.customMetrics.patch" call. +// Exactly one of *GoogleAnalyticsAdminV1betaCustomMetric or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleAnalyticsAdminV1betaCustomMetric.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 *PropertiesCustomMetricsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaCustomMetric, 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 := &GoogleAnalyticsAdminV1betaCustomMetric{ + 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 a CustomMetric on a property.", + // "flatPath": "v1beta/properties/{propertiesId}/customMetrics/{customMetricsId}", + // "httpMethod": "PATCH", + // "id": "analyticsadmin.properties.customMetrics.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Output only. Resource name for this CustomMetric resource. Format: properties/{property}/customMetrics/{customMetric}", + // "location": "path", + // "pattern": "^properties/[^/]+/customMetrics/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Required. The list of fields to be updated. Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaCustomMetric" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaCustomMetric" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.dataStreams.create": + +type PropertiesDataStreamsCreateCall struct { + s *Service + parent string + googleanalyticsadminv1betadatastream *GoogleAnalyticsAdminV1betaDataStream + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a DataStream. +// +// - parent: Example format: properties/1234. +func (r *PropertiesDataStreamsService) Create(parent string, googleanalyticsadminv1betadatastream *GoogleAnalyticsAdminV1betaDataStream) *PropertiesDataStreamsCreateCall { + c := &PropertiesDataStreamsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleanalyticsadminv1betadatastream = googleanalyticsadminv1betadatastream + 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 *PropertiesDataStreamsCreateCall) Fields(s ...googleapi.Field) *PropertiesDataStreamsCreateCall { + 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 *PropertiesDataStreamsCreateCall) Context(ctx context.Context) *PropertiesDataStreamsCreateCall { + 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 *PropertiesDataStreamsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesDataStreamsCreateCall) 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.googleanalyticsadminv1betadatastream) + 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, "v1beta/{+parent}/dataStreams") + 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 "analyticsadmin.properties.dataStreams.create" call. +// Exactly one of *GoogleAnalyticsAdminV1betaDataStream or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleAnalyticsAdminV1betaDataStream.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 *PropertiesDataStreamsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaDataStream, 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 := &GoogleAnalyticsAdminV1betaDataStream{ + 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 DataStream.", + // "flatPath": "v1beta/properties/{propertiesId}/dataStreams", + // "httpMethod": "POST", + // "id": "analyticsadmin.properties.dataStreams.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. Example format: properties/1234", + // "location": "path", + // "pattern": "^properties/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+parent}/dataStreams", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaDataStream" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaDataStream" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.dataStreams.delete": + +type PropertiesDataStreamsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a DataStream on a property. +// +// - name: The name of the DataStream to delete. Example format: +// properties/1234/dataStreams/5678. +func (r *PropertiesDataStreamsService) Delete(name string) *PropertiesDataStreamsDeleteCall { + c := &PropertiesDataStreamsDeleteCall{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 *PropertiesDataStreamsDeleteCall) Fields(s ...googleapi.Field) *PropertiesDataStreamsDeleteCall { + 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 *PropertiesDataStreamsDeleteCall) Context(ctx context.Context) *PropertiesDataStreamsDeleteCall { + 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 *PropertiesDataStreamsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesDataStreamsDeleteCall) 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, "v1beta/{+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 "analyticsadmin.properties.dataStreams.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.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 *PropertiesDataStreamsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, 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 := &GoogleProtobufEmpty{ + 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 DataStream on a property.", + // "flatPath": "v1beta/properties/{propertiesId}/dataStreams/{dataStreamsId}", + // "httpMethod": "DELETE", + // "id": "analyticsadmin.properties.dataStreams.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the DataStream to delete. Example format: properties/1234/dataStreams/5678", + // "location": "path", + // "pattern": "^properties/[^/]+/dataStreams/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.dataStreams.get": + +type PropertiesDataStreamsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Lookup for a single DataStream. +// +// - name: The name of the DataStream to get. Example format: +// properties/1234/dataStreams/5678. +func (r *PropertiesDataStreamsService) Get(name string) *PropertiesDataStreamsGetCall { + c := &PropertiesDataStreamsGetCall{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 *PropertiesDataStreamsGetCall) Fields(s ...googleapi.Field) *PropertiesDataStreamsGetCall { + 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 *PropertiesDataStreamsGetCall) IfNoneMatch(entityTag string) *PropertiesDataStreamsGetCall { + 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 *PropertiesDataStreamsGetCall) Context(ctx context.Context) *PropertiesDataStreamsGetCall { + 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 *PropertiesDataStreamsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesDataStreamsGetCall) 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, "v1beta/{+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 "analyticsadmin.properties.dataStreams.get" call. +// Exactly one of *GoogleAnalyticsAdminV1betaDataStream or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleAnalyticsAdminV1betaDataStream.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 *PropertiesDataStreamsGetCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaDataStream, 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 := &GoogleAnalyticsAdminV1betaDataStream{ + 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": "Lookup for a single DataStream.", + // "flatPath": "v1beta/properties/{propertiesId}/dataStreams/{dataStreamsId}", + // "httpMethod": "GET", + // "id": "analyticsadmin.properties.dataStreams.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the DataStream to get. Example format: properties/1234/dataStreams/5678", + // "location": "path", + // "pattern": "^properties/[^/]+/dataStreams/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaDataStream" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// method id "analyticsadmin.properties.dataStreams.list": + +type PropertiesDataStreamsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists DataStreams on a property. +// +// - parent: Example format: properties/1234. +func (r *PropertiesDataStreamsService) List(parent string) *PropertiesDataStreamsListCall { + c := &PropertiesDataStreamsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of resources to return. If unspecified, at most 50 resources will be +// returned. The maximum value is 200 (higher values will be coerced to +// the maximum). +func (c *PropertiesDataStreamsListCall) PageSize(pageSize int64) *PropertiesDataStreamsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token, +// received from a previous `ListDataStreams` call. Provide this to +// retrieve the subsequent page. When paginating, all other parameters +// provided to `ListDataStreams` must match the call that provided the +// page token. +func (c *PropertiesDataStreamsListCall) PageToken(pageToken string) *PropertiesDataStreamsListCall { + 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 *PropertiesDataStreamsListCall) Fields(s ...googleapi.Field) *PropertiesDataStreamsListCall { + 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 *PropertiesDataStreamsListCall) IfNoneMatch(entityTag string) *PropertiesDataStreamsListCall { + 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 *PropertiesDataStreamsListCall) Context(ctx context.Context) *PropertiesDataStreamsListCall { + 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 *PropertiesDataStreamsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesDataStreamsListCall) 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, "v1beta/{+parent}/dataStreams") + 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 "analyticsadmin.properties.dataStreams.list" call. +// Exactly one of *GoogleAnalyticsAdminV1betaListDataStreamsResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAnalyticsAdminV1betaListDataStreamsResponse.ServerResponse.Head +// er 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 *PropertiesDataStreamsListCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaListDataStreamsResponse, 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 := &GoogleAnalyticsAdminV1betaListDataStreamsResponse{ + 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 DataStreams on a property.", + // "flatPath": "v1beta/properties/{propertiesId}/dataStreams", + // "httpMethod": "GET", + // "id": "analyticsadmin.properties.dataStreams.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A page token, received from a previous `ListDataStreams` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListDataStreams` must match the call that provided the page token.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. Example format: properties/1234", + // "location": "path", + // "pattern": "^properties/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+parent}/dataStreams", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaListDataStreamsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// 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 *PropertiesDataStreamsListCall) Pages(ctx context.Context, f func(*GoogleAnalyticsAdminV1betaListDataStreamsResponse) 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 "analyticsadmin.properties.dataStreams.patch": + +type PropertiesDataStreamsPatchCall struct { + s *Service + name string + googleanalyticsadminv1betadatastream *GoogleAnalyticsAdminV1betaDataStream + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a DataStream on a property. +// +// - name: Output only. Resource name of this Data Stream. Format: +// properties/{property_id}/dataStreams/{stream_id} Example: +// "properties/1000/dataStreams/2000". +func (r *PropertiesDataStreamsService) Patch(name string, googleanalyticsadminv1betadatastream *GoogleAnalyticsAdminV1betaDataStream) *PropertiesDataStreamsPatchCall { + c := &PropertiesDataStreamsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleanalyticsadminv1betadatastream = googleanalyticsadminv1betadatastream + return c +} + +// UpdateMask sets the optional parameter "updateMask": Required. The +// list of fields to be updated. Omitted fields will not be updated. To +// replace the entire entity, use one path with the string "*" to match +// all fields. +func (c *PropertiesDataStreamsPatchCall) UpdateMask(updateMask string) *PropertiesDataStreamsPatchCall { + 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 *PropertiesDataStreamsPatchCall) Fields(s ...googleapi.Field) *PropertiesDataStreamsPatchCall { + 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 *PropertiesDataStreamsPatchCall) Context(ctx context.Context) *PropertiesDataStreamsPatchCall { + 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 *PropertiesDataStreamsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesDataStreamsPatchCall) 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.googleanalyticsadminv1betadatastream) + 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, "v1beta/{+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 "analyticsadmin.properties.dataStreams.patch" call. +// Exactly one of *GoogleAnalyticsAdminV1betaDataStream or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleAnalyticsAdminV1betaDataStream.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 *PropertiesDataStreamsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaDataStream, 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 := &GoogleAnalyticsAdminV1betaDataStream{ + 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 a DataStream on a property.", + // "flatPath": "v1beta/properties/{propertiesId}/dataStreams/{dataStreamsId}", + // "httpMethod": "PATCH", + // "id": "analyticsadmin.properties.dataStreams.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Output only. Resource name of this Data Stream. Format: properties/{property_id}/dataStreams/{stream_id} Example: \"properties/1000/dataStreams/2000\"", + // "location": "path", + // "pattern": "^properties/[^/]+/dataStreams/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Required. The list of fields to be updated. Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaDataStream" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaDataStream" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.create": + +type PropertiesDataStreamsMeasurementProtocolSecretsCreateCall struct { + s *Service + parent string + googleanalyticsadminv1betameasurementprotocolsecret *GoogleAnalyticsAdminV1betaMeasurementProtocolSecret + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a measurement protocol secret. +// +// - parent: The parent resource where this secret will be created. +// Format: properties/{property}/dataStreams/{dataStream}. +func (r *PropertiesDataStreamsMeasurementProtocolSecretsService) Create(parent string, googleanalyticsadminv1betameasurementprotocolsecret *GoogleAnalyticsAdminV1betaMeasurementProtocolSecret) *PropertiesDataStreamsMeasurementProtocolSecretsCreateCall { + c := &PropertiesDataStreamsMeasurementProtocolSecretsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleanalyticsadminv1betameasurementprotocolsecret = googleanalyticsadminv1betameasurementprotocolsecret + 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 *PropertiesDataStreamsMeasurementProtocolSecretsCreateCall) Fields(s ...googleapi.Field) *PropertiesDataStreamsMeasurementProtocolSecretsCreateCall { + 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 *PropertiesDataStreamsMeasurementProtocolSecretsCreateCall) Context(ctx context.Context) *PropertiesDataStreamsMeasurementProtocolSecretsCreateCall { + 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 *PropertiesDataStreamsMeasurementProtocolSecretsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesDataStreamsMeasurementProtocolSecretsCreateCall) 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.googleanalyticsadminv1betameasurementprotocolsecret) + 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, "v1beta/{+parent}/measurementProtocolSecrets") + 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 "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.create" call. +// Exactly one of *GoogleAnalyticsAdminV1betaMeasurementProtocolSecret +// or error will be non-nil. Any non-2xx status code is an error. +// Response headers are in either +// *GoogleAnalyticsAdminV1betaMeasurementProtocolSecret.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 *PropertiesDataStreamsMeasurementProtocolSecretsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaMeasurementProtocolSecret, 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 := &GoogleAnalyticsAdminV1betaMeasurementProtocolSecret{ + 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 measurement protocol secret.", + // "flatPath": "v1beta/properties/{propertiesId}/dataStreams/{dataStreamsId}/measurementProtocolSecrets", + // "httpMethod": "POST", + // "id": "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The parent resource where this secret will be created. Format: properties/{property}/dataStreams/{dataStream}", + // "location": "path", + // "pattern": "^properties/[^/]+/dataStreams/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+parent}/measurementProtocolSecrets", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaMeasurementProtocolSecret" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaMeasurementProtocolSecret" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.delete": + +type PropertiesDataStreamsMeasurementProtocolSecretsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes target MeasurementProtocolSecret. +// +// - name: The name of the MeasurementProtocolSecret to delete. Format: +// properties/{property}/dataStreams/{dataStream}/measurementProtocolSe +// crets/{measurementProtocolSecret}. +func (r *PropertiesDataStreamsMeasurementProtocolSecretsService) Delete(name string) *PropertiesDataStreamsMeasurementProtocolSecretsDeleteCall { + c := &PropertiesDataStreamsMeasurementProtocolSecretsDeleteCall{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 *PropertiesDataStreamsMeasurementProtocolSecretsDeleteCall) Fields(s ...googleapi.Field) *PropertiesDataStreamsMeasurementProtocolSecretsDeleteCall { + 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 *PropertiesDataStreamsMeasurementProtocolSecretsDeleteCall) Context(ctx context.Context) *PropertiesDataStreamsMeasurementProtocolSecretsDeleteCall { + 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 *PropertiesDataStreamsMeasurementProtocolSecretsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesDataStreamsMeasurementProtocolSecretsDeleteCall) 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, "v1beta/{+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 "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.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 *PropertiesDataStreamsMeasurementProtocolSecretsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, 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 := &GoogleProtobufEmpty{ + 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 target MeasurementProtocolSecret.", + // "flatPath": "v1beta/properties/{propertiesId}/dataStreams/{dataStreamsId}/measurementProtocolSecrets/{measurementProtocolSecretsId}", + // "httpMethod": "DELETE", + // "id": "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the MeasurementProtocolSecret to delete. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets/{measurementProtocolSecret}", + // "location": "path", + // "pattern": "^properties/[^/]+/dataStreams/[^/]+/measurementProtocolSecrets/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.get": + +type PropertiesDataStreamsMeasurementProtocolSecretsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Lookup for a single "GA4" MeasurementProtocolSecret. +// +// - name: The name of the measurement protocol secret to lookup. +// Format: +// properties/{property}/dataStreams/{dataStream}/measurementProtocolSe +// crets/{measurementProtocolSecret}. +func (r *PropertiesDataStreamsMeasurementProtocolSecretsService) Get(name string) *PropertiesDataStreamsMeasurementProtocolSecretsGetCall { + c := &PropertiesDataStreamsMeasurementProtocolSecretsGetCall{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 *PropertiesDataStreamsMeasurementProtocolSecretsGetCall) Fields(s ...googleapi.Field) *PropertiesDataStreamsMeasurementProtocolSecretsGetCall { + 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 *PropertiesDataStreamsMeasurementProtocolSecretsGetCall) IfNoneMatch(entityTag string) *PropertiesDataStreamsMeasurementProtocolSecretsGetCall { + 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 *PropertiesDataStreamsMeasurementProtocolSecretsGetCall) Context(ctx context.Context) *PropertiesDataStreamsMeasurementProtocolSecretsGetCall { + 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 *PropertiesDataStreamsMeasurementProtocolSecretsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesDataStreamsMeasurementProtocolSecretsGetCall) 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, "v1beta/{+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 "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.get" call. +// Exactly one of *GoogleAnalyticsAdminV1betaMeasurementProtocolSecret +// or error will be non-nil. Any non-2xx status code is an error. +// Response headers are in either +// *GoogleAnalyticsAdminV1betaMeasurementProtocolSecret.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 *PropertiesDataStreamsMeasurementProtocolSecretsGetCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaMeasurementProtocolSecret, 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 := &GoogleAnalyticsAdminV1betaMeasurementProtocolSecret{ + 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": "Lookup for a single \"GA4\" MeasurementProtocolSecret.", + // "flatPath": "v1beta/properties/{propertiesId}/dataStreams/{dataStreamsId}/measurementProtocolSecrets/{measurementProtocolSecretsId}", + // "httpMethod": "GET", + // "id": "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the measurement protocol secret to lookup. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets/{measurementProtocolSecret}", + // "location": "path", + // "pattern": "^properties/[^/]+/dataStreams/[^/]+/measurementProtocolSecrets/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaMeasurementProtocolSecret" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// method id "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.list": + +type PropertiesDataStreamsMeasurementProtocolSecretsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Returns child MeasurementProtocolSecrets under the specified +// parent Property. +// +// - parent: The resource name of the parent stream. Format: +// properties/{property}/dataStreams/{dataStream}/measurementProtocolSe +// crets. +func (r *PropertiesDataStreamsMeasurementProtocolSecretsService) List(parent string) *PropertiesDataStreamsMeasurementProtocolSecretsListCall { + c := &PropertiesDataStreamsMeasurementProtocolSecretsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of resources to return. If unspecified, at most 10 resources will be +// returned. The maximum value is 10. Higher values will be coerced to +// the maximum. +func (c *PropertiesDataStreamsMeasurementProtocolSecretsListCall) PageSize(pageSize int64) *PropertiesDataStreamsMeasurementProtocolSecretsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token, +// received from a previous `ListMeasurementProtocolSecrets` call. +// Provide this to retrieve the subsequent page. When paginating, all +// other parameters provided to `ListMeasurementProtocolSecrets` must +// match the call that provided the page token. +func (c *PropertiesDataStreamsMeasurementProtocolSecretsListCall) PageToken(pageToken string) *PropertiesDataStreamsMeasurementProtocolSecretsListCall { + 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 *PropertiesDataStreamsMeasurementProtocolSecretsListCall) Fields(s ...googleapi.Field) *PropertiesDataStreamsMeasurementProtocolSecretsListCall { + 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 *PropertiesDataStreamsMeasurementProtocolSecretsListCall) IfNoneMatch(entityTag string) *PropertiesDataStreamsMeasurementProtocolSecretsListCall { + 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 *PropertiesDataStreamsMeasurementProtocolSecretsListCall) Context(ctx context.Context) *PropertiesDataStreamsMeasurementProtocolSecretsListCall { + 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 *PropertiesDataStreamsMeasurementProtocolSecretsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesDataStreamsMeasurementProtocolSecretsListCall) 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, "v1beta/{+parent}/measurementProtocolSecrets") + 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 "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.list" call. +// Exactly one of +// *GoogleAnalyticsAdminV1betaListMeasurementProtocolSecretsResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAnalyticsAdminV1betaListMeasurementProtocolSecretsResponse.Serv +// erResponse.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 *PropertiesDataStreamsMeasurementProtocolSecretsListCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaListMeasurementProtocolSecretsResponse, 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 := &GoogleAnalyticsAdminV1betaListMeasurementProtocolSecretsResponse{ + 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": "Returns child MeasurementProtocolSecrets under the specified parent Property.", + // "flatPath": "v1beta/properties/{propertiesId}/dataStreams/{dataStreamsId}/measurementProtocolSecrets", + // "httpMethod": "GET", + // "id": "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "The maximum number of resources to return. If unspecified, at most 10 resources will be returned. The maximum value is 10. Higher values will be coerced to the maximum.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A page token, received from a previous `ListMeasurementProtocolSecrets` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMeasurementProtocolSecrets` must match the call that provided the page token.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The resource name of the parent stream. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets", + // "location": "path", + // "pattern": "^properties/[^/]+/dataStreams/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+parent}/measurementProtocolSecrets", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaListMeasurementProtocolSecretsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// 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 *PropertiesDataStreamsMeasurementProtocolSecretsListCall) Pages(ctx context.Context, f func(*GoogleAnalyticsAdminV1betaListMeasurementProtocolSecretsResponse) 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 "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.patch": + +type PropertiesDataStreamsMeasurementProtocolSecretsPatchCall struct { + s *Service + name string + googleanalyticsadminv1betameasurementprotocolsecret *GoogleAnalyticsAdminV1betaMeasurementProtocolSecret + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a measurement protocol secret. +// +// - name: Output only. Resource name of this secret. This secret may be +// a child of any type of stream. Format: +// properties/{property}/dataStreams/{dataStream}/measurementProtocolSe +// crets/{measurementProtocolSecret}. +func (r *PropertiesDataStreamsMeasurementProtocolSecretsService) Patch(name string, googleanalyticsadminv1betameasurementprotocolsecret *GoogleAnalyticsAdminV1betaMeasurementProtocolSecret) *PropertiesDataStreamsMeasurementProtocolSecretsPatchCall { + c := &PropertiesDataStreamsMeasurementProtocolSecretsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleanalyticsadminv1betameasurementprotocolsecret = googleanalyticsadminv1betameasurementprotocolsecret + return c +} + +// UpdateMask sets the optional parameter "updateMask": The list of +// fields to be updated. Omitted fields will not be updated. +func (c *PropertiesDataStreamsMeasurementProtocolSecretsPatchCall) UpdateMask(updateMask string) *PropertiesDataStreamsMeasurementProtocolSecretsPatchCall { + 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 *PropertiesDataStreamsMeasurementProtocolSecretsPatchCall) Fields(s ...googleapi.Field) *PropertiesDataStreamsMeasurementProtocolSecretsPatchCall { + 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 *PropertiesDataStreamsMeasurementProtocolSecretsPatchCall) Context(ctx context.Context) *PropertiesDataStreamsMeasurementProtocolSecretsPatchCall { + 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 *PropertiesDataStreamsMeasurementProtocolSecretsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesDataStreamsMeasurementProtocolSecretsPatchCall) 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.googleanalyticsadminv1betameasurementprotocolsecret) + 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, "v1beta/{+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 "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.patch" call. +// Exactly one of *GoogleAnalyticsAdminV1betaMeasurementProtocolSecret +// or error will be non-nil. Any non-2xx status code is an error. +// Response headers are in either +// *GoogleAnalyticsAdminV1betaMeasurementProtocolSecret.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 *PropertiesDataStreamsMeasurementProtocolSecretsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaMeasurementProtocolSecret, 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 := &GoogleAnalyticsAdminV1betaMeasurementProtocolSecret{ + 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 a measurement protocol secret.", + // "flatPath": "v1beta/properties/{propertiesId}/dataStreams/{dataStreamsId}/measurementProtocolSecrets/{measurementProtocolSecretsId}", + // "httpMethod": "PATCH", + // "id": "analyticsadmin.properties.dataStreams.measurementProtocolSecrets.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Output only. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets/{measurementProtocolSecret}", + // "location": "path", + // "pattern": "^properties/[^/]+/dataStreams/[^/]+/measurementProtocolSecrets/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "The list of fields to be updated. Omitted fields will not be updated.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaMeasurementProtocolSecret" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaMeasurementProtocolSecret" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.firebaseLinks.create": + +type PropertiesFirebaseLinksCreateCall struct { + s *Service + parent string + googleanalyticsadminv1betafirebaselink *GoogleAnalyticsAdminV1betaFirebaseLink + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a FirebaseLink. Properties can have at most one +// FirebaseLink. +// +// - parent: Format: properties/{property_id} Example: properties/1234. +func (r *PropertiesFirebaseLinksService) Create(parent string, googleanalyticsadminv1betafirebaselink *GoogleAnalyticsAdminV1betaFirebaseLink) *PropertiesFirebaseLinksCreateCall { + c := &PropertiesFirebaseLinksCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleanalyticsadminv1betafirebaselink = googleanalyticsadminv1betafirebaselink + 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 *PropertiesFirebaseLinksCreateCall) Fields(s ...googleapi.Field) *PropertiesFirebaseLinksCreateCall { + 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 *PropertiesFirebaseLinksCreateCall) Context(ctx context.Context) *PropertiesFirebaseLinksCreateCall { + 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 *PropertiesFirebaseLinksCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesFirebaseLinksCreateCall) 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.googleanalyticsadminv1betafirebaselink) + 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, "v1beta/{+parent}/firebaseLinks") + 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 "analyticsadmin.properties.firebaseLinks.create" call. +// Exactly one of *GoogleAnalyticsAdminV1betaFirebaseLink or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleAnalyticsAdminV1betaFirebaseLink.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 *PropertiesFirebaseLinksCreateCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaFirebaseLink, 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 := &GoogleAnalyticsAdminV1betaFirebaseLink{ + 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 FirebaseLink. Properties can have at most one FirebaseLink.", + // "flatPath": "v1beta/properties/{propertiesId}/firebaseLinks", + // "httpMethod": "POST", + // "id": "analyticsadmin.properties.firebaseLinks.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. Format: properties/{property_id} Example: properties/1234", + // "location": "path", + // "pattern": "^properties/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+parent}/firebaseLinks", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaFirebaseLink" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaFirebaseLink" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.firebaseLinks.delete": + +type PropertiesFirebaseLinksDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a FirebaseLink on a property +// +// - name: Format: +// properties/{property_id}/firebaseLinks/{firebase_link_id} Example: +// properties/1234/firebaseLinks/5678. +func (r *PropertiesFirebaseLinksService) Delete(name string) *PropertiesFirebaseLinksDeleteCall { + c := &PropertiesFirebaseLinksDeleteCall{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 *PropertiesFirebaseLinksDeleteCall) Fields(s ...googleapi.Field) *PropertiesFirebaseLinksDeleteCall { + 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 *PropertiesFirebaseLinksDeleteCall) Context(ctx context.Context) *PropertiesFirebaseLinksDeleteCall { + 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 *PropertiesFirebaseLinksDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesFirebaseLinksDeleteCall) 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, "v1beta/{+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 "analyticsadmin.properties.firebaseLinks.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.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 *PropertiesFirebaseLinksDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, 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 := &GoogleProtobufEmpty{ + 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 FirebaseLink on a property", + // "flatPath": "v1beta/properties/{propertiesId}/firebaseLinks/{firebaseLinksId}", + // "httpMethod": "DELETE", + // "id": "analyticsadmin.properties.firebaseLinks.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Format: properties/{property_id}/firebaseLinks/{firebase_link_id} Example: properties/1234/firebaseLinks/5678", + // "location": "path", + // "pattern": "^properties/[^/]+/firebaseLinks/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.firebaseLinks.list": + +type PropertiesFirebaseLinksListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists FirebaseLinks on a property. Properties can have at most +// one FirebaseLink. +// +// - parent: Format: properties/{property_id} Example: properties/1234. +func (r *PropertiesFirebaseLinksService) List(parent string) *PropertiesFirebaseLinksListCall { + c := &PropertiesFirebaseLinksListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of resources to return. The service may return fewer than this value, +// even if there are additional pages. If unspecified, at most 50 +// resources will be returned. The maximum value is 200; (higher values +// will be coerced to the maximum) +func (c *PropertiesFirebaseLinksListCall) PageSize(pageSize int64) *PropertiesFirebaseLinksListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token, +// received from a previous `ListFirebaseLinks` call. Provide this to +// retrieve the subsequent page. When paginating, all other parameters +// provided to `ListFirebaseLinks` must match the call that provided the +// page token. +func (c *PropertiesFirebaseLinksListCall) PageToken(pageToken string) *PropertiesFirebaseLinksListCall { + 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 *PropertiesFirebaseLinksListCall) Fields(s ...googleapi.Field) *PropertiesFirebaseLinksListCall { + 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 *PropertiesFirebaseLinksListCall) IfNoneMatch(entityTag string) *PropertiesFirebaseLinksListCall { + 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 *PropertiesFirebaseLinksListCall) Context(ctx context.Context) *PropertiesFirebaseLinksListCall { + 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 *PropertiesFirebaseLinksListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesFirebaseLinksListCall) 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, "v1beta/{+parent}/firebaseLinks") + 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 "analyticsadmin.properties.firebaseLinks.list" call. +// Exactly one of *GoogleAnalyticsAdminV1betaListFirebaseLinksResponse +// or error will be non-nil. Any non-2xx status code is an error. +// Response headers are in either +// *GoogleAnalyticsAdminV1betaListFirebaseLinksResponse.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 *PropertiesFirebaseLinksListCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaListFirebaseLinksResponse, 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 := &GoogleAnalyticsAdminV1betaListFirebaseLinksResponse{ + 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 FirebaseLinks on a property. Properties can have at most one FirebaseLink.", + // "flatPath": "v1beta/properties/{propertiesId}/firebaseLinks", + // "httpMethod": "GET", + // "id": "analyticsadmin.properties.firebaseLinks.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListFirebaseLinks` must match the call that provided the page token.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. Format: properties/{property_id} Example: properties/1234", + // "location": "path", + // "pattern": "^properties/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+parent}/firebaseLinks", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaListFirebaseLinksResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// 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 *PropertiesFirebaseLinksListCall) Pages(ctx context.Context, f func(*GoogleAnalyticsAdminV1betaListFirebaseLinksResponse) 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 "analyticsadmin.properties.googleAdsLinks.create": + +type PropertiesGoogleAdsLinksCreateCall struct { + s *Service + parent string + googleanalyticsadminv1betagoogleadslink *GoogleAnalyticsAdminV1betaGoogleAdsLink + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a GoogleAdsLink. +// +// - parent: Example format: properties/1234. +func (r *PropertiesGoogleAdsLinksService) Create(parent string, googleanalyticsadminv1betagoogleadslink *GoogleAnalyticsAdminV1betaGoogleAdsLink) *PropertiesGoogleAdsLinksCreateCall { + c := &PropertiesGoogleAdsLinksCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleanalyticsadminv1betagoogleadslink = googleanalyticsadminv1betagoogleadslink + 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 *PropertiesGoogleAdsLinksCreateCall) Fields(s ...googleapi.Field) *PropertiesGoogleAdsLinksCreateCall { + 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 *PropertiesGoogleAdsLinksCreateCall) Context(ctx context.Context) *PropertiesGoogleAdsLinksCreateCall { + 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 *PropertiesGoogleAdsLinksCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesGoogleAdsLinksCreateCall) 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.googleanalyticsadminv1betagoogleadslink) + 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, "v1beta/{+parent}/googleAdsLinks") + 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 "analyticsadmin.properties.googleAdsLinks.create" call. +// Exactly one of *GoogleAnalyticsAdminV1betaGoogleAdsLink or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleAnalyticsAdminV1betaGoogleAdsLink.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 *PropertiesGoogleAdsLinksCreateCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaGoogleAdsLink, 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 := &GoogleAnalyticsAdminV1betaGoogleAdsLink{ + 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 GoogleAdsLink.", + // "flatPath": "v1beta/properties/{propertiesId}/googleAdsLinks", + // "httpMethod": "POST", + // "id": "analyticsadmin.properties.googleAdsLinks.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. Example format: properties/1234", + // "location": "path", + // "pattern": "^properties/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+parent}/googleAdsLinks", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaGoogleAdsLink" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaGoogleAdsLink" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.googleAdsLinks.delete": + +type PropertiesGoogleAdsLinksDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a GoogleAdsLink on a property +// +// - name: Example format: properties/1234/googleAdsLinks/5678. +func (r *PropertiesGoogleAdsLinksService) Delete(name string) *PropertiesGoogleAdsLinksDeleteCall { + c := &PropertiesGoogleAdsLinksDeleteCall{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 *PropertiesGoogleAdsLinksDeleteCall) Fields(s ...googleapi.Field) *PropertiesGoogleAdsLinksDeleteCall { + 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 *PropertiesGoogleAdsLinksDeleteCall) Context(ctx context.Context) *PropertiesGoogleAdsLinksDeleteCall { + 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 *PropertiesGoogleAdsLinksDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesGoogleAdsLinksDeleteCall) 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, "v1beta/{+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 "analyticsadmin.properties.googleAdsLinks.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.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 *PropertiesGoogleAdsLinksDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, 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 := &GoogleProtobufEmpty{ + 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 GoogleAdsLink on a property", + // "flatPath": "v1beta/properties/{propertiesId}/googleAdsLinks/{googleAdsLinksId}", + // "httpMethod": "DELETE", + // "id": "analyticsadmin.properties.googleAdsLinks.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Example format: properties/1234/googleAdsLinks/5678", + // "location": "path", + // "pattern": "^properties/[^/]+/googleAdsLinks/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} + +// method id "analyticsadmin.properties.googleAdsLinks.list": + +type PropertiesGoogleAdsLinksListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists GoogleAdsLinks on a property. +// +// - parent: Example format: properties/1234. +func (r *PropertiesGoogleAdsLinksService) List(parent string) *PropertiesGoogleAdsLinksListCall { + c := &PropertiesGoogleAdsLinksListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of resources to return. If unspecified, at most 50 resources will be +// returned. The maximum value is 200 (higher values will be coerced to +// the maximum). +func (c *PropertiesGoogleAdsLinksListCall) PageSize(pageSize int64) *PropertiesGoogleAdsLinksListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token, +// received from a previous `ListGoogleAdsLinks` call. Provide this to +// retrieve the subsequent page. When paginating, all other parameters +// provided to `ListGoogleAdsLinks` must match the call that provided +// the page token. +func (c *PropertiesGoogleAdsLinksListCall) PageToken(pageToken string) *PropertiesGoogleAdsLinksListCall { + 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 *PropertiesGoogleAdsLinksListCall) Fields(s ...googleapi.Field) *PropertiesGoogleAdsLinksListCall { + 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 *PropertiesGoogleAdsLinksListCall) IfNoneMatch(entityTag string) *PropertiesGoogleAdsLinksListCall { + 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 *PropertiesGoogleAdsLinksListCall) Context(ctx context.Context) *PropertiesGoogleAdsLinksListCall { + 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 *PropertiesGoogleAdsLinksListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesGoogleAdsLinksListCall) 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, "v1beta/{+parent}/googleAdsLinks") + 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 "analyticsadmin.properties.googleAdsLinks.list" call. +// Exactly one of *GoogleAnalyticsAdminV1betaListGoogleAdsLinksResponse +// or error will be non-nil. Any non-2xx status code is an error. +// Response headers are in either +// *GoogleAnalyticsAdminV1betaListGoogleAdsLinksResponse.ServerResponse.H +// eader 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 *PropertiesGoogleAdsLinksListCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaListGoogleAdsLinksResponse, 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 := &GoogleAnalyticsAdminV1betaListGoogleAdsLinksResponse{ + 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 GoogleAdsLinks on a property.", + // "flatPath": "v1beta/properties/{propertiesId}/googleAdsLinks", + // "httpMethod": "GET", + // "id": "analyticsadmin.properties.googleAdsLinks.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A page token, received from a previous `ListGoogleAdsLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoogleAdsLinks` must match the call that provided the page token.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. Example format: properties/1234", + // "location": "path", + // "pattern": "^properties/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta/{+parent}/googleAdsLinks", + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaListGoogleAdsLinksResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + +// 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 *PropertiesGoogleAdsLinksListCall) Pages(ctx context.Context, f func(*GoogleAnalyticsAdminV1betaListGoogleAdsLinksResponse) 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 "analyticsadmin.properties.googleAdsLinks.patch": + +type PropertiesGoogleAdsLinksPatchCall struct { + s *Service + name string + googleanalyticsadminv1betagoogleadslink *GoogleAnalyticsAdminV1betaGoogleAdsLink + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a GoogleAdsLink on a property +// +// - name: Output only. Format: +// properties/{propertyId}/googleAdsLinks/{googleAdsLinkId} Note: +// googleAdsLinkId is not the Google Ads customer ID. +func (r *PropertiesGoogleAdsLinksService) Patch(name string, googleanalyticsadminv1betagoogleadslink *GoogleAnalyticsAdminV1betaGoogleAdsLink) *PropertiesGoogleAdsLinksPatchCall { + c := &PropertiesGoogleAdsLinksPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleanalyticsadminv1betagoogleadslink = googleanalyticsadminv1betagoogleadslink + return c +} + +// UpdateMask sets the optional parameter "updateMask": Required. The +// list of fields to be updated. Field names must be in snake case +// (e.g., "field_to_update"). Omitted fields will not be updated. To +// replace the entire entity, use one path with the string "*" to match +// all fields. +func (c *PropertiesGoogleAdsLinksPatchCall) UpdateMask(updateMask string) *PropertiesGoogleAdsLinksPatchCall { + 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 *PropertiesGoogleAdsLinksPatchCall) Fields(s ...googleapi.Field) *PropertiesGoogleAdsLinksPatchCall { + 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 *PropertiesGoogleAdsLinksPatchCall) Context(ctx context.Context) *PropertiesGoogleAdsLinksPatchCall { + 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 *PropertiesGoogleAdsLinksPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *PropertiesGoogleAdsLinksPatchCall) 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.googleanalyticsadminv1betagoogleadslink) + 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, "v1beta/{+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 "analyticsadmin.properties.googleAdsLinks.patch" call. +// Exactly one of *GoogleAnalyticsAdminV1betaGoogleAdsLink or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleAnalyticsAdminV1betaGoogleAdsLink.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 *PropertiesGoogleAdsLinksPatchCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1betaGoogleAdsLink, 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 := &GoogleAnalyticsAdminV1betaGoogleAdsLink{ + 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 a GoogleAdsLink on a property", + // "flatPath": "v1beta/properties/{propertiesId}/googleAdsLinks/{googleAdsLinksId}", + // "httpMethod": "PATCH", + // "id": "analyticsadmin.properties.googleAdsLinks.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Output only. Format: properties/{propertyId}/googleAdsLinks/{googleAdsLinkId} Note: googleAdsLinkId is not the Google Ads customer ID.", + // "location": "path", + // "pattern": "^properties/[^/]+/googleAdsLinks/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Required. The list of fields to be updated. Field names must be in snake case (e.g., \"field_to_update\"). Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1beta/{+name}", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1betaGoogleAdsLink" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1betaGoogleAdsLink" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit" + // ] + // } + +} diff --git a/api-list.json b/api-list.json index f4bda720ca1..500dd49be2a 100644 --- a/api-list.json +++ b/api-list.json @@ -255,6 +255,21 @@ "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, "documentationLink": "http://code.google.com/apis/analytics/docs/mgmt/home.html", + "preferred": false + }, + { + "kind": "discovery#directoryItem", + "id": "analyticsadmin:v1beta", + "name": "analyticsadmin", + "version": "v1beta", + "title": "Google Analytics Admin API", + "description": "", + "discoveryRestUrl": "https://analyticsadmin.googleapis.com/$discovery/rest?version=v1beta", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "http://code.google.com/apis/analytics/docs/mgmt/home.html", "preferred": true }, { @@ -877,7 +892,7 @@ "name": "businessprofileperformance", "version": "v1", "title": "Business Profile Performance API", - "description": "The Business Profile Performance API allows merchants to fetch performance reports about their business profile on Google.", + "description": "The Business Profile Performance API allows merchants to fetch performance reports about their business profile on Google. Note - If you have a quota of 0 after enabling the API, please request \u003chttps://developers.google.com/my-business/content/prereqs#request-access\u003e for GBP API access.", "discoveryRestUrl": "https://businessprofileperformance.googleapis.com/$discovery/rest?version=v1", "icons": { "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", @@ -3852,7 +3867,7 @@ "name": "mybusinessaccountmanagement", "version": "v1", "title": "My Business Account Management API", - "description": "The My Business Account Management API provides an interface for managing access to a location on Google.", + "description": "The My Business Account Management API provides an interface for managing access to a location on Google. Note - If you have a quota of 0 after enabling the API, please request \u003chttps://developers.google.com/my-business/content/prereqs#request-access\u003e for GBP API access.", "discoveryRestUrl": "https://mybusinessaccountmanagement.googleapis.com/$discovery/rest?version=v1", "icons": { "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", @@ -3867,7 +3882,7 @@ "name": "mybusinessbusinesscalls", "version": "v1", "title": "My Business Business Calls API", - "description": "The My Business Business Calls API manages business calls information of a location on Google and collect insights like the number of missed calls to their location. Additional information about Business calls can be found at https://support.google.com/business/answer/9688285?p=call_history. If the Google Business Profile links to a Google Ads account and call history is turned on, calls that last longer than a specific time, and that can be attributed to an ad interaction, will show in the linked Google Ads account under the \"Calls from Ads\" conversion. If smart bidding and call conversions are used in the optimization strategy, there could be a change in ad spend. Learn more about smart bidding \u003chttps://support.google.com/google-ads/answer/7065882\u003e. To view and perform actions on a location's calls, you need to be a `OWNER`, `CO_OWNER` or `MANAGER` of the location.", + "description": "The My Business Business Calls API manages business calls information of a location on Google and collect insights like the number of missed calls to their location. Additional information about Business calls can be found at https://support.google.com/business/answer/9688285?p=call_history. If the Google Business Profile links to a Google Ads account and call history is turned on, calls that last longer than a specific time, and that can be attributed to an ad interaction, will show in the linked Google Ads account under the \"Calls from Ads\" conversion. If smart bidding and call conversions are used in the optimization strategy, there could be a change in ad spend. Learn more about smart bidding \u003chttps://support.google.com/google-ads/answer/7065882\u003e. To view and perform actions on a location's calls, you need to be a `OWNER`, `CO_OWNER` or `MANAGER` of the location. Note - If you have a quota of 0 after enabling the API, please request \u003chttps://developers.google.com/my-business/content/prereqs#request-access\u003e for GBP API access.", "discoveryRestUrl": "https://mybusinessbusinesscalls.googleapis.com/$discovery/rest?version=v1", "icons": { "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", @@ -3882,7 +3897,7 @@ "name": "mybusinessbusinessinformation", "version": "v1", "title": "My Business Business Information API", - "description": "The My Business Business Information API provides an interface for managing business information on Google.", + "description": "The My Business Business Information API provides an interface for managing business information. Note - If you have a quota of 0 after enabling the API, please request \u003chttps://developers.google.com/my-business/content/prereqs#request-access\u003e for GBP API access.", "discoveryRestUrl": "https://mybusinessbusinessinformation.googleapis.com/$discovery/rest?version=v1", "icons": { "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", @@ -3897,7 +3912,7 @@ "name": "mybusinesslodging", "version": "v1", "title": "My Business Lodging API", - "description": "The My Business Lodging API enables managing lodging business information on Google.", + "description": "The My Business Lodging API enables managing lodging business information on Google. Note - If you have a quota of 0 after enabling the API, please request \u003chttps://developers.google.com/my-business/content/prereqs#request-access\u003e for GBP API access.", "discoveryRestUrl": "https://mybusinesslodging.googleapis.com/$discovery/rest?version=v1", "icons": { "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", @@ -3912,7 +3927,7 @@ "name": "mybusinessnotifications", "version": "v1", "title": "My Business Notifications API", - "description": "The My Business Notification Settings API enables managing notification settings for business accounts.", + "description": "The My Business Notification Settings API enables managing notification settings for business accounts. Note - If you have a quota of 0 after enabling the API, please request \u003chttps://developers.google.com/my-business/content/prereqs#request-access\u003e for GBP API access.", "discoveryRestUrl": "https://mybusinessnotifications.googleapis.com/$discovery/rest?version=v1", "icons": { "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", @@ -3927,7 +3942,7 @@ "name": "mybusinessplaceactions", "version": "v1", "title": "My Business Place Actions API", - "description": "The My Business Place Actions API provides an interface for managing place action links of a location on Google.", + "description": "The My Business Place Actions API provides an interface for managing place action links of a location on Google. Note - If you have a quota of 0 after enabling the API, please request \u003chttps://developers.google.com/my-business/content/prereqs#request-access\u003e for GBP API access.", "discoveryRestUrl": "https://mybusinessplaceactions.googleapis.com/$discovery/rest?version=v1", "icons": { "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", @@ -3942,7 +3957,7 @@ "name": "mybusinessqanda", "version": "v1", "title": "My Business Q&A API", - "description": "The My Business Q&A API allows questions and answers to be posted for specific listings.", + "description": "The My Business Q&A API allows questions and answers to be posted for specific listings. Note - If you have a quota of 0 after enabling the API, please request \u003chttps://developers.google.com/my-business/content/prereqs#request-access\u003e for GBP API access.", "discoveryRestUrl": "https://mybusinessqanda.googleapis.com/$discovery/rest?version=v1", "icons": { "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", diff --git a/assuredworkloads/v1/assuredworkloads-api.json b/assuredworkloads/v1/assuredworkloads-api.json index 7bee7b52a3e..1004dc5c99e 100644 --- a/assuredworkloads/v1/assuredworkloads-api.json +++ b/assuredworkloads/v1/assuredworkloads-api.json @@ -310,6 +310,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "mutatePartnerPermissions": { + "description": "Update the permissions settings for an existing partner workload. For force updates don't set etag field in the Workload. Only one update operation per workload can be in progress.", + "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/workloads/{workloadsId}:mutatePartnerPermissions", + "httpMethod": "PATCH", + "id": "assuredworkloads.organizations.locations.workloads.mutatePartnerPermissions", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The `name` field is used to identify the workload. Format: organizations/{org_id}/locations/{location_id}/workloads/{workload_id}", + "location": "path", + "pattern": "^organizations/[^/]+/locations/[^/]+/workloads/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:mutatePartnerPermissions", + "request": { + "$ref": "GoogleCloudAssuredworkloadsV1MutatePartnerPermissionsRequest" + }, + "response": { + "$ref": "GoogleCloudAssuredworkloadsV1Workload" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "patch": { "description": "Updates an existing workload. Currently allows updating of workload display_name and labels. For force updates don't set etag field in the Workload. Only one update operation per workload can be in progress.", "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/workloads/{workloadsId}", @@ -491,7 +519,7 @@ } } }, - "revision": "20221110", + "revision": "20221128", "rootUrl": "https://assuredworkloads.googleapis.com/", "schemas": { "GoogleCloudAssuredworkloadsV1AcknowledgeViolationRequest": { @@ -607,6 +635,26 @@ }, "type": "object" }, + "GoogleCloudAssuredworkloadsV1MutatePartnerPermissionsRequest": { + "description": "Request of updating permission settings for a partner workload.", + "id": "GoogleCloudAssuredworkloadsV1MutatePartnerPermissionsRequest", + "properties": { + "etag": { + "description": "Optional. The etag of the workload. If this is provided, it must match the server's etag.", + "type": "string" + }, + "partnerPermissions": { + "$ref": "GoogleCloudAssuredworkloadsV1WorkloadPartnerPermissions", + "description": "Required. The partner permissions to be updated." + }, + "updateMask": { + "description": "Required. The list of fields to be updated. E.g. update_mask { paths: \"partner_permissions.data_logs_viewer\"}", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAssuredworkloadsV1RestrictAllowedResourcesRequest": { "description": "Request for restricting list of available resources in Workload environment.", "id": "GoogleCloudAssuredworkloadsV1RestrictAllowedResourcesRequest", @@ -1015,6 +1063,25 @@ }, "type": "object" }, + "GoogleCloudAssuredworkloadsV1WorkloadPartnerPermissions": { + "description": "Permissions granted to the AW Partner SA account for the customer workload", + "id": "GoogleCloudAssuredworkloadsV1WorkloadPartnerPermissions", + "properties": { + "dataLogsViewer": { + "description": "Allow partner to view data and logs", + "type": "boolean" + }, + "remediateFolderViolations": { + "description": "Allow partner to monitor folder and remediate violations", + "type": "boolean" + }, + "serviceAccessApprover": { + "description": "Allow partner to approve or reject Service Access requests", + "type": "boolean" + } + }, + "type": "object" + }, "GoogleCloudAssuredworkloadsV1WorkloadResourceInfo": { "description": "Represent the resources that are children of this Workload.", "id": "GoogleCloudAssuredworkloadsV1WorkloadResourceInfo", diff --git a/assuredworkloads/v1/assuredworkloads-gen.go b/assuredworkloads/v1/assuredworkloads-gen.go index 7c83f93dd10..5a2159ca09c 100644 --- a/assuredworkloads/v1/assuredworkloads-gen.go +++ b/assuredworkloads/v1/assuredworkloads-gen.go @@ -377,6 +377,43 @@ func (s *GoogleCloudAssuredworkloadsV1ListWorkloadsResponse) MarshalJSON() ([]by return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudAssuredworkloadsV1MutatePartnerPermissionsRequest: Request +// of updating permission settings for a partner workload. +type GoogleCloudAssuredworkloadsV1MutatePartnerPermissionsRequest struct { + // Etag: Optional. The etag of the workload. If this is provided, it + // must match the server's etag. + Etag string `json:"etag,omitempty"` + + // PartnerPermissions: Required. The partner permissions to be updated. + PartnerPermissions *GoogleCloudAssuredworkloadsV1WorkloadPartnerPermissions `json:"partnerPermissions,omitempty"` + + // UpdateMask: Required. The list of fields to be updated. E.g. + // update_mask { paths: "partner_permissions.data_logs_viewer"} + UpdateMask string `json:"updateMask,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Etag") 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. "Etag") 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 *GoogleCloudAssuredworkloadsV1MutatePartnerPermissionsRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAssuredworkloadsV1MutatePartnerPermissionsRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudAssuredworkloadsV1RestrictAllowedResourcesRequest: Request // for restricting list of available resources in Workload environment. type GoogleCloudAssuredworkloadsV1RestrictAllowedResourcesRequest struct { @@ -924,6 +961,44 @@ func (s *GoogleCloudAssuredworkloadsV1WorkloadKMSSettings) MarshalJSON() ([]byte return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudAssuredworkloadsV1WorkloadPartnerPermissions: Permissions +// granted to the AW Partner SA account for the customer workload +type GoogleCloudAssuredworkloadsV1WorkloadPartnerPermissions struct { + // DataLogsViewer: Allow partner to view data and logs + DataLogsViewer bool `json:"dataLogsViewer,omitempty"` + + // RemediateFolderViolations: Allow partner to monitor folder and + // remediate violations + RemediateFolderViolations bool `json:"remediateFolderViolations,omitempty"` + + // ServiceAccessApprover: Allow partner to approve or reject Service + // Access requests + ServiceAccessApprover bool `json:"serviceAccessApprover,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DataLogsViewer") 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. "DataLogsViewer") 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 *GoogleCloudAssuredworkloadsV1WorkloadPartnerPermissions) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAssuredworkloadsV1WorkloadPartnerPermissions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudAssuredworkloadsV1WorkloadResourceInfo: Represent the // resources that are children of this Workload. type GoogleCloudAssuredworkloadsV1WorkloadResourceInfo struct { @@ -2251,6 +2326,154 @@ func (c *OrganizationsLocationsWorkloadsListCall) Pages(ctx context.Context, f f } } +// method id "assuredworkloads.organizations.locations.workloads.mutatePartnerPermissions": + +type OrganizationsLocationsWorkloadsMutatePartnerPermissionsCall struct { + s *Service + name string + googlecloudassuredworkloadsv1mutatepartnerpermissionsrequest *GoogleCloudAssuredworkloadsV1MutatePartnerPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// MutatePartnerPermissions: Update the permissions settings for an +// existing partner workload. For force updates don't set etag field in +// the Workload. Only one update operation per workload can be in +// progress. +// +// - name: The `name` field is used to identify the workload. Format: +// organizations/{org_id}/locations/{location_id}/workloads/{workload_i +// d}. +func (r *OrganizationsLocationsWorkloadsService) MutatePartnerPermissions(name string, googlecloudassuredworkloadsv1mutatepartnerpermissionsrequest *GoogleCloudAssuredworkloadsV1MutatePartnerPermissionsRequest) *OrganizationsLocationsWorkloadsMutatePartnerPermissionsCall { + c := &OrganizationsLocationsWorkloadsMutatePartnerPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googlecloudassuredworkloadsv1mutatepartnerpermissionsrequest = googlecloudassuredworkloadsv1mutatepartnerpermissionsrequest + 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 *OrganizationsLocationsWorkloadsMutatePartnerPermissionsCall) Fields(s ...googleapi.Field) *OrganizationsLocationsWorkloadsMutatePartnerPermissionsCall { + 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 *OrganizationsLocationsWorkloadsMutatePartnerPermissionsCall) Context(ctx context.Context) *OrganizationsLocationsWorkloadsMutatePartnerPermissionsCall { + 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 *OrganizationsLocationsWorkloadsMutatePartnerPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsLocationsWorkloadsMutatePartnerPermissionsCall) 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.googlecloudassuredworkloadsv1mutatepartnerpermissionsrequest) + 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/{+name}:mutatePartnerPermissions") + 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 "assuredworkloads.organizations.locations.workloads.mutatePartnerPermissions" call. +// Exactly one of *GoogleCloudAssuredworkloadsV1Workload or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleCloudAssuredworkloadsV1Workload.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 *OrganizationsLocationsWorkloadsMutatePartnerPermissionsCall) Do(opts ...googleapi.CallOption) (*GoogleCloudAssuredworkloadsV1Workload, 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 := &GoogleCloudAssuredworkloadsV1Workload{ + 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": "Update the permissions settings for an existing partner workload. For force updates don't set etag field in the Workload. Only one update operation per workload can be in progress.", + // "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/workloads/{workloadsId}:mutatePartnerPermissions", + // "httpMethod": "PATCH", + // "id": "assuredworkloads.organizations.locations.workloads.mutatePartnerPermissions", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The `name` field is used to identify the workload. Format: organizations/{org_id}/locations/{location_id}/workloads/{workload_id}", + // "location": "path", + // "pattern": "^organizations/[^/]+/locations/[^/]+/workloads/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:mutatePartnerPermissions", + // "request": { + // "$ref": "GoogleCloudAssuredworkloadsV1MutatePartnerPermissionsRequest" + // }, + // "response": { + // "$ref": "GoogleCloudAssuredworkloadsV1Workload" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "assuredworkloads.organizations.locations.workloads.patch": type OrganizationsLocationsWorkloadsPatchCall struct { diff --git a/bigqueryreservation/v1/bigqueryreservation-api.json b/bigqueryreservation/v1/bigqueryreservation-api.json index de6dc0af314..656798d15af 100644 --- a/bigqueryreservation/v1/bigqueryreservation-api.json +++ b/bigqueryreservation/v1/bigqueryreservation-api.json @@ -823,7 +823,7 @@ } } }, - "revision": "20221016", + "revision": "20221112", "rootUrl": "https://bigqueryreservation.googleapis.com/", "schemas": { "Assignment": { @@ -848,7 +848,7 @@ "Pipeline (load/export) jobs from the project will use the reservation.", "Query jobs from the project will use the reservation.", "BigQuery ML jobs that use services external to BigQuery for model training. These jobs will not utilize idle slots from other reservations.", - "Background jobs that BigQuery runs for the customers in the background. This is a preview feature." + "Background jobs that BigQuery runs for the customers in the background." ], "type": "string" }, diff --git a/bigqueryreservation/v1/bigqueryreservation-gen.go b/bigqueryreservation/v1/bigqueryreservation-gen.go index 0828d4dbacf..c7fcbf8cbdc 100644 --- a/bigqueryreservation/v1/bigqueryreservation-gen.go +++ b/bigqueryreservation/v1/bigqueryreservation-gen.go @@ -222,7 +222,7 @@ type Assignment struct { // BigQuery for model training. These jobs will not utilize idle slots // from other reservations. // "BACKGROUND" - Background jobs that BigQuery runs for the customers - // in the background. This is a preview feature. + // in the background. JobType string `json:"jobType,omitempty"` // Name: Output only. Name of the resource. E.g.: diff --git a/businessprofileperformance/v1/businessprofileperformance-api.json b/businessprofileperformance/v1/businessprofileperformance-api.json index c6ba01243a8..69019ec604a 100644 --- a/businessprofileperformance/v1/businessprofileperformance-api.json +++ b/businessprofileperformance/v1/businessprofileperformance-api.json @@ -3,7 +3,7 @@ "baseUrl": "https://businessprofileperformance.googleapis.com/", "batchPath": "batch", "canonicalName": "Business Profile Performance", - "description": "The Business Profile Performance API allows merchants to fetch performance reports about their business profile on Google.", + "description": "The Business Profile Performance API allows merchants to fetch performance reports about their business profile on Google. Note - If you have a quota of 0 after enabling the API, please request for GBP API access.", "discoveryVersion": "v1", "documentationLink": "https://developers.google.com/my-business/", "fullyEncodeReservedExpansion": true, @@ -323,7 +323,7 @@ } } }, - "revision": "20220606", + "revision": "20221201", "rootUrl": "https://businessprofileperformance.googleapis.com/", "schemas": { "Date": { diff --git a/chat/v1/chat-api.json b/chat/v1/chat-api.json index 3f403340e76..a2996745d6c 100644 --- a/chat/v1/chat-api.json +++ b/chat/v1/chat-api.json @@ -603,7 +603,7 @@ "members": { "methods": { "get": { - "description": "Returns a membership. Requires [service account authentication](https://developers.google.com/chat/api/guides/auth/service-accounts).", + "description": "[Developer Preview](https://developers.google.com/workspace/preview): Returns a membership. 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.memberships` or `chat.memberships.readonly` authorization scope.", "flatPath": "v1/spaces/{spacesId}/members/{membersId}", "httpMethod": "GET", "id": "chat.spaces.members.get", @@ -628,7 +628,7 @@ ] }, "list": { - "description": "Lists memberships in a space. Requires [service account authentication](https://developers.google.com/chat/api/guides/auth/service-accounts).", + "description": "[Developer Preview](https://developers.google.com/workspace/preview): Lists memberships in 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.memberships` or `chat.memberships.readonly` authorization scope.", "flatPath": "v1/spaces/{spacesId}/members", "httpMethod": "GET", "id": "chat.spaces.members.list", @@ -643,7 +643,7 @@ "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous list memberships call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided must match the call that provided the page token.", + "description": "A page token, received from a previous list memberships call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided should match the call that provided the page token. Passing different values to the other parameters may lead to unexpected results.", "location": "query", "type": "string" }, @@ -777,6 +777,45 @@ "https://www.googleapis.com/auth/chat.messages.readonly" ] }, + "patch": { + "description": "Updates a message. For example usage, see [Update a message](https://developers.google.com/chat/api/guides/crudl/messages#update_a_message). 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.messages` authorization scope.", + "flatPath": "v1/spaces/{spacesId}/messages/{messagesId}", + "httpMethod": "PATCH", + "id": "chat.spaces.messages.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. If `true` and the message is not found, a new message is created and `updateMask` is ignored. The specified message ID must be [client-assigned](https://developers.google.com/chat/api/guides/crudl/messages#name_a_created_message) or the request fails.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Resource name in the form `spaces/*/messages/*`. Example: `spaces/AAAAAAAAAAA/messages/BBBBBBBBBBB.BBBBBBBBBBB`", + "location": "path", + "pattern": "^spaces/[^/]+/messages/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The field paths to update. Separate multiple values with commas. Currently supported field paths: - text - cards (Requires [service account authentication](/chat/api/guides/auth/service-accounts).) - cards_v2 ", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Message" + }, + "response": { + "$ref": "Message" + }, + "scopes": [ + "https://www.googleapis.com/auth/chat.messages" + ] + }, "update": { "description": "Updates a message. For example usage, see [Update a message](https://developers.google.com/chat/api/guides/crudl/messages#update_a_message). 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.messages` authorization scope.", "flatPath": "v1/spaces/{spacesId}/messages/{messagesId}", @@ -849,7 +888,7 @@ } } }, - "revision": "20221115", + "revision": "20221126", "rootUrl": "https://chat.googleapis.com/", "schemas": { "ActionParameter": { diff --git a/chat/v1/chat-gen.go b/chat/v1/chat-gen.go index ae99ae569be..364fe13b069 100644 --- a/chat/v1/chat-gen.go +++ b/chat/v1/chat-gen.go @@ -6257,8 +6257,20 @@ type SpacesMembersGetCall struct { header_ http.Header } -// Get: Returns a membership. Requires service account authentication +// Get: Developer Preview +// (https://developers.google.com/workspace/preview): Returns a +// membership. 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.memberships` or `chat.memberships.readonly` authorization +// scope. // // - name: Resource name of the membership to retrieve. Format: // spaces/{space}/members/{member}. @@ -6367,7 +6379,7 @@ func (c *SpacesMembersGetCall) Do(opts ...googleapi.CallOption) (*Membership, er } return ret, nil // { - // "description": "Returns a membership. Requires [service account authentication](https://developers.google.com/chat/api/guides/auth/service-accounts).", + // "description": "[Developer Preview](https://developers.google.com/workspace/preview): Returns a membership. 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.memberships` or `chat.memberships.readonly` authorization scope.", // "flatPath": "v1/spaces/{spacesId}/members/{membersId}", // "httpMethod": "GET", // "id": "chat.spaces.members.get", @@ -6405,9 +6417,20 @@ type SpacesMembersListCall struct { header_ http.Header } -// List: Lists memberships in a space. Requires service account -// authentication +// List: Developer Preview +// (https://developers.google.com/workspace/preview): Lists memberships +// in 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.memberships` or `chat.memberships.readonly` authorization +// scope. // // - parent: The resource name of the space for which to fetch a // membership list. Format: spaces/{space}. @@ -6430,7 +6453,9 @@ func (c *SpacesMembersListCall) PageSize(pageSize int64) *SpacesMembersListCall // PageToken sets the optional parameter "pageToken": A page token, // received from a previous list memberships call. Provide this to // retrieve the subsequent page. When paginating, all other parameters -// provided must match the call that provided the page token. +// provided should match the call that provided the page token. Passing +// different values to the other parameters may lead to unexpected +// results. func (c *SpacesMembersListCall) PageToken(pageToken string) *SpacesMembersListCall { c.urlParams_.Set("pageToken", pageToken) return c @@ -6535,7 +6560,7 @@ func (c *SpacesMembersListCall) Do(opts ...googleapi.CallOption) (*ListMembershi } return ret, nil // { - // "description": "Lists memberships in a space. Requires [service account authentication](https://developers.google.com/chat/api/guides/auth/service-accounts).", + // "description": "[Developer Preview](https://developers.google.com/workspace/preview): Lists memberships in 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.memberships` or `chat.memberships.readonly` authorization scope.", // "flatPath": "v1/spaces/{spacesId}/members", // "httpMethod": "GET", // "id": "chat.spaces.members.list", @@ -6550,7 +6575,7 @@ func (c *SpacesMembersListCall) Do(opts ...googleapi.CallOption) (*ListMembershi // "type": "integer" // }, // "pageToken": { - // "description": "A page token, received from a previous list memberships call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided must match the call that provided the page token.", + // "description": "A page token, received from a previous list memberships call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided should match the call that provided the page token. Passing different values to the other parameters may lead to unexpected results.", // "location": "query", // "type": "string" // }, @@ -7144,6 +7169,193 @@ func (c *SpacesMessagesGetCall) Do(opts ...googleapi.CallOption) (*Message, erro } +// method id "chat.spaces.messages.patch": + +type SpacesMessagesPatchCall struct { + s *Service + name string + message *Message + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a message. For example usage, see Update a message +// (https://developers.google.com/chat/api/guides/crudl/messages#update_a_message). +// 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.messages` authorization scope. +// +// - name: Resource name in the form `spaces/*/messages/*`. Example: +// `spaces/AAAAAAAAAAA/messages/BBBBBBBBBBB.BBBBBBBBBBB`. +func (r *SpacesMessagesService) Patch(name string, message *Message) *SpacesMessagesPatchCall { + c := &SpacesMessagesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.message = message + return c +} + +// AllowMissing sets the optional parameter "allowMissing": If `true` +// and the message is not found, a new message is created and +// `updateMask` is ignored. The specified message ID must be +// client-assigned +// (https://developers.google.com/chat/api/guides/crudl/messages#name_a_created_message) +// or the request fails. +func (c *SpacesMessagesPatchCall) AllowMissing(allowMissing bool) *SpacesMessagesPatchCall { + c.urlParams_.Set("allowMissing", fmt.Sprint(allowMissing)) + return c +} + +// UpdateMask sets the optional parameter "updateMask": Required. The +// field paths to update. Separate multiple values with commas. +// Currently supported field paths: - text - cards (Requires service +// account authentication (/chat/api/guides/auth/service-accounts).) - +// cards_v2 +func (c *SpacesMessagesPatchCall) UpdateMask(updateMask string) *SpacesMessagesPatchCall { + 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 *SpacesMessagesPatchCall) Fields(s ...googleapi.Field) *SpacesMessagesPatchCall { + 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 *SpacesMessagesPatchCall) Context(ctx context.Context) *SpacesMessagesPatchCall { + 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 *SpacesMessagesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *SpacesMessagesPatchCall) 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.message) + 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/{+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 "chat.spaces.messages.patch" call. +// Exactly one of *Message or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Message.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 *SpacesMessagesPatchCall) Do(opts ...googleapi.CallOption) (*Message, 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 := &Message{ + 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 a message. For example usage, see [Update a message](https://developers.google.com/chat/api/guides/crudl/messages#update_a_message). 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.messages` authorization scope.", + // "flatPath": "v1/spaces/{spacesId}/messages/{messagesId}", + // "httpMethod": "PATCH", + // "id": "chat.spaces.messages.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "allowMissing": { + // "description": "Optional. If `true` and the message is not found, a new message is created and `updateMask` is ignored. The specified message ID must be [client-assigned](https://developers.google.com/chat/api/guides/crudl/messages#name_a_created_message) or the request fails.", + // "location": "query", + // "type": "boolean" + // }, + // "name": { + // "description": "Resource name in the form `spaces/*/messages/*`. Example: `spaces/AAAAAAAAAAA/messages/BBBBBBBBBBB.BBBBBBBBBBB`", + // "location": "path", + // "pattern": "^spaces/[^/]+/messages/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Required. The field paths to update. Separate multiple values with commas. Currently supported field paths: - text - cards (Requires [service account authentication](/chat/api/guides/auth/service-accounts).) - cards_v2 ", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "request": { + // "$ref": "Message" + // }, + // "response": { + // "$ref": "Message" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/chat.messages" + // ] + // } + +} + // method id "chat.spaces.messages.update": type SpacesMessagesUpdateCall struct { diff --git a/chromemanagement/v1/chromemanagement-api.json b/chromemanagement/v1/chromemanagement-api.json index 7a38cee79eb..e00b961fca4 100644 --- a/chromemanagement/v1/chromemanagement-api.json +++ b/chromemanagement/v1/chromemanagement-api.json @@ -625,13 +625,64 @@ ] } } + }, + "events": { + "methods": { + "list": { + "description": "List telemetry events.", + "flatPath": "v1/customers/{customersId}/telemetry/events", + "httpMethod": "GET", + "id": "chromemanagement.customers.telemetry.events.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Only include resources that match the filter. Supported filter fields: * device_id * user_id * device_org_unit_id * user_org_unit_id * timestamp * event_type", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Maximum number of results to return. Default value is 100. Maximum value is 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Token to specify next page in the list.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Customer id or \"my_customer\" to use the customer associated to the account making the request.", + "location": "path", + "pattern": "^customers/[^/]+$", + "required": true, + "type": "string" + }, + "readMask": { + "description": "Required. Read mask to specify which fields to return.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/telemetry/events", + "response": { + "$ref": "GoogleChromeManagementV1ListTelemetryEventsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/chrome.management.telemetry.readonly" + ] + } + } } } } } } }, - "revision": "20221014", + "revision": "20221129", "rootUrl": "https://chromemanagement.googleapis.com/", "schemas": { "GoogleChromeManagementV1AndroidAppInfo": { @@ -1922,6 +1973,24 @@ }, "type": "object" }, + "GoogleChromeManagementV1ListTelemetryEventsResponse": { + "description": "Response message for listing telemetry events for a customer.", + "id": "GoogleChromeManagementV1ListTelemetryEventsResponse", + "properties": { + "nextPageToken": { + "description": "Token to specify next page in the list.", + "type": "string" + }, + "telemetryEvents": { + "description": "Telemetry events returned in the response.", + "items": { + "$ref": "GoogleChromeManagementV1TelemetryEvent" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleChromeManagementV1MemoryInfo": { "description": "Memory information of a device. * This field has both telemetry and device information: - `totalRamBytes` - Device information - `availableRamBytes` - Telemetry information - `totalMemoryEncryption` - Device information * Data for this field is controlled via policy: [ReportDeviceMemoryInfo](https://chromeenterprise.google/policies/#ReportDeviceMemoryInfo) * Data Collection Frequency: - `totalRamBytes` - Only at upload - `availableRamBytes` - Every 10 minutes - `totalMemoryEncryption` - at device startup * Default Data Reporting Frequency: - `totalRamBytes` - 3 hours - `availableRamBytes` - 3 hours - `totalMemoryEncryption` - at device startup - Policy Controlled: Yes * Cache: If the device is offline, the collected data is stored locally, and will be reported when the device is next online: only for `totalMemoryEncryption` * Reported for affiliated users only: N/A", "id": "GoogleChromeManagementV1MemoryInfo", @@ -2293,6 +2362,12 @@ }, "type": "object" }, + "GoogleChromeManagementV1TelemetryAudioSevereUnderrunEvent": { + "description": "`TelemetryAudioSevereUnderrunEvent` is triggered when a audio devices run out of buffer data for more than 5 seconds.", + "id": "GoogleChromeManagementV1TelemetryAudioSevereUnderrunEvent", + "properties": {}, + "type": "object" + }, "GoogleChromeManagementV1TelemetryDevice": { "description": "Telemetry data collected from a managed device.", "id": "GoogleChromeManagementV1TelemetryDevice", @@ -2449,6 +2524,158 @@ }, "type": "object" }, + "GoogleChromeManagementV1TelemetryDeviceInfo": { + "description": "Information about a device associated with telemetry data.", + "id": "GoogleChromeManagementV1TelemetryDeviceInfo", + "properties": { + "deviceId": { + "description": "Output only. The unique Directory API ID of the device. This value is the same as the Admin Console's Directory API ID in the ChromeOS Devices tab.", + "readOnly": true, + "type": "string" + }, + "orgUnitId": { + "description": "Output only. Organization unit ID of the device.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleChromeManagementV1TelemetryEvent": { + "description": "Telemetry data reported by a managed device.", + "id": "GoogleChromeManagementV1TelemetryEvent", + "properties": { + "audioSevereUnderrunEvent": { + "$ref": "GoogleChromeManagementV1TelemetryAudioSevereUnderrunEvent", + "description": "Output only. Payload for audio severe underrun event. Present only when the `event_type` field is `AUDIO_SEVERE_UNDERRUN`.", + "readOnly": true + }, + "device": { + "$ref": "GoogleChromeManagementV1TelemetryDeviceInfo", + "description": "Output only. Information about the device associated with the event.", + "readOnly": true + }, + "eventType": { + "description": "The event type of the current event.", + "enum": [ + "EVENT_TYPE_UNSPECIFIED", + "AUDIO_SEVERE_UNDERRUN", + "NETWORK_CONNECTION_STATE_CHANGE", + "USB_ADDED", + "USB_REMOVED", + "NETWORK_HTTPS_LATENCY_CHANGE" + ], + "enumDescriptions": [ + "Event type unknown.", + "Triggered when a audio devices run out of buffer data for more than 5 seconds.", + "Triggered immediately on any changes to a network connection.", + "Triggered when USB devices are added.", + "Triggered when USB devices are removed.", + "Triggered when a new HTTPS latency problem was detected or the device has recovered form an existing HTTPS latency problem." + ], + "type": "string" + }, + "httpsLatencyChangeEvent": { + "$ref": "GoogleChromeManagementV1TelemetryHttpsLatencyChangeEvent", + "description": "Output only. Payload for HTTPS latency change event. Present only when `event_type` is `NETWORK_HTTPS_LATENCY_CHANGE`.", + "readOnly": true + }, + "name": { + "description": "Output only. Resource name of the event.", + "readOnly": true, + "type": "string" + }, + "networkConnectionStateChangeEvent": { + "$ref": "GoogleChromeManagementV1TelemetryNetworkConnectionStateChangeEvent", + "description": "Output only. Payload for network connection state change event. Present only when `event_type` is `NETWORK_CONNECTION_STATE_CHANGE`.", + "readOnly": true + }, + "reportTime": { + "description": "Timestamp that represents when the event was reported.", + "format": "google-datetime", + "type": "string" + }, + "user": { + "$ref": "GoogleChromeManagementV1TelemetryUserInfo", + "description": "Output only. Information about the user associated with the event.", + "readOnly": true + } + }, + "type": "object" + }, + "GoogleChromeManagementV1TelemetryHttpsLatencyChangeEvent": { + "description": "Https latency routine is run periodically and `TelemetryHttpsLatencyChangeEvent` is triggered if a latency problem was detected or if the device has recovered from a latency problem..", + "id": "GoogleChromeManagementV1TelemetryHttpsLatencyChangeEvent", + "properties": { + "httpsLatencyRoutineData": { + "$ref": "GoogleChromeManagementV1HttpsLatencyRoutineData", + "description": "HTTPS latency routine data that triggered the event." + }, + "httpsLatencyState": { + "description": "Current HTTPS latency state.", + "enum": [ + "HTTPS_LATENCY_STATE_UNSPECIFIED", + "RECOVERY", + "PROBLEM" + ], + "enumDescriptions": [ + "HTTPS latency state is unspecified.", + "HTTPS latency recovered from a problem.", + "HTTPS latency problem." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleChromeManagementV1TelemetryNetworkConnectionStateChangeEvent": { + "description": "`TelemetryNetworkConnectionStateChangeEvent` is triggered on network connection state changes.", + "id": "GoogleChromeManagementV1TelemetryNetworkConnectionStateChangeEvent", + "properties": { + "connectionState": { + "description": "Current connection state of the network.", + "enum": [ + "NETWORK_CONNECTION_STATE_UNSPECIFIED", + "ONLINE", + "CONNECTED", + "PORTAL", + "CONNECTING", + "NOT_CONNECTED" + ], + "enumDescriptions": [ + "Network connection state unspecified.", + "The network is connected and internet connectivity is available.", + "The network is connected and not in a detected portal state, but internet connectivity may not be available.", + "The network is connected but a portal state was detected. Internet connectivity may be limited.", + "The network is in the process of connecting.", + "The network is not connected." + ], + "type": "string" + }, + "guid": { + "description": "Unique identifier of the network.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleChromeManagementV1TelemetryUserInfo": { + "description": "Information about a user associated with telemetry data.", + "id": "GoogleChromeManagementV1TelemetryUserInfo", + "properties": { + "email": { + "description": "Output only. User's email.", + "readOnly": true, + "type": "string" + }, + "orgUnitId": { + "description": "Output only. Organization unit ID of the user.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleChromeManagementV1ThunderboltInfo": { "description": "Thunderbolt bus info. * This field provides device information, which is static and will not change over time. * Data for this field is controlled via policy: [ReportDeviceSecurityStatus](https://chromeenterprise.google/policies/#ReportDeviceSecurityStatus) * Data Collection Frequency: At device startup * Default Data Reporting Frequency: At device startup - Policy Controlled: No * Cache: If the device is offline, the collected data is stored locally, and will be reported when the device is next online: Yes * Reported for affiliated users only: N/A", "id": "GoogleChromeManagementV1ThunderboltInfo", diff --git a/chromemanagement/v1/chromemanagement-gen.go b/chromemanagement/v1/chromemanagement-gen.go index b986a6fd32b..d54d560b161 100644 --- a/chromemanagement/v1/chromemanagement-gen.go +++ b/chromemanagement/v1/chromemanagement-gen.go @@ -226,6 +226,7 @@ type CustomersReportsService struct { func NewCustomersTelemetryService(s *Service) *CustomersTelemetryService { rs := &CustomersTelemetryService{s: s} rs.Devices = NewCustomersTelemetryDevicesService(s) + rs.Events = NewCustomersTelemetryEventsService(s) return rs } @@ -233,6 +234,8 @@ type CustomersTelemetryService struct { s *Service Devices *CustomersTelemetryDevicesService + + Events *CustomersTelemetryEventsService } func NewCustomersTelemetryDevicesService(s *Service) *CustomersTelemetryDevicesService { @@ -244,6 +247,15 @@ type CustomersTelemetryDevicesService struct { s *Service } +func NewCustomersTelemetryEventsService(s *Service) *CustomersTelemetryEventsService { + rs := &CustomersTelemetryEventsService{s: s} + return rs +} + +type CustomersTelemetryEventsService struct { + s *Service +} + // GoogleChromeManagementV1AndroidAppInfo: Android app information. type GoogleChromeManagementV1AndroidAppInfo struct { // Permissions: Output only. Permissions requested by an Android app. @@ -1945,6 +1957,42 @@ func (s *GoogleChromeManagementV1ListTelemetryDevicesResponse) MarshalJSON() ([] return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleChromeManagementV1ListTelemetryEventsResponse: Response message +// for listing telemetry events for a customer. +type GoogleChromeManagementV1ListTelemetryEventsResponse struct { + // NextPageToken: Token to specify next page in the list. + NextPageToken string `json:"nextPageToken,omitempty"` + + // TelemetryEvents: Telemetry events returned in the response. + TelemetryEvents []*GoogleChromeManagementV1TelemetryEvent `json:"telemetryEvents,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 *GoogleChromeManagementV1ListTelemetryEventsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleChromeManagementV1ListTelemetryEventsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleChromeManagementV1MemoryInfo: Memory information of a device. * // This field has both telemetry and device information: - // `totalRamBytes` - Device information - `availableRamBytes` - @@ -2475,6 +2523,12 @@ func (s *GoogleChromeManagementV1StorageStatusReport) MarshalJSON() ([]byte, err return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleChromeManagementV1TelemetryAudioSevereUnderrunEvent: +// `TelemetryAudioSevereUnderrunEvent` is triggered when a audio devices +// run out of buffer data for more than 5 seconds. +type GoogleChromeManagementV1TelemetryAudioSevereUnderrunEvent struct { +} + // GoogleChromeManagementV1TelemetryDevice: Telemetry data collected // from a managed device. type GoogleChromeManagementV1TelemetryDevice struct { @@ -2591,6 +2645,233 @@ func (s *GoogleChromeManagementV1TelemetryDevice) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleChromeManagementV1TelemetryDeviceInfo: Information about a +// device associated with telemetry data. +type GoogleChromeManagementV1TelemetryDeviceInfo struct { + // DeviceId: Output only. The unique Directory API ID of the device. + // This value is the same as the Admin Console's Directory API ID in the + // ChromeOS Devices tab. + DeviceId string `json:"deviceId,omitempty"` + + // OrgUnitId: Output only. Organization unit ID of the device. + OrgUnitId string `json:"orgUnitId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DeviceId") 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. "DeviceId") 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 *GoogleChromeManagementV1TelemetryDeviceInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleChromeManagementV1TelemetryDeviceInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleChromeManagementV1TelemetryEvent: Telemetry data reported by a +// managed device. +type GoogleChromeManagementV1TelemetryEvent struct { + // AudioSevereUnderrunEvent: Output only. Payload for audio severe + // underrun event. Present only when the `event_type` field is + // `AUDIO_SEVERE_UNDERRUN`. + AudioSevereUnderrunEvent *GoogleChromeManagementV1TelemetryAudioSevereUnderrunEvent `json:"audioSevereUnderrunEvent,omitempty"` + + // Device: Output only. Information about the device associated with the + // event. + Device *GoogleChromeManagementV1TelemetryDeviceInfo `json:"device,omitempty"` + + // EventType: The event type of the current event. + // + // Possible values: + // "EVENT_TYPE_UNSPECIFIED" - Event type unknown. + // "AUDIO_SEVERE_UNDERRUN" - Triggered when a audio devices run out of + // buffer data for more than 5 seconds. + // "NETWORK_CONNECTION_STATE_CHANGE" - Triggered immediately on any + // changes to a network connection. + // "USB_ADDED" - Triggered when USB devices are added. + // "USB_REMOVED" - Triggered when USB devices are removed. + // "NETWORK_HTTPS_LATENCY_CHANGE" - Triggered when a new HTTPS latency + // problem was detected or the device has recovered form an existing + // HTTPS latency problem. + EventType string `json:"eventType,omitempty"` + + // HttpsLatencyChangeEvent: Output only. Payload for HTTPS latency + // change event. Present only when `event_type` is + // `NETWORK_HTTPS_LATENCY_CHANGE`. + HttpsLatencyChangeEvent *GoogleChromeManagementV1TelemetryHttpsLatencyChangeEvent `json:"httpsLatencyChangeEvent,omitempty"` + + // Name: Output only. Resource name of the event. + Name string `json:"name,omitempty"` + + // NetworkConnectionStateChangeEvent: Output only. Payload for network + // connection state change event. Present only when `event_type` is + // `NETWORK_CONNECTION_STATE_CHANGE`. + NetworkConnectionStateChangeEvent *GoogleChromeManagementV1TelemetryNetworkConnectionStateChangeEvent `json:"networkConnectionStateChangeEvent,omitempty"` + + // ReportTime: Timestamp that represents when the event was reported. + ReportTime string `json:"reportTime,omitempty"` + + // User: Output only. Information about the user associated with the + // event. + User *GoogleChromeManagementV1TelemetryUserInfo `json:"user,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "AudioSevereUnderrunEvent") 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. "AudioSevereUnderrunEvent") + // 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 *GoogleChromeManagementV1TelemetryEvent) MarshalJSON() ([]byte, error) { + type NoMethod GoogleChromeManagementV1TelemetryEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleChromeManagementV1TelemetryHttpsLatencyChangeEvent: Https +// latency routine is run periodically and +// `TelemetryHttpsLatencyChangeEvent` is triggered if a latency problem +// was detected or if the device has recovered from a latency problem.. +type GoogleChromeManagementV1TelemetryHttpsLatencyChangeEvent struct { + // HttpsLatencyRoutineData: HTTPS latency routine data that triggered + // the event. + HttpsLatencyRoutineData *GoogleChromeManagementV1HttpsLatencyRoutineData `json:"httpsLatencyRoutineData,omitempty"` + + // HttpsLatencyState: Current HTTPS latency state. + // + // Possible values: + // "HTTPS_LATENCY_STATE_UNSPECIFIED" - HTTPS latency state is + // unspecified. + // "RECOVERY" - HTTPS latency recovered from a problem. + // "PROBLEM" - HTTPS latency problem. + HttpsLatencyState string `json:"httpsLatencyState,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "HttpsLatencyRoutineData") 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. "HttpsLatencyRoutineData") + // 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 *GoogleChromeManagementV1TelemetryHttpsLatencyChangeEvent) MarshalJSON() ([]byte, error) { + type NoMethod GoogleChromeManagementV1TelemetryHttpsLatencyChangeEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleChromeManagementV1TelemetryNetworkConnectionStateChangeEvent: +// `TelemetryNetworkConnectionStateChangeEvent` is triggered on network +// connection state changes. +type GoogleChromeManagementV1TelemetryNetworkConnectionStateChangeEvent struct { + // ConnectionState: Current connection state of the network. + // + // Possible values: + // "NETWORK_CONNECTION_STATE_UNSPECIFIED" - Network connection state + // unspecified. + // "ONLINE" - The network is connected and internet connectivity is + // available. + // "CONNECTED" - The network is connected and not in a detected portal + // state, but internet connectivity may not be available. + // "PORTAL" - The network is connected but a portal state was + // detected. Internet connectivity may be limited. + // "CONNECTING" - The network is in the process of connecting. + // "NOT_CONNECTED" - The network is not connected. + ConnectionState string `json:"connectionState,omitempty"` + + // Guid: Unique identifier of the network. + Guid string `json:"guid,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ConnectionState") 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. "ConnectionState") 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 *GoogleChromeManagementV1TelemetryNetworkConnectionStateChangeEvent) MarshalJSON() ([]byte, error) { + type NoMethod GoogleChromeManagementV1TelemetryNetworkConnectionStateChangeEvent + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleChromeManagementV1TelemetryUserInfo: Information about a user +// associated with telemetry data. +type GoogleChromeManagementV1TelemetryUserInfo struct { + // Email: Output only. User's email. + Email string `json:"email,omitempty"` + + // OrgUnitId: Output only. Organization unit ID of the user. + OrgUnitId string `json:"orgUnitId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Email") 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. "Email") 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 *GoogleChromeManagementV1TelemetryUserInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleChromeManagementV1TelemetryUserInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleChromeManagementV1ThunderboltInfo: Thunderbolt bus info. * This // field provides device information, which is static and will not // change over time. * Data for this field is controlled via policy: @@ -5153,3 +5434,224 @@ func (c *CustomersTelemetryDevicesListCall) Pages(ctx context.Context, f func(*G c.PageToken(x.NextPageToken) } } + +// method id "chromemanagement.customers.telemetry.events.list": + +type CustomersTelemetryEventsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: List telemetry events. +// +// - parent: Customer id or "my_customer" to use the customer associated +// to the account making the request. +func (r *CustomersTelemetryEventsService) List(parent string) *CustomersTelemetryEventsListCall { + c := &CustomersTelemetryEventsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Filter sets the optional parameter "filter": Only include resources +// that match the filter. Supported filter fields: * device_id * user_id +// * device_org_unit_id * user_org_unit_id * timestamp * event_type +func (c *CustomersTelemetryEventsListCall) Filter(filter string) *CustomersTelemetryEventsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": Maximum number of +// results to return. Default value is 100. Maximum value is 1000. +func (c *CustomersTelemetryEventsListCall) PageSize(pageSize int64) *CustomersTelemetryEventsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": Token to specify +// next page in the list. +func (c *CustomersTelemetryEventsListCall) PageToken(pageToken string) *CustomersTelemetryEventsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// ReadMask sets the optional parameter "readMask": Required. Read mask +// to specify which fields to return. +func (c *CustomersTelemetryEventsListCall) ReadMask(readMask string) *CustomersTelemetryEventsListCall { + c.urlParams_.Set("readMask", readMask) + 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 *CustomersTelemetryEventsListCall) Fields(s ...googleapi.Field) *CustomersTelemetryEventsListCall { + 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 *CustomersTelemetryEventsListCall) IfNoneMatch(entityTag string) *CustomersTelemetryEventsListCall { + 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 *CustomersTelemetryEventsListCall) Context(ctx context.Context) *CustomersTelemetryEventsListCall { + 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 *CustomersTelemetryEventsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CustomersTelemetryEventsListCall) 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}/telemetry/events") + 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 "chromemanagement.customers.telemetry.events.list" call. +// Exactly one of *GoogleChromeManagementV1ListTelemetryEventsResponse +// or error will be non-nil. Any non-2xx status code is an error. +// Response headers are in either +// *GoogleChromeManagementV1ListTelemetryEventsResponse.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 *CustomersTelemetryEventsListCall) Do(opts ...googleapi.CallOption) (*GoogleChromeManagementV1ListTelemetryEventsResponse, 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 := &GoogleChromeManagementV1ListTelemetryEventsResponse{ + 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": "List telemetry events.", + // "flatPath": "v1/customers/{customersId}/telemetry/events", + // "httpMethod": "GET", + // "id": "chromemanagement.customers.telemetry.events.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "filter": { + // "description": "Optional. Only include resources that match the filter. Supported filter fields: * device_id * user_id * device_org_unit_id * user_org_unit_id * timestamp * event_type", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Optional. Maximum number of results to return. Default value is 100. Maximum value is 1000.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. Token to specify next page in the list.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. Customer id or \"my_customer\" to use the customer associated to the account making the request.", + // "location": "path", + // "pattern": "^customers/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "readMask": { + // "description": "Required. Read mask to specify which fields to return.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/telemetry/events", + // "response": { + // "$ref": "GoogleChromeManagementV1ListTelemetryEventsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/chrome.management.telemetry.readonly" + // ] + // } + +} + +// 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 *CustomersTelemetryEventsListCall) Pages(ctx context.Context, f func(*GoogleChromeManagementV1ListTelemetryEventsResponse) 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/cloudsupport/v2beta/cloudsupport-api.json b/cloudsupport/v2beta/cloudsupport-api.json index 7e17def9cae..d954adf81b6 100644 --- a/cloudsupport/v2beta/cloudsupport-api.json +++ b/cloudsupport/v2beta/cloudsupport-api.json @@ -117,7 +117,7 @@ ], "parameters": { "parent": { - "description": "Required. The resource name of the case to which attachment should be attached.", + "description": "Required. The resource name of the case (or case parent) to which the attachment should be attached.", "location": "path", "pattern": "^[^/]+/[^/]+$", "required": true, @@ -553,7 +553,7 @@ ], "parameters": { "parent": { - "description": "Required. The resource name of the case to which attachment should be attached.", + "description": "Required. The resource name of the case (or case parent) to which the attachment should be attached.", "location": "path", "pattern": "^[^/]+/[^/]+/cases/[^/]+$", "required": true, @@ -575,7 +575,7 @@ } } }, - "revision": "20221114", + "revision": "20221129", "rootUrl": "https://cloudsupport.googleapis.com/", "schemas": { "Actor": { @@ -696,6 +696,10 @@ "description": "Whether the case is currently escalated.", "type": "boolean" }, + "languageCode": { + "description": "The language the user has requested to receive support in. This should be a BCP 47 language code (e.g., `\"en\"`, `\"zh-CN\"`, `\"zh-TW\"`, `\"ja\"`, `\"ko\"`). If no language or an unsupported language is specified, this field defaults to English (en). Language selection during case creation may affect your available support options. For a list of supported languages and their support working hours, see: https://cloud.google.com/support/docs/language-working-hours", + "type": "string" + }, "name": { "description": "The resource name for the case.", "type": "string" diff --git a/cloudsupport/v2beta/cloudsupport-gen.go b/cloudsupport/v2beta/cloudsupport-gen.go index 506977a422a..4dcd13177a1 100644 --- a/cloudsupport/v2beta/cloudsupport-gen.go +++ b/cloudsupport/v2beta/cloudsupport-gen.go @@ -366,6 +366,15 @@ type Case struct { // Escalated: Whether the case is currently escalated. Escalated bool `json:"escalated,omitempty"` + // LanguageCode: The language the user has requested to receive support + // in. This should be a BCP 47 language code (e.g., "en", "zh-CN", + // "zh-TW", "ja", "ko"). If no language or an unsupported language + // is specified, this field defaults to English (en). Language selection + // during case creation may affect your available support options. For a + // list of supported languages and their support working hours, see: + // https://cloud.google.com/support/docs/language-working-hours + LanguageCode string `json:"languageCode,omitempty"` + // Name: The resource name for the case. Name string `json:"name,omitempty"` @@ -1428,8 +1437,8 @@ type AttachmentsCreateCall struct { // 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. +// - parent: The resource name of the case (or case parent) to which the +// attachment should be attached. func (r *AttachmentsService) Create(parent string, createattachmentrequest *CreateAttachmentRequest) *AttachmentsCreateCall { c := &AttachmentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -1537,7 +1546,7 @@ func (c *AttachmentsCreateCall) Do(opts ...googleapi.CallOption) (*Attachment, e // ], // "parameters": { // "parent": { - // "description": "Required. The resource name of the case to which attachment should be attached.", + // "description": "Required. The resource name of the case (or case parent) to which the attachment should be attached.", // "location": "path", // "pattern": "^[^/]+/[^/]+$", // "required": true, @@ -3644,8 +3653,8 @@ type MediaUploadCall struct { // 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. +// - parent: The resource name of the case (or case parent) to which the +// attachment should be attached. func (r *MediaService) Upload(parent string, createattachmentrequest *CreateAttachmentRequest) *MediaUploadCall { c := &MediaUploadCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -3831,7 +3840,7 @@ func (c *MediaUploadCall) Do(opts ...googleapi.CallOption) (*Attachment, error) // ], // "parameters": { // "parent": { - // "description": "Required. The resource name of the case to which attachment should be attached.", + // "description": "Required. The resource name of the case (or case parent) to which the attachment should be attached.", // "location": "path", // "pattern": "^[^/]+/[^/]+/cases/[^/]+$", // "required": true, diff --git a/content/v2.1/content-api.json b/content/v2.1/content-api.json index 6478b4cdf5c..45a4c279420 100644 --- a/content/v2.1/content-api.json +++ b/content/v2.1/content-api.json @@ -4581,7 +4581,7 @@ "quotas": { "methods": { "list": { - "description": "Lists the quota limit and quota usage per method for your Merchant Center account.", + "description": "Lists the daily call quota and usage per method for your Merchant Center account.", "flatPath": "{merchantId}/quotas", "httpMethod": "GET", "id": "content.quotas.list", @@ -5953,7 +5953,7 @@ } } }, - "revision": "20221110", + "revision": "20221128", "rootUrl": "https://shoppingcontent.googleapis.com/", "schemas": { "Account": { @@ -7169,12 +7169,12 @@ "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).", + "description": "Google product category ID to calculate the ranking for, represented in [Google's product taxonomy](https://support.google.com/merchants/answer/6324436). If a `WHERE` condition on `best_sellers.category_id` is not specified in the query, rankings for all top-level categories are returned.", "format": "int64", "type": "string" }, "countryCode": { - "description": "Country where the ranking is calculated.", + "description": "Country where the ranking is calculated. A `WHERE` condition on `best_sellers.country_code` is required in the query.", "type": "string" }, "previousRank": { @@ -7245,10 +7245,10 @@ }, "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." + "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. If a `WHERE` condition on `best_sellers.report_date` is not specified in the query, the latest available weekly or monthly report is returned." }, "reportGranularity": { - "description": "Granularity of the report. The ranking can be done over a week or a month timeframe.", + "description": "Granularity of the report. The ranking can be done over a week or a month timeframe. A `WHERE` condition on `best_sellers.report_granularity` is required in the query.", "enum": [ "REPORT_GRANULARITY_UNSPECIFIED", "WEEKLY", @@ -7996,7 +7996,7 @@ "type": "string" }, "excludedDestinations": { - "description": "The list of destinations to exclude for this target (corresponds to cleared check boxes in Merchant Center).", + "description": "The list of destinations to exclude for this target (corresponds to cleared check boxes in Merchant Center). Products that are excluded from all destinations for more than 7 days are automatically deleted.", "items": { "type": "string" }, @@ -9681,20 +9681,20 @@ "type": "object" }, "MethodQuota": { - "description": "The quota information per method in the Content API.", + "description": "The quota information per method in the Content API. Includes only methods with current usage greater than zero for your account.", "id": "MethodQuota", "properties": { "method": { - "description": "The method name, for example “products.list”. Method name does not contain version because quota can be shared between different API versions of the same method.", + "description": "The method name, for example `products.list`. Method name does not contain version because quota can be shared between different API versions of the same method.", "type": "string" }, "quotaLimit": { - "description": "The current quota limit, for example the maximum number of calls for the method.", + "description": "The current quota limit per day, meaning the maximum number of calls for the method.", "format": "int64", "type": "string" }, "quotaUsage": { - "description": "The current quota usage, for example the number of calls for the method.", + "description": "The current quota usage, meaning the number of calls already made to the method.", "format": "int64", "type": "string" } @@ -9711,7 +9711,7 @@ "type": "number" }, "aovMicros": { - "description": "Average order value - the average value (total price of items) of all placed orders. The currency of the returned value is stored in the currency_code segment. If this metric is selected, 'segments.currency_code' is automatically added to the SELECT clause in the search query (unless it is explicitly selected by the user) and the currency_code segment is populated in the response. **This metric cannot be segmented by product dimensions and customer_country_code.**", + "description": "Average order value in micros (1 millionth of a standard unit, 1 USD = 1000000 micros) - the average value (total price of items) of all placed orders. The currency of the returned value is stored in the currency_code segment. If this metric is selected, 'segments.currency_code' is automatically added to the SELECT clause in the search query (unless it is explicitly selected by the user) and the currency_code segment is populated in the response. **This metric cannot be segmented by product dimensions and customer_country_code.**", "format": "double", "type": "number" }, @@ -9726,7 +9726,7 @@ "type": "number" }, "conversionValueMicros": { - "description": "Value of conversions in micros attributed to the product, reported on the conversion date. The metric is currently available only for the FREE_PRODUCT_LISTING program. The currency of the returned value is stored in the currency_code segment. If this metric is selected, 'segments.currency_code' is automatically added to the SELECT clause in the search query (unless it is explicitly selected by the user) and the currency_code segment is populated in the response.", + "description": "Value of conversions in micros (1 millionth of a standard unit, 1 USD = 1000000 micros) attributed to the product, reported on the conversion date. The metric is currently available only for the FREE_PRODUCT_LISTING program. The currency of the returned value is stored in the currency_code segment. If this metric is selected, 'segments.currency_code' is automatically added to the SELECT clause in the search query (unless it is explicitly selected by the user) and the currency_code segment is populated in the response.", "format": "int64", "type": "string" }, @@ -9761,7 +9761,7 @@ "type": "number" }, "orderedItemSalesMicros": { - "description": "Total price of ordered items. Excludes shipping, taxes (US only), and customer cancellations that happened within 30 minutes of placing the order. The currency of the returned value is stored in the currency_code segment. If this metric is selected, 'segments.currency_code' is automatically added to the SELECT clause in the search query (unless it is explicitly selected by the user) and the currency_code segment is populated in the response. **This metric cannot be segmented by customer_country_code.**", + "description": "Total price of ordered items in micros (1 millionth of a standard unit, 1 USD = 1000000 micros). Excludes shipping, taxes (US only), and customer cancellations that happened within 30 minutes of placing the order. The currency of the returned value is stored in the currency_code segment. If this metric is selected, 'segments.currency_code' is automatically added to the SELECT clause in the search query (unless it is explicitly selected by the user) and the currency_code segment is populated in the response. **This metric cannot be segmented by customer_country_code.**", "format": "int64", "type": "string" }, @@ -9791,12 +9791,12 @@ "type": "string" }, "returnsMicros": { - "description": "Total price of ordered items sent back for return, reported on the date when the merchant accepted the return. The currency of the returned value is stored in the currency_code segment. If this metric is selected, 'segments.currency_code' is automatically added to the SELECT clause in the search query (unless it is explicitly selected by the user) and the currency_code segment is populated in the response. **This metric cannot be segmented by customer_country_code.**", + "description": "Total price of ordered items sent back for return in micros (1 millionth of a standard unit, 1 USD = 1000000 micros), reported on the date when the merchant accepted the return. The currency of the returned value is stored in the currency_code segment. If this metric is selected, 'segments.currency_code' is automatically added to the SELECT clause in the search query (unless it is explicitly selected by the user) and the currency_code segment is populated in the response. **This metric cannot be segmented by customer_country_code.**", "format": "int64", "type": "string" }, "shippedItemSalesMicros": { - "description": "Total price of shipped items, reported on the order date. Excludes shipping and taxes (US only). The currency of the returned value is stored in the currency_code segment. If this metric is selected, 'segments.currency_code' is automatically added to the SELECT clause in the search query (unless it is explicitly selected by the user) and the currency_code segment is populated in the response. **This metric cannot be segmented by customer_country_code.**", + "description": "Total price of shipped items in micros (1 millionth of a standard unit, 1 USD = 1000000 micros), reported on the order date. Excludes shipping and taxes (US only). The currency of the returned value is stored in the currency_code segment. If this metric is selected, 'segments.currency_code' is automatically added to the SELECT clause in the search query (unless it is explicitly selected by the user) and the currency_code segment is populated in the response. **This metric cannot be segmented by customer_country_code.**", "format": "int64", "type": "string" }, @@ -12681,7 +12681,7 @@ "type": "string" }, "benchmarkPriceMicros": { - "description": "The latest available price benchmark in micros for the product's catalog in the benchmark country.", + "description": "The latest available price benchmark in micros (1 millionth of a standard unit, 1 USD = 1000000 micros) for the product's catalog in the benchmark country.", "format": "int64", "type": "string" }, @@ -12721,7 +12721,7 @@ "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.", + "description": "The predicted change in gross profit in micros (1 millionth of a standard unit, 1 USD = 1000000 micros) after introducing the suggested price for a month compared to current active price.", "format": "int64", "type": "string" }, @@ -12730,7 +12730,7 @@ "type": "string" }, "suggestedPriceMicros": { - "description": "The latest suggested price in micros for the product.", + "description": "The latest suggested price in micros (1 millionth of a standard unit, 1 USD = 1000000 micros) for the product.", "format": "int64", "type": "string" } @@ -12871,7 +12871,7 @@ "type": "string" }, "excludedDestinations": { - "description": "The list of destinations to exclude for this target (corresponds to cleared check boxes in Merchant Center).", + "description": "The list of destinations to exclude for this target (corresponds to cleared check boxes in Merchant Center). Products that are excluded from all destinations for more than 7 days are automatically deleted.", "items": { "type": "string" }, @@ -13126,7 +13126,7 @@ "description": "Number of periods (months or years) and amount of payment per period for an item with an associated subscription contract." }, "targetCountry": { - "description": "Required. The CLDR territory code for the item.", + "description": "Required. The CLDR territory code for the item's country of sale.", "type": "string" }, "taxCategory": { @@ -13680,6 +13680,26 @@ "description": "Brand of the product.", "type": "string" }, + "categoryL1": { + "description": "First level of the product category in [Google's product taxonomy](https://support.google.com/merchants/answer/6324436).", + "type": "string" + }, + "categoryL2": { + "description": "Second level of the product category in [Google's product taxonomy](https://support.google.com/merchants/answer/6324436).", + "type": "string" + }, + "categoryL3": { + "description": "Third level of the product category in [Google's product taxonomy](https://support.google.com/merchants/answer/6324436).", + "type": "string" + }, + "categoryL4": { + "description": "Fourth level of the product category in [Google's product taxonomy](https://support.google.com/merchants/answer/6324436).", + "type": "string" + }, + "categoryL5": { + "description": "Fifth level of the product category in [Google's product taxonomy](https://support.google.com/merchants/answer/6324436).", + "type": "string" + }, "channel": { "description": "Channel of the product (online versus local).", "enum": [ @@ -13742,10 +13762,30 @@ "type": "string" }, "priceMicros": { - "description": "Product price specified as micros in the product currency. Absent in case the information about the price of the product is not available.", + "description": "Product price specified as micros (1 millionth of a standard unit, 1 USD = 1000000 micros) in the product currency. Absent in case the information about the price of the product is not available.", "format": "int64", "type": "string" }, + "productTypeL1": { + "description": "First level of the product type in merchant's own [product taxonomy](https://support.google.com/merchants/answer/6324436).", + "type": "string" + }, + "productTypeL2": { + "description": "Second level of the product type in merchant's own [product taxonomy](https://support.google.com/merchants/answer/6324436).", + "type": "string" + }, + "productTypeL3": { + "description": "Third level of the product type in merchant's own [product taxonomy](https://support.google.com/merchants/answer/6324436).", + "type": "string" + }, + "productTypeL4": { + "description": "Fourth level of the product type in merchant's own [product taxonomy](https://support.google.com/merchants/answer/6324436).", + "type": "string" + }, + "productTypeL5": { + "description": "Fifth level of the product type in merchant's own [product taxonomy](https://support.google.com/merchants/answer/6324436).", + "type": "string" + }, "shippingLabel": { "description": "The normalized shipping label specified in the feed", "type": "string" diff --git a/content/v2.1/content-gen.go b/content/v2.1/content-gen.go index a70edea4970..20611fd86d6 100644 --- a/content/v2.1/content-gen.go +++ b/content/v2.1/content-gen.go @@ -2750,10 +2750,13 @@ func (s *Amount) MarshalJSON() ([]byte, error) { 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). + // (https://support.google.com/merchants/answer/6324436). If a `WHERE` + // condition on `best_sellers.category_id` is not specified in the + // query, rankings for all top-level categories are returned. CategoryId int64 `json:"categoryId,omitempty,string"` - // CountryCode: Country where the ranking is calculated. + // CountryCode: Country where the ranking is calculated. A `WHERE` + // condition on `best_sellers.country_code` is required in the query. CountryCode string `json:"countryCode,omitempty"` // PreviousRank: Popularity rank in the previous week or month. @@ -2811,11 +2814,14 @@ type BestSellers struct { // 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. + // reports. * The first day of the month for monthly reports. If a + // `WHERE` condition on `best_sellers.report_date` is not specified in + // the query, the latest available weekly or monthly report is returned. ReportDate *Date `json:"reportDate,omitempty"` // ReportGranularity: Granularity of the report. The ranking can be done - // over a week or a month timeframe. + // over a week or a month timeframe. A `WHERE` condition on + // `best_sellers.report_granularity` is required in the query. // // Possible values: // "REPORT_GRANULARITY_UNSPECIFIED" - Report granularity is unknown. @@ -3932,6 +3938,8 @@ type DatafeedTarget struct { // ExcludedDestinations: The list of destinations to exclude for this // target (corresponds to cleared check boxes in Merchant Center). + // Products that are excluded from all destinations for more than 7 days + // are automatically deleted. ExcludedDestinations []string `json:"excludedDestinations,omitempty"` // FeedLabel: Feed label for the DatafeedTarget. Either `country` or @@ -6918,18 +6926,20 @@ func (s *MerchantRejectionReason) MarshalJSON() ([]byte, error) { } // MethodQuota: The quota information per method in the Content API. +// Includes only methods with current usage greater than zero for your +// account. type MethodQuota struct { - // Method: The method name, for example “products.list”. Method name + // Method: The method name, for example `products.list`. Method name // does not contain version because quota can be shared between // different API versions of the same method. Method string `json:"method,omitempty"` - // QuotaLimit: The current quota limit, for example the maximum number - // of calls for the method. + // QuotaLimit: The current quota limit per day, meaning the maximum + // number of calls for the method. QuotaLimit int64 `json:"quotaLimit,omitempty,string"` - // QuotaUsage: The current quota usage, for example the number of calls - // for the method. + // QuotaUsage: The current quota usage, meaning the number of calls + // already made to the method. QuotaUsage int64 `json:"quotaUsage,omitempty,string"` // ForceSendFields is a list of field names (e.g. "Method") to @@ -6963,7 +6973,8 @@ type Metrics struct { // customer_country_code.** Aos float64 `json:"aos,omitempty"` - // AovMicros: Average order value - the average value (total price of + // AovMicros: Average order value in micros (1 millionth of a standard + // unit, 1 USD = 1000000 micros) - the average value (total price of // items) of all placed orders. The currency of the returned value is // stored in the currency_code segment. If this metric is selected, // 'segments.currency_code' is automatically added to the SELECT clause @@ -6981,14 +6992,15 @@ type Metrics struct { // available only for the FREE_PRODUCT_LISTING program. ConversionRate float64 `json:"conversionRate,omitempty"` - // ConversionValueMicros: Value of conversions in micros attributed to - // the product, reported on the conversion date. The metric is currently - // available only for the FREE_PRODUCT_LISTING program. The currency of - // the returned value is stored in the currency_code segment. If this - // metric is selected, 'segments.currency_code' is automatically added - // to the SELECT clause in the search query (unless it is explicitly - // selected by the user) and the currency_code segment is populated in - // the response. + // ConversionValueMicros: Value of conversions in micros (1 millionth of + // a standard unit, 1 USD = 1000000 micros) attributed to the product, + // reported on the conversion date. The metric is currently available + // only for the FREE_PRODUCT_LISTING program. The currency of the + // returned value is stored in the currency_code segment. If this metric + // is selected, 'segments.currency_code' is automatically added to the + // SELECT clause in the search query (unless it is explicitly selected + // by the user) and the currency_code segment is populated in the + // response. ConversionValueMicros int64 `json:"conversionValueMicros,omitempty,string"` // Conversions: Number of conversions attributed to the product, @@ -7025,7 +7037,8 @@ type Metrics struct { // segmented by customer_country_code.** ItemFillRate float64 `json:"itemFillRate,omitempty"` - // OrderedItemSalesMicros: Total price of ordered items. Excludes + // OrderedItemSalesMicros: Total price of ordered items in micros (1 + // millionth of a standard unit, 1 USD = 1000000 micros). Excludes // shipping, taxes (US only), and customer cancellations that happened // within 30 minutes of placing the order. The currency of the returned // value is stored in the currency_code segment. If this metric is @@ -7065,7 +7078,8 @@ type Metrics struct { // cannot be segmented by customer_country_code.** ReturnedItems int64 `json:"returnedItems,omitempty,string"` - // ReturnsMicros: Total price of ordered items sent back for return, + // ReturnsMicros: Total price of ordered items sent back for return in + // micros (1 millionth of a standard unit, 1 USD = 1000000 micros), // reported on the date when the merchant accepted the return. The // currency of the returned value is stored in the currency_code // segment. If this metric is selected, 'segments.currency_code' is @@ -7075,9 +7089,10 @@ type Metrics struct { // customer_country_code.** ReturnsMicros int64 `json:"returnsMicros,omitempty,string"` - // ShippedItemSalesMicros: Total price of shipped items, reported on the - // order date. Excludes shipping and taxes (US only). The currency of - // the returned value is stored in the currency_code segment. If this + // ShippedItemSalesMicros: Total price of shipped items in micros (1 + // millionth of a standard unit, 1 USD = 1000000 micros), reported on + // the order date. Excludes shipping and taxes (US only). The currency + // of the returned value is stored in the currency_code segment. If this // metric is selected, 'segments.currency_code' is automatically added // to the SELECT clause in the search query (unless it is explicitly // selected by the user) and the currency_code segment is populated in @@ -12212,7 +12227,8 @@ type PriceCompetitiveness struct { BenchmarkPriceCurrencyCode string `json:"benchmarkPriceCurrencyCode,omitempty"` // BenchmarkPriceMicros: The latest available price benchmark in micros - // for the product's catalog in the benchmark country. + // (1 millionth of a standard unit, 1 USD = 1000000 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). @@ -12276,15 +12292,17 @@ type PriceInsights struct { 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. + // gross profit in micros (1 millionth of a standard unit, 1 USD = + // 1000000 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 + // SuggestedPriceMicros: The latest suggested price in micros (1 + // millionth of a standard unit, 1 USD = 1000000 micros) for the // product. SuggestedPriceMicros int64 `json:"suggestedPriceMicros,omitempty,string"` @@ -12449,6 +12467,8 @@ type Product struct { // ExcludedDestinations: The list of destinations to exclude for this // target (corresponds to cleared check boxes in Merchant Center). + // Products that are excluded from all destinations for more than 7 days + // are automatically deleted. ExcludedDestinations []string `json:"excludedDestinations,omitempty"` // ExpirationDate: Date on which the item should expire, as specified @@ -12674,7 +12694,8 @@ type Product struct { // contract. SubscriptionCost *ProductSubscriptionCost `json:"subscriptionCost,omitempty"` - // TargetCountry: Required. The CLDR territory code for the item. + // TargetCountry: Required. The CLDR territory code for the item's + // country of sale. TargetCountry string `json:"targetCountry,omitempty"` // TaxCategory: The tax category of the product, used to configure @@ -13618,6 +13639,26 @@ type ProductView struct { // Brand: Brand of the product. Brand string `json:"brand,omitempty"` + // CategoryL1: First level of the product category in Google's product + // taxonomy (https://support.google.com/merchants/answer/6324436). + CategoryL1 string `json:"categoryL1,omitempty"` + + // CategoryL2: Second level of the product category in Google's product + // taxonomy (https://support.google.com/merchants/answer/6324436). + CategoryL2 string `json:"categoryL2,omitempty"` + + // CategoryL3: Third level of the product category in Google's product + // taxonomy (https://support.google.com/merchants/answer/6324436). + CategoryL3 string `json:"categoryL3,omitempty"` + + // CategoryL4: Fourth level of the product category in Google's product + // taxonomy (https://support.google.com/merchants/answer/6324436). + CategoryL4 string `json:"categoryL4,omitempty"` + + // CategoryL5: Fifth level of the product category in Google's product + // taxonomy (https://support.google.com/merchants/answer/6324436). + CategoryL5 string `json:"categoryL5,omitempty"` + // Channel: Channel of the product (online versus local). // // Possible values: @@ -13663,11 +13704,37 @@ type ProductView struct { // OfferId: Merchant-provided id of the product. OfferId string `json:"offerId,omitempty"` - // PriceMicros: Product price specified as micros in the product - // currency. Absent in case the information about the price of the - // product is not available. + // PriceMicros: Product price specified as micros (1 millionth of a + // standard unit, 1 USD = 1000000 micros) in the product currency. + // Absent in case the information about the price of the product is not + // available. PriceMicros int64 `json:"priceMicros,omitempty,string"` + // ProductTypeL1: First level of the product type in merchant's own + // product taxonomy + // (https://support.google.com/merchants/answer/6324436). + ProductTypeL1 string `json:"productTypeL1,omitempty"` + + // ProductTypeL2: Second level of the product type in merchant's own + // product taxonomy + // (https://support.google.com/merchants/answer/6324436). + ProductTypeL2 string `json:"productTypeL2,omitempty"` + + // ProductTypeL3: Third level of the product type in merchant's own + // product taxonomy + // (https://support.google.com/merchants/answer/6324436). + ProductTypeL3 string `json:"productTypeL3,omitempty"` + + // ProductTypeL4: Fourth level of the product type in merchant's own + // product taxonomy + // (https://support.google.com/merchants/answer/6324436). + ProductTypeL4 string `json:"productTypeL4,omitempty"` + + // ProductTypeL5: Fifth level of the product type in merchant's own + // product taxonomy + // (https://support.google.com/merchants/answer/6324436). + ProductTypeL5 string `json:"productTypeL5,omitempty"` + // ShippingLabel: The normalized shipping label specified in the feed ShippingLabel string `json:"shippingLabel,omitempty"` @@ -39354,7 +39421,7 @@ type QuotasListCall struct { header_ http.Header } -// List: Lists the quota limit and quota usage per method for your +// List: Lists the daily call quota and usage per method for your // Merchant Center account. // // - merchantId: The ID of the account that has quota. This account must @@ -39480,7 +39547,7 @@ func (c *QuotasListCall) Do(opts ...googleapi.CallOption) (*ListMethodQuotasResp } return ret, nil // { - // "description": "Lists the quota limit and quota usage per method for your Merchant Center account.", + // "description": "Lists the daily call quota and usage per method for your Merchant Center account.", // "flatPath": "{merchantId}/quotas", // "httpMethod": "GET", // "id": "content.quotas.list", diff --git a/discoveryengine/v1alpha/discoveryengine-api.json b/discoveryengine/v1alpha/discoveryengine-api.json index 5359c594470..741e72c0380 100644 --- a/discoveryengine/v1alpha/discoveryengine-api.json +++ b/discoveryengine/v1alpha/discoveryengine-api.json @@ -793,7 +793,7 @@ } } }, - "revision": "20221107", + "revision": "20221130", "rootUrl": "https://discoveryengine.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -955,7 +955,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1alphaGcsSource": { - "description": "Google Cloud Storage location for input content. format.", + "description": "Cloud Storage location for input content.", "id": "GoogleCloudDiscoveryengineV1alphaGcsSource", "properties": { "dataSchema": { @@ -963,7 +963,7 @@ "type": "string" }, "inputUris": { - "description": "Required. Google Cloud Storage URIs to input files. URI can be up to 2000 characters long. URIs can match the full object path (for example, `gs://bucket/directory/object.json`) or a pattern matching one or more files, such as `gs://bucket/directory/*.json`. A request can contain at most 100 files, and each file can be up to 2 GB.", + "description": "Required. Cloud Storage URIs to input files. URI can be up to 2000 characters long. URIs can match the full object path (for example, `gs://bucket/directory/object.json`) or a pattern matching one or more files, such as `gs://bucket/directory/*.json`. A request can contain at most 100 files, and each file can be up to 2 GB.", "items": { "type": "string" }, @@ -1013,7 +1013,7 @@ }, "gcsSource": { "$ref": "GoogleCloudDiscoveryengineV1alphaGcsSource", - "description": "Google Cloud Storage location for the input content." + "description": "Cloud Storage location for the input content." }, "inlineSource": { "$ref": "GoogleCloudDiscoveryengineV1alphaImportDocumentsRequestInlineSource", @@ -1073,7 +1073,7 @@ "id": "GoogleCloudDiscoveryengineV1alphaImportErrorConfig", "properties": { "gcsPrefix": { - "description": "Google Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors will be written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", + "description": "Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors will be written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", "type": "string" } }, @@ -1120,7 +1120,7 @@ }, "gcsSource": { "$ref": "GoogleCloudDiscoveryengineV1alphaGcsSource", - "description": "Required. Google Cloud Storage location for the input content." + "description": "Required. Cloud Storage location for the input content." }, "inlineSource": { "$ref": "GoogleCloudDiscoveryengineV1alphaImportUserEventsRequestInlineSource", @@ -1555,7 +1555,7 @@ "id": "GoogleCloudDiscoveryengineV1betaImportErrorConfig", "properties": { "gcsPrefix": { - "description": "Google Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors will be written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", + "description": "Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors will be written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", "type": "string" } }, diff --git a/discoveryengine/v1alpha/discoveryengine-gen.go b/discoveryengine/v1alpha/discoveryengine-gen.go index 0218cf4f83c..f53b521af5d 100644 --- a/discoveryengine/v1alpha/discoveryengine-gen.go +++ b/discoveryengine/v1alpha/discoveryengine-gen.go @@ -582,8 +582,8 @@ func (s *GoogleCloudDiscoveryengineV1alphaDocumentInfo) MarshalJSON() ([]byte, e return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleCloudDiscoveryengineV1alphaGcsSource: Google Cloud Storage -// location for input content. format. +// GoogleCloudDiscoveryengineV1alphaGcsSource: Cloud Storage location +// for input content. type GoogleCloudDiscoveryengineV1alphaGcsSource struct { // DataSchema: The schema to use when parsing the data from the source. // Supported values for imports: * `user_event` (default): One JSON @@ -591,12 +591,11 @@ type GoogleCloudDiscoveryengineV1alphaGcsSource struct { // line. Each document must have a valid Document.id. DataSchema string `json:"dataSchema,omitempty"` - // InputUris: Required. Google Cloud Storage URIs to input files. URI - // can be up to 2000 characters long. URIs can match the full object - // path (for example, `gs://bucket/directory/object.json`) or a pattern - // matching one or more files, such as `gs://bucket/directory/*.json`. A - // request can contain at most 100 files, and each file can be up to 2 - // GB. + // InputUris: Required. Cloud Storage URIs to input files. URI can be up + // to 2000 characters long. URIs can match the full object path (for + // example, `gs://bucket/directory/object.json`) or a pattern matching + // one or more files, such as `gs://bucket/directory/*.json`. A request + // can contain at most 100 files, and each file can be up to 2 GB. InputUris []string `json:"inputUris,omitempty"` // ForceSendFields is a list of field names (e.g. "DataSchema") to @@ -673,7 +672,7 @@ type GoogleCloudDiscoveryengineV1alphaImportDocumentsRequest struct { // Import. ErrorConfig *GoogleCloudDiscoveryengineV1alphaImportErrorConfig `json:"errorConfig,omitempty"` - // GcsSource: Google Cloud Storage location for the input content. + // GcsSource: Cloud Storage location for the input content. GcsSource *GoogleCloudDiscoveryengineV1alphaGcsSource `json:"gcsSource,omitempty"` // InlineSource: The Inline source for the input content for documents. @@ -786,8 +785,8 @@ func (s *GoogleCloudDiscoveryengineV1alphaImportDocumentsResponse) MarshalJSON() // GoogleCloudDiscoveryengineV1alphaImportErrorConfig: Configuration of // destination for Import related errors. type GoogleCloudDiscoveryengineV1alphaImportErrorConfig struct { - // GcsPrefix: Google Cloud Storage prefix for import errors. This must - // be an empty, existing Cloud Storage directory. Import errors will be + // GcsPrefix: Cloud Storage prefix for import errors. This must be an + // empty, existing Cloud Storage directory. Import errors will be // written to sharded files in this directory, one per line, as a // JSON-encoded `google.rpc.Status` message. GcsPrefix string `json:"gcsPrefix,omitempty"` @@ -866,8 +865,7 @@ type GoogleCloudDiscoveryengineV1alphaImportUserEventsRequest struct { // Import. Cannot be set for inline user event imports. ErrorConfig *GoogleCloudDiscoveryengineV1alphaImportErrorConfig `json:"errorConfig,omitempty"` - // GcsSource: Required. Google Cloud Storage location for the input - // content. + // GcsSource: Required. Cloud Storage location for the input content. GcsSource *GoogleCloudDiscoveryengineV1alphaGcsSource `json:"gcsSource,omitempty"` // InlineSource: Required. The Inline source for the input content for @@ -1773,8 +1771,8 @@ func (s *GoogleCloudDiscoveryengineV1betaImportDocumentsResponse) MarshalJSON() // GoogleCloudDiscoveryengineV1betaImportErrorConfig: Configuration of // destination for Import related errors. type GoogleCloudDiscoveryengineV1betaImportErrorConfig struct { - // GcsPrefix: Google Cloud Storage prefix for import errors. This must - // be an empty, existing Cloud Storage directory. Import errors will be + // GcsPrefix: Cloud Storage prefix for import errors. This must be an + // empty, existing Cloud Storage directory. Import errors will be // written to sharded files in this directory, one per line, as a // JSON-encoded `google.rpc.Status` message. GcsPrefix string `json:"gcsPrefix,omitempty"` diff --git a/discoveryengine/v1beta/discoveryengine-api.json b/discoveryengine/v1beta/discoveryengine-api.json index 1d30032ed82..ca7a16adf52 100644 --- a/discoveryengine/v1beta/discoveryengine-api.json +++ b/discoveryengine/v1beta/discoveryengine-api.json @@ -793,7 +793,7 @@ } } }, - "revision": "20221107", + "revision": "20221130", "rootUrl": "https://discoveryengine.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -873,7 +873,7 @@ "id": "GoogleCloudDiscoveryengineV1alphaImportErrorConfig", "properties": { "gcsPrefix": { - "description": "Google Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors will be written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", + "description": "Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors will be written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", "type": "string" } }, @@ -1066,7 +1066,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1betaGcsSource": { - "description": "Google Cloud Storage location for input content. format.", + "description": "Cloud Storage location for input content.", "id": "GoogleCloudDiscoveryengineV1betaGcsSource", "properties": { "dataSchema": { @@ -1074,7 +1074,7 @@ "type": "string" }, "inputUris": { - "description": "Required. Google Cloud Storage URIs to input files. URI can be up to 2000 characters long. URIs can match the full object path (for example, `gs://bucket/directory/object.json`) or a pattern matching one or more files, such as `gs://bucket/directory/*.json`. A request can contain at most 100 files, and each file can be up to 2 GB.", + "description": "Required. Cloud Storage URIs to input files. URI can be up to 2000 characters long. URIs can match the full object path (for example, `gs://bucket/directory/object.json`) or a pattern matching one or more files, such as `gs://bucket/directory/*.json`. A request can contain at most 100 files, and each file can be up to 2 GB.", "items": { "type": "string" }, @@ -1124,7 +1124,7 @@ }, "gcsSource": { "$ref": "GoogleCloudDiscoveryengineV1betaGcsSource", - "description": "Google Cloud Storage location for the input content." + "description": "Cloud Storage location for the input content." }, "inlineSource": { "$ref": "GoogleCloudDiscoveryengineV1betaImportDocumentsRequestInlineSource", @@ -1184,7 +1184,7 @@ "id": "GoogleCloudDiscoveryengineV1betaImportErrorConfig", "properties": { "gcsPrefix": { - "description": "Google Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors will be written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", + "description": "Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors will be written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", "type": "string" } }, @@ -1231,7 +1231,7 @@ }, "gcsSource": { "$ref": "GoogleCloudDiscoveryengineV1betaGcsSource", - "description": "Required. Google Cloud Storage location for the input content." + "description": "Required. Cloud Storage location for the input content." }, "inlineSource": { "$ref": "GoogleCloudDiscoveryengineV1betaImportUserEventsRequestInlineSource", diff --git a/discoveryengine/v1beta/discoveryengine-gen.go b/discoveryengine/v1beta/discoveryengine-gen.go index 709c9561125..2c5e198be41 100644 --- a/discoveryengine/v1beta/discoveryengine-gen.go +++ b/discoveryengine/v1beta/discoveryengine-gen.go @@ -428,8 +428,8 @@ func (s *GoogleCloudDiscoveryengineV1alphaImportDocumentsResponse) MarshalJSON() // GoogleCloudDiscoveryengineV1alphaImportErrorConfig: Configuration of // destination for Import related errors. type GoogleCloudDiscoveryengineV1alphaImportErrorConfig struct { - // GcsPrefix: Google Cloud Storage prefix for import errors. This must - // be an empty, existing Cloud Storage directory. Import errors will be + // GcsPrefix: Cloud Storage prefix for import errors. This must be an + // empty, existing Cloud Storage directory. Import errors will be // written to sharded files in this directory, one per line, as a // JSON-encoded `google.rpc.Status` message. GcsPrefix string `json:"gcsPrefix,omitempty"` @@ -778,8 +778,8 @@ func (s *GoogleCloudDiscoveryengineV1betaDocumentInfo) MarshalJSON() ([]byte, er return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleCloudDiscoveryengineV1betaGcsSource: Google Cloud Storage -// location for input content. format. +// GoogleCloudDiscoveryengineV1betaGcsSource: Cloud Storage location for +// input content. type GoogleCloudDiscoveryengineV1betaGcsSource struct { // DataSchema: The schema to use when parsing the data from the source. // Supported values for imports: * `user_event` (default): One JSON @@ -787,12 +787,11 @@ type GoogleCloudDiscoveryengineV1betaGcsSource struct { // line. Each document must have a valid Document.id. DataSchema string `json:"dataSchema,omitempty"` - // InputUris: Required. Google Cloud Storage URIs to input files. URI - // can be up to 2000 characters long. URIs can match the full object - // path (for example, `gs://bucket/directory/object.json`) or a pattern - // matching one or more files, such as `gs://bucket/directory/*.json`. A - // request can contain at most 100 files, and each file can be up to 2 - // GB. + // InputUris: Required. Cloud Storage URIs to input files. URI can be up + // to 2000 characters long. URIs can match the full object path (for + // example, `gs://bucket/directory/object.json`) or a pattern matching + // one or more files, such as `gs://bucket/directory/*.json`. A request + // can contain at most 100 files, and each file can be up to 2 GB. InputUris []string `json:"inputUris,omitempty"` // ForceSendFields is a list of field names (e.g. "DataSchema") to @@ -869,7 +868,7 @@ type GoogleCloudDiscoveryengineV1betaImportDocumentsRequest struct { // Import. ErrorConfig *GoogleCloudDiscoveryengineV1betaImportErrorConfig `json:"errorConfig,omitempty"` - // GcsSource: Google Cloud Storage location for the input content. + // GcsSource: Cloud Storage location for the input content. GcsSource *GoogleCloudDiscoveryengineV1betaGcsSource `json:"gcsSource,omitempty"` // InlineSource: The Inline source for the input content for documents. @@ -982,8 +981,8 @@ func (s *GoogleCloudDiscoveryengineV1betaImportDocumentsResponse) MarshalJSON() // GoogleCloudDiscoveryengineV1betaImportErrorConfig: Configuration of // destination for Import related errors. type GoogleCloudDiscoveryengineV1betaImportErrorConfig struct { - // GcsPrefix: Google Cloud Storage prefix for import errors. This must - // be an empty, existing Cloud Storage directory. Import errors will be + // GcsPrefix: Cloud Storage prefix for import errors. This must be an + // empty, existing Cloud Storage directory. Import errors will be // written to sharded files in this directory, one per line, as a // JSON-encoded `google.rpc.Status` message. GcsPrefix string `json:"gcsPrefix,omitempty"` @@ -1062,8 +1061,7 @@ type GoogleCloudDiscoveryengineV1betaImportUserEventsRequest struct { // Import. Cannot be set for inline user event imports. ErrorConfig *GoogleCloudDiscoveryengineV1betaImportErrorConfig `json:"errorConfig,omitempty"` - // GcsSource: Required. Google Cloud Storage location for the input - // content. + // GcsSource: Required. Cloud Storage location for the input content. GcsSource *GoogleCloudDiscoveryengineV1betaGcsSource `json:"gcsSource,omitempty"` // InlineSource: Required. The Inline source for the input content for diff --git a/displayvideo/v2/displayvideo-api.json b/displayvideo/v2/displayvideo-api.json index 7c7e9f07835..28855d2be39 100644 --- a/displayvideo/v2/displayvideo-api.json +++ b/displayvideo/v2/displayvideo-api.json @@ -2641,16 +2641,19 @@ "httpMethod": "POST", "id": "displayvideo.advertisers.lineItems.bulkUpdate", "parameterOrder": [ - "advertisersId" + "advertiserId" ], "parameters": { - "advertisersId": { + "advertiserId": { + "description": "Required. The ID of the advertiser this line item belongs to.", + "format": "int64", "location": "path", + "pattern": "^[^/]+$", "required": true, "type": "string" } }, - "path": "v2/advertisers/{advertisersId}/lineItems:bulkUpdate", + "path": "v2/advertisers/{+advertiserId}/lineItems:bulkUpdate", "request": { "$ref": "BulkUpdateLineItemsRequest" }, @@ -8488,7 +8491,7 @@ } } }, - "revision": "20221110", + "revision": "20221201", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActivateManualTriggerRequest": { @@ -9160,6 +9163,11 @@ "readOnly": true, "type": "string" }, + "assignedTargetingOptionIdAlias": { + "description": "Output only. An alias for the assigned targeting option id field. This field is only supported for targeting types with enum targeting enabled. This value can be used in place of the assignedTargetingOptionId required for GET and DELETE targeting methods. An alias for the assignedTargetingOptionId. This value can be used in place of `assignedTargetingOptionId` when retrieving or deleting existing targeting. This field will only be supported for assigned targeting options of the following targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", + "readOnly": true, + "type": "string" + }, "audienceGroupDetails": { "$ref": "AudienceGroupAssignedTargetingOptionDetails", "description": "Audience targeting details. This field will be populated when the targeting_type is `TARGETING_TYPE_AUDIENCE_GROUP`. You can only target one audience group option per resource." diff --git a/displayvideo/v2/displayvideo-gen.go b/displayvideo/v2/displayvideo-gen.go index 66c197729b6..5aab1fb0e36 100644 --- a/displayvideo/v2/displayvideo-gen.go +++ b/displayvideo/v2/displayvideo-gen.go @@ -1768,6 +1768,27 @@ type AssignedTargetingOption struct { // targeting type. It may be reused in other contexts. AssignedTargetingOptionId string `json:"assignedTargetingOptionId,omitempty"` + // AssignedTargetingOptionIdAlias: Output only. An alias for the + // assigned targeting option id field. This field is only supported for + // targeting types with enum targeting enabled. This value can be used + // in place of the assignedTargetingOptionId required for GET and DELETE + // targeting methods. An alias for the assignedTargetingOptionId. This + // value can be used in place of `assignedTargetingOptionId` when + // retrieving or deleting existing targeting. This field will only be + // supported for assigned targeting options of the following targeting + // types: * `TARGETING_TYPE_AGE_RANGE` * + // `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * + // `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * + // `TARGETING_TYPE_DEVICE_TYPE` * + // `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * + // `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * + // `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * + // `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` * + // `TARGETING_TYPE_PARENTAL_STATUS` * + // `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * + // `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + AssignedTargetingOptionIdAlias string `json:"assignedTargetingOptionIdAlias,omitempty"` + // AudienceGroupDetails: Audience targeting details. This field will be // populated when the targeting_type is `TARGETING_TYPE_AUDIENCE_GROUP`. // You can only target one audience group option per resource. @@ -26010,7 +26031,7 @@ func (c *AdvertisersLineItemsBulkListAssignedTargetingOptionsCall) Pages(ctx con type AdvertisersLineItemsBulkUpdateCall struct { s *Service - advertisersId string + advertiserId int64 bulkupdatelineitemsrequest *BulkUpdateLineItemsRequest urlParams_ gensupport.URLParams ctx_ context.Context @@ -26023,10 +26044,10 @@ type AdvertisersLineItemsBulkUpdateCall struct { // CreateLineItemAssignedTargetingOption * // DeleteLineItemAssignedTargetingOption // -// - advertisersId: . -func (r *AdvertisersLineItemsService) BulkUpdate(advertisersId string, bulkupdatelineitemsrequest *BulkUpdateLineItemsRequest) *AdvertisersLineItemsBulkUpdateCall { +// - advertiserId: The ID of the advertiser this line item belongs to. +func (r *AdvertisersLineItemsService) BulkUpdate(advertiserId int64, bulkupdatelineitemsrequest *BulkUpdateLineItemsRequest) *AdvertisersLineItemsBulkUpdateCall { c := &AdvertisersLineItemsBulkUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.advertisersId = advertisersId + c.advertiserId = advertiserId c.bulkupdatelineitemsrequest = bulkupdatelineitemsrequest return c } @@ -26071,7 +26092,7 @@ func (c *AdvertisersLineItemsBulkUpdateCall) doRequest(alt string) (*http.Respon reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v2/advertisers/{advertisersId}/lineItems:bulkUpdate") + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/advertisers/{+advertiserId}/lineItems:bulkUpdate") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { @@ -26079,7 +26100,7 @@ func (c *AdvertisersLineItemsBulkUpdateCall) doRequest(alt string) (*http.Respon } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "advertisersId": c.advertisersId, + "advertiserId": strconv.FormatInt(c.advertiserId, 10), }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } @@ -26127,16 +26148,19 @@ func (c *AdvertisersLineItemsBulkUpdateCall) Do(opts ...googleapi.CallOption) (* // "httpMethod": "POST", // "id": "displayvideo.advertisers.lineItems.bulkUpdate", // "parameterOrder": [ - // "advertisersId" + // "advertiserId" // ], // "parameters": { - // "advertisersId": { + // "advertiserId": { + // "description": "Required. The ID of the advertiser this line item belongs to.", + // "format": "int64", // "location": "path", + // "pattern": "^[^/]+$", // "required": true, // "type": "string" // } // }, - // "path": "v2/advertisers/{advertisersId}/lineItems:bulkUpdate", + // "path": "v2/advertisers/{+advertiserId}/lineItems:bulkUpdate", // "request": { // "$ref": "BulkUpdateLineItemsRequest" // }, diff --git a/gamesconfiguration/v1configuration/gamesconfiguration-api.json b/gamesconfiguration/v1configuration/gamesconfiguration-api.json index d9db61144a3..561ebd148bf 100644 --- a/gamesconfiguration/v1configuration/gamesconfiguration-api.json +++ b/gamesconfiguration/v1configuration/gamesconfiguration-api.json @@ -242,64 +242,6 @@ } } }, - "imageConfigurations": { - "methods": { - "upload": { - "description": "Uploads an image for a resource with the given ID and image type.", - "flatPath": "games/v1configuration/images/{resourceId}/imageType/{imageType}", - "httpMethod": "POST", - "id": "gamesConfiguration.imageConfigurations.upload", - "mediaUpload": { - "accept": [ - "image/*" - ], - "maxSize": "15728640", - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/games/v1configuration/images/{resourceId}/imageType/{imageType}" - } - } - }, - "parameterOrder": [ - "resourceId", - "imageType" - ], - "parameters": { - "imageType": { - "description": "Selects which image in a resource for this method.", - "enum": [ - "IMAGE_TYPE_UNSPECIFIED", - "ACHIEVEMENT_ICON", - "LEADERBOARD_ICON" - ], - "enumDescriptions": [ - "Default value. This value is unused.", - "The icon image for an achievement resource.", - "The icon image for a leaderboard resource." - ], - "location": "path", - "required": true, - "type": "string" - }, - "resourceId": { - "description": "The ID of the resource used by this method.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "games/v1configuration/images/{resourceId}/imageType/{imageType}", - "response": { - "$ref": "ImageConfiguration" - }, - "scopes": [ - "https://www.googleapis.com/auth/androidpublisher" - ], - "supportsMediaUpload": true - } - } - }, "leaderboardConfigurations": { "methods": { "delete": { @@ -439,7 +381,7 @@ } } }, - "revision": "20200811", + "revision": "20221201", "rootUrl": "https://gamesconfiguration.googleapis.com/", "schemas": { "AchievementConfiguration": { @@ -624,39 +566,6 @@ }, "type": "object" }, - "ImageConfiguration": { - "description": "An image configuration resource.", - "id": "ImageConfiguration", - "properties": { - "imageType": { - "description": "The image type for the image.", - "enum": [ - "IMAGE_TYPE_UNSPECIFIED", - "ACHIEVEMENT_ICON", - "LEADERBOARD_ICON" - ], - "enumDescriptions": [ - "Default value. This value is unused.", - "The icon image for an achievement resource.", - "The icon image for a leaderboard resource." - ], - "type": "string" - }, - "kind": { - "description": "Uniquely identifies the type of this resource. Value is always the fixed string `gamesConfiguration#imageConfiguration`.", - "type": "string" - }, - "resourceId": { - "description": "The resource ID of resource which the image belongs to.", - "type": "string" - }, - "url": { - "description": "The url for this image.", - "type": "string" - } - }, - "type": "object" - }, "LeaderboardConfiguration": { "description": "An leaderboard configuration resource.", "id": "LeaderboardConfiguration", diff --git a/gamesconfiguration/v1configuration/gamesconfiguration-gen.go b/gamesconfiguration/v1configuration/gamesconfiguration-gen.go index f222550baee..d4361e11143 100644 --- a/gamesconfiguration/v1configuration/gamesconfiguration-gen.go +++ b/gamesconfiguration/v1configuration/gamesconfiguration-gen.go @@ -118,7 +118,6 @@ func New(client *http.Client) (*Service, error) { } s := &Service{client: client, BasePath: basePath} s.AchievementConfigurations = NewAchievementConfigurationsService(s) - s.ImageConfigurations = NewImageConfigurationsService(s) s.LeaderboardConfigurations = NewLeaderboardConfigurationsService(s) return s, nil } @@ -130,8 +129,6 @@ type Service struct { AchievementConfigurations *AchievementConfigurationsService - ImageConfigurations *ImageConfigurationsService - LeaderboardConfigurations *LeaderboardConfigurationsService } @@ -151,15 +148,6 @@ type AchievementConfigurationsService struct { s *Service } -func NewImageConfigurationsService(s *Service) *ImageConfigurationsService { - rs := &ImageConfigurationsService{s: s} - return rs -} - -type ImageConfigurationsService struct { - s *Service -} - func NewLeaderboardConfigurationsService(s *Service) *LeaderboardConfigurationsService { rs := &LeaderboardConfigurationsService{s: s} return rs @@ -424,53 +412,6 @@ func (s *GamesNumberFormatConfiguration) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// ImageConfiguration: An image configuration resource. -type ImageConfiguration struct { - // ImageType: The image type for the image. - // - // Possible values: - // "IMAGE_TYPE_UNSPECIFIED" - Default value. This value is unused. - // "ACHIEVEMENT_ICON" - The icon image for an achievement resource. - // "LEADERBOARD_ICON" - The icon image for a leaderboard resource. - ImageType string `json:"imageType,omitempty"` - - // Kind: Uniquely identifies the type of this resource. Value is always - // the fixed string `gamesConfiguration#imageConfiguration`. - Kind string `json:"kind,omitempty"` - - // ResourceId: The resource ID of resource which the image belongs to. - ResourceId string `json:"resourceId,omitempty"` - - // Url: The url for this image. - Url string `json:"url,omitempty"` - - // ServerResponse contains the HTTP response code and headers from the - // server. - googleapi.ServerResponse `json:"-"` - - // ForceSendFields is a list of field names (e.g. "ImageType") 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. "ImageType") 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 *ImageConfiguration) MarshalJSON() ([]byte, error) { - type NoMethod ImageConfiguration - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // LeaderboardConfiguration: An leaderboard configuration resource. type LeaderboardConfiguration struct { // Draft: The draft data of the leaderboard. @@ -1407,240 +1348,6 @@ func (c *AchievementConfigurationsUpdateCall) Do(opts ...googleapi.CallOption) ( } -// method id "gamesConfiguration.imageConfigurations.upload": - -type ImageConfigurationsUploadCall struct { - s *Service - resourceId string - imageType string - urlParams_ gensupport.URLParams - mediaInfo_ *gensupport.MediaInfo - ctx_ context.Context - header_ http.Header -} - -// Upload: Uploads an image for a resource with the given ID and image -// type. -// -// - imageType: Selects which image in a resource for this method. -// - resourceId: The ID of the resource used by this method. -func (r *ImageConfigurationsService) Upload(resourceId string, imageType string) *ImageConfigurationsUploadCall { - c := &ImageConfigurationsUploadCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.resourceId = resourceId - c.imageType = imageType - return c -} - -// Media specifies the media to upload in one or more chunks. The chunk -// size may be controlled by supplying a MediaOption generated by -// googleapi.ChunkSize. The chunk size defaults to -// googleapi.DefaultUploadChunkSize.The Content-Type header used in the -// upload request will be determined by sniffing the contents of r, -// unless a MediaOption generated by googleapi.ContentType is -// supplied. -// At most one of Media and ResumableMedia may be set. -func (c *ImageConfigurationsUploadCall) Media(r io.Reader, options ...googleapi.MediaOption) *ImageConfigurationsUploadCall { - c.mediaInfo_ = gensupport.NewInfoFromMedia(r, options) - return c -} - -// ResumableMedia specifies the media to upload in chunks and can be -// canceled with ctx. -// -// Deprecated: use Media instead. -// -// At most one of Media and ResumableMedia may be set. mediaType -// identifies the MIME media type of the upload, such as "image/png". If -// mediaType is "", it will be auto-detected. The provided ctx will -// supersede any context previously provided to the Context method. -func (c *ImageConfigurationsUploadCall) ResumableMedia(ctx context.Context, r io.ReaderAt, size int64, mediaType string) *ImageConfigurationsUploadCall { - c.ctx_ = ctx - c.mediaInfo_ = gensupport.NewInfoFromResumableMedia(r, size, mediaType) - return c -} - -// ProgressUpdater provides a callback function that will be called -// after every chunk. It should be a low-latency function in order to -// not slow down the upload operation. This should only be called when -// using ResumableMedia (as opposed to Media). -func (c *ImageConfigurationsUploadCall) ProgressUpdater(pu googleapi.ProgressUpdater) *ImageConfigurationsUploadCall { - c.mediaInfo_.SetProgressUpdater(pu) - 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 *ImageConfigurationsUploadCall) Fields(s ...googleapi.Field) *ImageConfigurationsUploadCall { - 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. -// This context will supersede any context previously provided to the -// ResumableMedia method. -func (c *ImageConfigurationsUploadCall) Context(ctx context.Context) *ImageConfigurationsUploadCall { - 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 *ImageConfigurationsUploadCall) Header() http.Header { - if c.header_ == nil { - c.header_ = make(http.Header) - } - return c.header_ -} - -func (c *ImageConfigurationsUploadCall) 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, "games/v1configuration/images/{resourceId}/imageType/{imageType}") - if c.mediaInfo_ != nil { - urls = googleapi.ResolveRelative(c.s.BasePath, "/upload/games/v1configuration/images/{resourceId}/imageType/{imageType}") - c.urlParams_.Set("uploadType", c.mediaInfo_.UploadType()) - } - if body == nil { - body = new(bytes.Buffer) - reqHeaders.Set("Content-Type", "application/json") - } - body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) - defer cleanup() - urls += "?" + c.urlParams_.Encode() - req, err := http.NewRequest("POST", urls, body) - if err != nil { - return nil, err - } - req.Header = reqHeaders - req.GetBody = getBody - googleapi.Expand(req.URL, map[string]string{ - "resourceId": c.resourceId, - "imageType": c.imageType, - }) - return gensupport.SendRequest(c.ctx_, c.s.client, req) -} - -// Do executes the "gamesConfiguration.imageConfigurations.upload" call. -// Exactly one of *ImageConfiguration or error will be non-nil. Any -// non-2xx status code is an error. Response headers are in either -// *ImageConfiguration.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 *ImageConfigurationsUploadCall) Do(opts ...googleapi.CallOption) (*ImageConfiguration, 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) - } - rx := c.mediaInfo_.ResumableUpload(res.Header.Get("Location")) - if rx != nil { - rx.Client = c.s.client - rx.UserAgent = c.s.userAgent() - ctx := c.ctx_ - if ctx == nil { - ctx = context.TODO() - } - res, err = rx.Upload(ctx) - if err != nil { - return nil, err - } - defer res.Body.Close() - if err := googleapi.CheckResponse(res); err != nil { - return nil, gensupport.WrapError(err) - } - } - ret := &ImageConfiguration{ - 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": "Uploads an image for a resource with the given ID and image type.", - // "flatPath": "games/v1configuration/images/{resourceId}/imageType/{imageType}", - // "httpMethod": "POST", - // "id": "gamesConfiguration.imageConfigurations.upload", - // "mediaUpload": { - // "accept": [ - // "image/*" - // ], - // "maxSize": "15728640", - // "protocols": { - // "simple": { - // "multipart": true, - // "path": "/upload/games/v1configuration/images/{resourceId}/imageType/{imageType}" - // } - // } - // }, - // "parameterOrder": [ - // "resourceId", - // "imageType" - // ], - // "parameters": { - // "imageType": { - // "description": "Selects which image in a resource for this method.", - // "enum": [ - // "IMAGE_TYPE_UNSPECIFIED", - // "ACHIEVEMENT_ICON", - // "LEADERBOARD_ICON" - // ], - // "enumDescriptions": [ - // "Default value. This value is unused.", - // "The icon image for an achievement resource.", - // "The icon image for a leaderboard resource." - // ], - // "location": "path", - // "required": true, - // "type": "string" - // }, - // "resourceId": { - // "description": "The ID of the resource used by this method.", - // "location": "path", - // "required": true, - // "type": "string" - // } - // }, - // "path": "games/v1configuration/images/{resourceId}/imageType/{imageType}", - // "response": { - // "$ref": "ImageConfiguration" - // }, - // "scopes": [ - // "https://www.googleapis.com/auth/androidpublisher" - // ], - // "supportsMediaUpload": true - // } - -} - // method id "gamesConfiguration.leaderboardConfigurations.delete": type LeaderboardConfigurationsDeleteCall struct { diff --git a/integrations/v1alpha/integrations-api.json b/integrations/v1alpha/integrations-api.json index bc09deef73e..ae88e37ab82 100644 --- a/integrations/v1alpha/integrations-api.json +++ b/integrations/v1alpha/integrations-api.json @@ -798,7 +798,7 @@ "executions": { "methods": { "list": { - "description": "Lists the status of the integration executions.", + "description": "Lists the results of all the integration executions. The response includes the same information as the [execution log](https://cloud.google.com/application-integration/docs/viewing-logs) in the Integration UI.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/integrations/{integrationsId}/executions", "httpMethod": "GET", "id": "integrations.projects.locations.integrations.executions.list", @@ -1846,7 +1846,7 @@ ] }, "list": { - "description": "Lists the status of the integration executions.", + "description": "Lists the results of all the integration executions. The response includes the same information as the [execution log](https://cloud.google.com/application-integration/docs/viewing-logs) in the Integration UI.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/products/{productsId}/integrations/{integrationsId}/executions", "httpMethod": "GET", "id": "integrations.projects.locations.products.integrations.executions.list", @@ -3308,7 +3308,7 @@ } } }, - "revision": "20221025", + "revision": "20221122", "rootUrl": "https://integrations.googleapis.com/", "schemas": { "CrmlogErrorCode": { @@ -8803,7 +8803,7 @@ "type": "string" }, "triggerId": { - "description": "Optional. Matched against all {@link TriggerConfig}s across all integrations. i.e. TriggerConfig.trigger_id.equals(trigger_id)", + "description": "Required. Matched against all {@link TriggerConfig}s across all integrations. i.e. TriggerConfig.trigger_id.equals(trigger_id). The trigger_id is in the format of `api_trigger/TRIGGER_NAME`.", "type": "string" } }, diff --git a/integrations/v1alpha/integrations-gen.go b/integrations/v1alpha/integrations-gen.go index f5bbe8735ae..6f7ed31dfa8 100644 --- a/integrations/v1alpha/integrations-gen.go +++ b/integrations/v1alpha/integrations-gen.go @@ -7902,9 +7902,10 @@ type GoogleCloudIntegrationsV1alphaExecuteIntegrationsRequest struct { // execution is returned. RequestId string `json:"requestId,omitempty"` - // TriggerId: Optional. Matched against all {@link TriggerConfig}s + // TriggerId: Required. Matched against all {@link TriggerConfig}s // across all integrations. i.e. - // TriggerConfig.trigger_id.equals(trigger_id) + // TriggerConfig.trigger_id.equals(trigger_id). The trigger_id is in the + // format of `api_trigger/TRIGGER_NAME`. TriggerId string `json:"triggerId,omitempty"` // ForceSendFields is a list of field names (e.g. "DoNotPropagateError") @@ -14980,7 +14981,10 @@ type ProjectsLocationsIntegrationsExecutionsListCall struct { header_ http.Header } -// List: Lists the status of the integration executions. +// List: Lists the results of all the integration executions. The +// response includes the same information as the execution log +// (https://cloud.google.com/application-integration/docs/viewing-logs) +// in the Integration UI. // // - parent: The parent resource name of the integration execution. func (r *ProjectsLocationsIntegrationsExecutionsService) List(parent string) *ProjectsLocationsIntegrationsExecutionsListCall { @@ -15240,7 +15244,7 @@ func (c *ProjectsLocationsIntegrationsExecutionsListCall) Do(opts ...googleapi.C } return ret, nil // { - // "description": "Lists the status of the integration executions.", + // "description": "Lists the results of all the integration executions. The response includes the same information as the [execution log](https://cloud.google.com/application-integration/docs/viewing-logs) in the Integration UI.", // "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/integrations/{integrationsId}/executions", // "httpMethod": "GET", // "id": "integrations.projects.locations.integrations.executions.list", @@ -20066,7 +20070,10 @@ type ProjectsLocationsProductsIntegrationsExecutionsListCall struct { header_ http.Header } -// List: Lists the status of the integration executions. +// List: Lists the results of all the integration executions. The +// response includes the same information as the execution log +// (https://cloud.google.com/application-integration/docs/viewing-logs) +// in the Integration UI. // // - parent: The parent resource name of the integration execution. func (r *ProjectsLocationsProductsIntegrationsExecutionsService) List(parent string) *ProjectsLocationsProductsIntegrationsExecutionsListCall { @@ -20326,7 +20333,7 @@ func (c *ProjectsLocationsProductsIntegrationsExecutionsListCall) Do(opts ...goo } return ret, nil // { - // "description": "Lists the status of the integration executions.", + // "description": "Lists the results of all the integration executions. The response includes the same information as the [execution log](https://cloud.google.com/application-integration/docs/viewing-logs) in the Integration UI.", // "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/products/{productsId}/integrations/{integrationsId}/executions", // "httpMethod": "GET", // "id": "integrations.projects.locations.products.integrations.executions.list", diff --git a/mybusinessaccountmanagement/v1/mybusinessaccountmanagement-api.json b/mybusinessaccountmanagement/v1/mybusinessaccountmanagement-api.json index 4e9e5513636..5c4a343834b 100644 --- a/mybusinessaccountmanagement/v1/mybusinessaccountmanagement-api.json +++ b/mybusinessaccountmanagement/v1/mybusinessaccountmanagement-api.json @@ -3,7 +3,7 @@ "baseUrl": "https://mybusinessaccountmanagement.googleapis.com/", "batchPath": "batch", "canonicalName": "My Business Account Management", - "description": "The My Business Account Management API provides an interface for managing access to a location on Google.", + "description": "The My Business Account Management API provides an interface for managing access to a location on Google. Note - If you have a quota of 0 after enabling the API, please request for GBP API access.", "discoveryVersion": "v1", "documentationLink": "https://developers.google.com/my-business/", "fullyEncodeReservedExpansion": true, @@ -530,7 +530,7 @@ } } }, - "revision": "20220727", + "revision": "20221201", "rootUrl": "https://mybusinessaccountmanagement.googleapis.com/", "schemas": { "AcceptInvitationRequest": { diff --git a/mybusinessbusinesscalls/v1/mybusinessbusinesscalls-api.json b/mybusinessbusinesscalls/v1/mybusinessbusinesscalls-api.json index a4d16d98dbd..b9ee4945110 100644 --- a/mybusinessbusinesscalls/v1/mybusinessbusinesscalls-api.json +++ b/mybusinessbusinesscalls/v1/mybusinessbusinesscalls-api.json @@ -3,7 +3,7 @@ "baseUrl": "https://mybusinessbusinesscalls.googleapis.com/", "batchPath": "batch", "canonicalName": "My Business Business Calls", - "description": "The My Business Business Calls API manages business calls information of a location on Google and collect insights like the number of missed calls to their location. Additional information about Business calls can be found at https://support.google.com/business/answer/9688285?p=call_history. If the Google Business Profile links to a Google Ads account and call history is turned on, calls that last longer than a specific time, and that can be attributed to an ad interaction, will show in the linked Google Ads account under the \"Calls from Ads\" conversion. If smart bidding and call conversions are used in the optimization strategy, there could be a change in ad spend. Learn more about smart bidding. To view and perform actions on a location's calls, you need to be a `OWNER`, `CO_OWNER` or `MANAGER` of the location.", + "description": "The My Business Business Calls API manages business calls information of a location on Google and collect insights like the number of missed calls to their location. Additional information about Business calls can be found at https://support.google.com/business/answer/9688285?p=call_history. If the Google Business Profile links to a Google Ads account and call history is turned on, calls that last longer than a specific time, and that can be attributed to an ad interaction, will show in the linked Google Ads account under the \"Calls from Ads\" conversion. If smart bidding and call conversions are used in the optimization strategy, there could be a change in ad spend. Learn more about smart bidding. To view and perform actions on a location's calls, you need to be a `OWNER`, `CO_OWNER` or `MANAGER` of the location. Note - If you have a quota of 0 after enabling the API, please request for GBP API access.", "discoveryVersion": "v1", "documentationLink": "https://developers.google.com/my-business/", "fullyEncodeReservedExpansion": true, @@ -198,7 +198,7 @@ } } }, - "revision": "20220620", + "revision": "20221201", "rootUrl": "https://mybusinessbusinesscalls.googleapis.com/", "schemas": { "AggregateMetrics": { diff --git a/mybusinessbusinessinformation/v1/mybusinessbusinessinformation-api.json b/mybusinessbusinessinformation/v1/mybusinessbusinessinformation-api.json index 2f2070e0c91..51578b585a9 100644 --- a/mybusinessbusinessinformation/v1/mybusinessbusinessinformation-api.json +++ b/mybusinessbusinessinformation/v1/mybusinessbusinessinformation-api.json @@ -3,7 +3,7 @@ "baseUrl": "https://mybusinessbusinessinformation.googleapis.com/", "batchPath": "batch", "canonicalName": "My Business Business Information", - "description": "The My Business Business Information API provides an interface for managing business information on Google.", + "description": "The My Business Business Information API provides an interface for managing business information. Note - If you have a quota of 0 after enabling the API, please request for GBP API access.", "discoveryVersion": "v1", "documentationLink": "https://developers.google.com/my-business/", "fullyEncodeReservedExpansion": true, @@ -662,7 +662,7 @@ } } }, - "revision": "20220625", + "revision": "20221201", "rootUrl": "https://mybusinessbusinessinformation.googleapis.com/", "schemas": { "AdWordsLocationExtensions": { diff --git a/mybusinesslodging/v1/mybusinesslodging-api.json b/mybusinesslodging/v1/mybusinesslodging-api.json index 22db8147dac..e9bd518a698 100644 --- a/mybusinesslodging/v1/mybusinesslodging-api.json +++ b/mybusinesslodging/v1/mybusinesslodging-api.json @@ -3,7 +3,7 @@ "baseUrl": "https://mybusinesslodging.googleapis.com/", "batchPath": "batch", "canonicalName": "My Business Lodging", - "description": "The My Business Lodging API enables managing lodging business information on Google.", + "description": "The My Business Lodging API enables managing lodging business information on Google. Note - If you have a quota of 0 after enabling the API, please request for GBP API access.", "discoveryVersion": "v1", "documentationLink": "https://developers.google.com/my-business/", "fullyEncodeReservedExpansion": true, @@ -194,7 +194,7 @@ } } }, - "revision": "20221115", + "revision": "20221201", "rootUrl": "https://mybusinesslodging.googleapis.com/", "schemas": { "Accessibility": { diff --git a/mybusinessnotifications/v1/mybusinessnotifications-api.json b/mybusinessnotifications/v1/mybusinessnotifications-api.json index 427b7298161..3326f1a80af 100644 --- a/mybusinessnotifications/v1/mybusinessnotifications-api.json +++ b/mybusinessnotifications/v1/mybusinessnotifications-api.json @@ -3,7 +3,7 @@ "baseUrl": "https://mybusinessnotifications.googleapis.com/", "batchPath": "batch", "canonicalName": "My Business Notification Settings", - "description": "The My Business Notification Settings API enables managing notification settings for business accounts.", + "description": "The My Business Notification Settings API enables managing notification settings for business accounts. Note - If you have a quota of 0 after enabling the API, please request for GBP API access.", "discoveryVersion": "v1", "documentationLink": "https://developers.google.com/my-business/", "fullyEncodeReservedExpansion": true, @@ -154,7 +154,7 @@ } } }, - "revision": "20220322", + "revision": "20221201", "rootUrl": "https://mybusinessnotifications.googleapis.com/", "schemas": { "NotificationSetting": { diff --git a/mybusinessplaceactions/v1/mybusinessplaceactions-api.json b/mybusinessplaceactions/v1/mybusinessplaceactions-api.json index 7a554f7bb06..2fad7758d12 100644 --- a/mybusinessplaceactions/v1/mybusinessplaceactions-api.json +++ b/mybusinessplaceactions/v1/mybusinessplaceactions-api.json @@ -3,7 +3,7 @@ "baseUrl": "https://mybusinessplaceactions.googleapis.com/", "batchPath": "batch", "canonicalName": "My Business Place Actions", - "description": "The My Business Place Actions API provides an interface for managing place action links of a location on Google.", + "description": "The My Business Place Actions API provides an interface for managing place action links of a location on Google. Note - If you have a quota of 0 after enabling the API, please request for GBP API access.", "discoveryVersion": "v1", "documentationLink": "https://developers.google.com/my-business/", "fullyEncodeReservedExpansion": true, @@ -281,7 +281,7 @@ } } }, - "revision": "20221013", + "revision": "20221201", "rootUrl": "https://mybusinessplaceactions.googleapis.com/", "schemas": { "Empty": { diff --git a/mybusinessqanda/v1/mybusinessqanda-api.json b/mybusinessqanda/v1/mybusinessqanda-api.json index 43b51a255b6..3b8a8659483 100644 --- a/mybusinessqanda/v1/mybusinessqanda-api.json +++ b/mybusinessqanda/v1/mybusinessqanda-api.json @@ -3,7 +3,7 @@ "baseUrl": "https://mybusinessqanda.googleapis.com/", "batchPath": "batch", "canonicalName": "My Business Q\u0026A", - "description": "The My Business Q\u0026A API allows questions and answers to be posted for specific listings.", + "description": "The My Business Q\u0026A API allows questions and answers to be posted for specific listings. Note - If you have a quota of 0 after enabling the API, please request for GBP API access.", "discoveryVersion": "v1", "documentationLink": "https://developers.google.com/my-business/", "fullyEncodeReservedExpansion": true, @@ -323,7 +323,7 @@ } } }, - "revision": "20220407", + "revision": "20221201", "rootUrl": "https://mybusinessqanda.googleapis.com/", "schemas": { "Answer": { diff --git a/paymentsresellersubscription/v1/paymentsresellersubscription-api.json b/paymentsresellersubscription/v1/paymentsresellersubscription-api.json index 45db4bb3273..af178fb9683 100644 --- a/paymentsresellersubscription/v1/paymentsresellersubscription-api.json +++ b/paymentsresellersubscription/v1/paymentsresellersubscription-api.json @@ -396,7 +396,7 @@ } } }, - "revision": "20221031", + "revision": "20221129", "rootUrl": "https://paymentsresellersubscription.googleapis.com/", "schemas": { "GoogleCloudPaymentsResellerSubscriptionV1Amount": { @@ -592,6 +592,60 @@ }, "type": "object" }, + "GoogleCloudPaymentsResellerSubscriptionV1GoogleOnePayload": { + "description": "Payload specific to Google One products.", + "id": "GoogleCloudPaymentsResellerSubscriptionV1GoogleOnePayload", + "properties": { + "campaigns": { + "description": "Campaign attributed to sales of this subscription.", + "items": { + "type": "string" + }, + "type": "array" + }, + "offering": { + "description": "The type of offering the subscription was sold by the partner. e.g. VAS.", + "enum": [ + "OFFERING_UNSPECIFIED", + "OFFERING_VAS_BUNDLE", + "OFFERING_VAS_STANDALONE", + "OFFERING_HARD_BUNDLE", + "OFFERING_SOFT_BUNDLE" + ], + "enumDescriptions": [ + "The type of partner offering is unspecified.", + "Google One product purchased as a Value added service in addition to existing partner's products. Customer pays additional amount for Google One product.", + "Google One product purchased by itself by customer as a value add service. Customer pays additional amount for Google One product.", + "Product purchased as part of a hard bundle where Google One was included with the bundle. Google One pricing is included in the bundle.", + "Purchased as part of a bundle where Google One was provided as an option. Google One pricing is included in the bundle." + ], + "type": "string" + }, + "salesChannel": { + "description": "The type of sales channel through which the subscription was sold.", + "enum": [ + "CHANNEL_UNSPECIFIED", + "CHANNEL_RETAIL", + "CHANNEL_ONLINE_WEB", + "CHANNEL_ONLINE_ANDROID_APP", + "CHANNEL_ONLINE_IOS_APP" + ], + "enumDescriptions": [ + "The channel type is unspecified.", + "Sold at store.", + "Sold through partner website.", + "Sold through partner android app.", + "Sold through partner iOS app." + ], + "type": "string" + }, + "storeId": { + "description": "The identifier for the partner store where the subscription was sold.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudPaymentsResellerSubscriptionV1ListProductsResponse": { "id": "GoogleCloudPaymentsResellerSubscriptionV1ListProductsResponse", "properties": { @@ -682,6 +736,21 @@ }, "type": "object" }, + "GoogleCloudPaymentsResellerSubscriptionV1ProductPayload": { + "description": "Specifies product specific payload.", + "id": "GoogleCloudPaymentsResellerSubscriptionV1ProductPayload", + "properties": { + "googleOnePayload": { + "$ref": "GoogleCloudPaymentsResellerSubscriptionV1GoogleOnePayload", + "description": "Payload specific to Google One products." + }, + "youtubePayload": { + "$ref": "GoogleCloudPaymentsResellerSubscriptionV1YoutubePayload", + "description": "Payload specific to Youtube products." + } + }, + "type": "object" + }, "GoogleCloudPaymentsResellerSubscriptionV1ProductPriceConfig": { "description": "Configs the prices in an available region.", "id": "GoogleCloudPaymentsResellerSubscriptionV1ProductPriceConfig", @@ -996,7 +1065,7 @@ "type": "object" }, "GoogleCloudPaymentsResellerSubscriptionV1SubscriptionLineItem": { - "description": "Individual line item definition of a subscription. Next id: 9", + "description": "Individual line item definition of a subscription.", "id": "GoogleCloudPaymentsResellerSubscriptionV1SubscriptionLineItem", "properties": { "description": { @@ -1026,6 +1095,10 @@ "description": "Required. Product resource name that identifies one the line item The format is 'partners/{partner_id}/products/{product_id}'.", "type": "string" }, + "productPayload": { + "$ref": "GoogleCloudPaymentsResellerSubscriptionV1ProductPayload", + "description": "Optional. Product specific payload for this line item." + }, "recurrenceType": { "description": "Output only. The recurrence type of the line item.", "enum": [ @@ -1154,6 +1227,20 @@ }, "type": "object" }, + "GoogleCloudPaymentsResellerSubscriptionV1YoutubePayload": { + "description": "Payload specific to Youtube products.", + "id": "GoogleCloudPaymentsResellerSubscriptionV1YoutubePayload", + "properties": { + "partnerEligibilityIds": { + "description": "The list of eligibility_ids which are applicable for the line item.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleTypeLocalizedText": { "description": "Localized variant of a text in a particular language.", "id": "GoogleTypeLocalizedText", diff --git a/paymentsresellersubscription/v1/paymentsresellersubscription-gen.go b/paymentsresellersubscription/v1/paymentsresellersubscription-gen.go index 3e7aa207bf0..89ac292162c 100644 --- a/paymentsresellersubscription/v1/paymentsresellersubscription-gen.go +++ b/paymentsresellersubscription/v1/paymentsresellersubscription-gen.go @@ -568,6 +568,70 @@ func (s *GoogleCloudPaymentsResellerSubscriptionV1FindEligiblePromotionsResponse return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudPaymentsResellerSubscriptionV1GoogleOnePayload: Payload +// specific to Google One products. +type GoogleCloudPaymentsResellerSubscriptionV1GoogleOnePayload struct { + // Campaigns: Campaign attributed to sales of this subscription. + Campaigns []string `json:"campaigns,omitempty"` + + // Offering: The type of offering the subscription was sold by the + // partner. e.g. VAS. + // + // Possible values: + // "OFFERING_UNSPECIFIED" - The type of partner offering is + // unspecified. + // "OFFERING_VAS_BUNDLE" - Google One product purchased as a Value + // added service in addition to existing partner's products. Customer + // pays additional amount for Google One product. + // "OFFERING_VAS_STANDALONE" - Google One product purchased by itself + // by customer as a value add service. Customer pays additional amount + // for Google One product. + // "OFFERING_HARD_BUNDLE" - Product purchased as part of a hard bundle + // where Google One was included with the bundle. Google One pricing is + // included in the bundle. + // "OFFERING_SOFT_BUNDLE" - Purchased as part of a bundle where Google + // One was provided as an option. Google One pricing is included in the + // bundle. + Offering string `json:"offering,omitempty"` + + // SalesChannel: The type of sales channel through which the + // subscription was sold. + // + // Possible values: + // "CHANNEL_UNSPECIFIED" - The channel type is unspecified. + // "CHANNEL_RETAIL" - Sold at store. + // "CHANNEL_ONLINE_WEB" - Sold through partner website. + // "CHANNEL_ONLINE_ANDROID_APP" - Sold through partner android app. + // "CHANNEL_ONLINE_IOS_APP" - Sold through partner iOS app. + SalesChannel string `json:"salesChannel,omitempty"` + + // StoreId: The identifier for the partner store where the subscription + // was sold. + StoreId string `json:"storeId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Campaigns") 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. "Campaigns") 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 *GoogleCloudPaymentsResellerSubscriptionV1GoogleOnePayload) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudPaymentsResellerSubscriptionV1GoogleOnePayload + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type GoogleCloudPaymentsResellerSubscriptionV1ListProductsResponse struct { // NextPageToken: A token, which can be sent as `page_token` to retrieve // the next page. If this field is empty, there are no subsequent pages. @@ -717,6 +781,39 @@ func (s *GoogleCloudPaymentsResellerSubscriptionV1Product) MarshalJSON() ([]byte return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudPaymentsResellerSubscriptionV1ProductPayload: Specifies +// product specific payload. +type GoogleCloudPaymentsResellerSubscriptionV1ProductPayload struct { + // GoogleOnePayload: Payload specific to Google One products. + GoogleOnePayload *GoogleCloudPaymentsResellerSubscriptionV1GoogleOnePayload `json:"googleOnePayload,omitempty"` + + // YoutubePayload: Payload specific to Youtube products. + YoutubePayload *GoogleCloudPaymentsResellerSubscriptionV1YoutubePayload `json:"youtubePayload,omitempty"` + + // ForceSendFields is a list of field names (e.g. "GoogleOnePayload") 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. "GoogleOnePayload") 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 *GoogleCloudPaymentsResellerSubscriptionV1ProductPayload) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudPaymentsResellerSubscriptionV1ProductPayload + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudPaymentsResellerSubscriptionV1ProductPriceConfig: Configs // the prices in an available region. type GoogleCloudPaymentsResellerSubscriptionV1ProductPriceConfig struct { @@ -1122,7 +1219,7 @@ func (s *GoogleCloudPaymentsResellerSubscriptionV1SubscriptionCancellationDetail } // GoogleCloudPaymentsResellerSubscriptionV1SubscriptionLineItem: -// Individual line item definition of a subscription. Next id: 9 +// Individual line item definition of a subscription. type GoogleCloudPaymentsResellerSubscriptionV1SubscriptionLineItem struct { // Description: Output only. Description of this line item. Description string `json:"description,omitempty"` @@ -1149,6 +1246,10 @@ type GoogleCloudPaymentsResellerSubscriptionV1SubscriptionLineItem struct { // item The format is 'partners/{partner_id}/products/{product_id}'. Product string `json:"product,omitempty"` + // ProductPayload: Optional. Product specific payload for this line + // item. + ProductPayload *GoogleCloudPaymentsResellerSubscriptionV1ProductPayload `json:"productPayload,omitempty"` + // RecurrenceType: Output only. The recurrence type of the line item. // // Possible values: @@ -1362,6 +1463,38 @@ func (s *GoogleCloudPaymentsResellerSubscriptionV1UndoCancelSubscriptionResponse return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudPaymentsResellerSubscriptionV1YoutubePayload: Payload +// specific to Youtube products. +type GoogleCloudPaymentsResellerSubscriptionV1YoutubePayload struct { + // PartnerEligibilityIds: The list of eligibility_ids which are + // applicable for the line item. + PartnerEligibilityIds []string `json:"partnerEligibilityIds,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "PartnerEligibilityIds") 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. "PartnerEligibilityIds") 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 *GoogleCloudPaymentsResellerSubscriptionV1YoutubePayload) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudPaymentsResellerSubscriptionV1YoutubePayload + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleTypeLocalizedText: Localized variant of a text in a particular // language. type GoogleTypeLocalizedText struct { diff --git a/retail/v2/retail-api.json b/retail/v2/retail-api.json index 3ea5083f585..90e84edb14f 100644 --- a/retail/v2/retail-api.json +++ b/retail/v2/retail-api.json @@ -1780,7 +1780,7 @@ } } }, - "revision": "20221110", + "revision": "20221130", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -2194,7 +2194,7 @@ "type": "string" }, "retrievableOption": { - "description": "If RETRIEVABLE_ENABLED, attribute values will be retrievabled in the search results.", + "description": "If RETRIEVABLE_ENABLED, attribute values are retrievable in the search results.", "enum": [ "RETRIEVABLE_OPTION_UNSPECIFIED", "RETRIEVABLE_ENABLED", @@ -3231,7 +3231,7 @@ "description": "The rating of this product." }, "retrievableFields": { - "description": "Indicates which fields in the Products are returned in SearchResponse. Supported fields for all types: * audience * availability * brands * color_info * conditions * gtin * materials * name * patterns * price_info * rating * sizes * title * uri Supported fields only for Type.PRIMARY and Type.COLLECTION: * categories * description * images Supported fields only for Type.VARIANT: * Only the first image in images To mark attributes as retrievable, include paths of the form \"attributes.key\" where \"key\" is the key of a custom attribute, as specified in attributes. For Type.PRIMARY and Type.COLLECTION, the following fields are always returned in SearchResponse by default: * name For Type.VARIANT, the following fields are always returned in by default: * name * color_info The maximum number of paths is 30. Otherwise, an INVALID_ARGUMENT error is returned. Note: Returning more fields in SearchResponse can increase response payload size and serving latency.", + "description": "Indicates which fields in the Products are returned in SearchResponse. Supported fields for all types: * audience * availability * brands * color_info * conditions * gtin * materials * name * patterns * price_info * rating * sizes * title * uri Supported fields only for Type.PRIMARY and Type.COLLECTION: * categories * description * images Supported fields only for Type.VARIANT: * Only the first image in images To mark attributes as retrievable, include paths of the form \"attributes.key\" where \"key\" is the key of a custom attribute, as specified in attributes. For Type.PRIMARY and Type.COLLECTION, the following fields are always returned in SearchResponse by default: * name For Type.VARIANT, the following fields are always returned in by default: * name * color_info The maximum number of paths is 30. Otherwise, an INVALID_ARGUMENT error is returned. Note: Returning more fields in SearchResponse can increase response payload size and serving latency. This field is deprecated. Use the retrievable site-wide control instead.", "format": "google-fieldmask", "type": "string" }, @@ -4997,7 +4997,7 @@ "type": "string" }, "type": { - "description": "Required. The type of model e.g. `home-page`. Currently supported values: `recommended-for-you`, `others-you-may-like`, `frequently-bought-together`, `page-optimization`, `similar-items`, `buy-it-again`, and `recently-viewed`(readonly value). This field together with optimization_objective describe model metadata to use to control model training and serving. See https://cloud.google.com/retail/docs/models for more details on what the model metadata control and which combination of parameters are valid. For invalid combinations of parameters (e.g. type = `frequently-bought-together` and optimization_objective = `ctr`), you receive an error 400 if you try to create/update a recommendation with this set of knobs.", + "description": "Required. The type of model e.g. `home-page`. Currently supported values: `recommended-for-you`, `others-you-may-like`, `frequently-bought-together`, `page-optimization`, `similar-items`, `buy-it-again`, `on-sale-items`, and `recently-viewed`(readonly value). This field together with optimization_objective describe model metadata to use to control model training and serving. See https://cloud.google.com/retail/docs/models for more details on what the model metadata control and which combination of parameters are valid. For invalid combinations of parameters (e.g. type = `frequently-bought-together` and optimization_objective = `ctr`), you receive an error 400 if you try to create/update a recommendation with this set of knobs.", "type": "string" }, "updateTime": { @@ -5633,7 +5633,7 @@ "type": "string" }, "type": { - "description": "Required. The type of model e.g. `home-page`. Currently supported values: `recommended-for-you`, `others-you-may-like`, `frequently-bought-together`, `page-optimization`, `similar-items`, `buy-it-again`, and `recently-viewed`(readonly value). This field together with optimization_objective describe model metadata to use to control model training and serving. See https://cloud.google.com/retail/docs/models for more details on what the model metadata control and which combination of parameters are valid. For invalid combinations of parameters (e.g. type = `frequently-bought-together` and optimization_objective = `ctr`), you receive an error 400 if you try to create/update a recommendation with this set of knobs.", + "description": "Required. The type of model e.g. `home-page`. Currently supported values: `recommended-for-you`, `others-you-may-like`, `frequently-bought-together`, `page-optimization`, `similar-items`, `buy-it-again`, `on-sale-items`, and `recently-viewed`(readonly value). This field together with optimization_objective describe model metadata to use to control model training and serving. See https://cloud.google.com/retail/docs/models for more details on what the model metadata control and which combination of parameters are valid. For invalid combinations of parameters (e.g. type = `frequently-bought-together` and optimization_objective = `ctr`), you receive an error 400 if you try to create/update a recommendation with this set of knobs.", "type": "string" }, "updateTime": { diff --git a/retail/v2/retail-gen.go b/retail/v2/retail-gen.go index efdd856ec06..814329981e0 100644 --- a/retail/v2/retail-gen.go +++ b/retail/v2/retail-gen.go @@ -1085,8 +1085,8 @@ type GoogleCloudRetailV2CatalogAttribute struct { // `attributes.abc-xyz` cannot be indexed. Key string `json:"key,omitempty"` - // RetrievableOption: If RETRIEVABLE_ENABLED, attribute values will be - // retrievabled in the search results. + // RetrievableOption: If RETRIEVABLE_ENABLED, attribute values are + // retrievable in the search results. // // Possible values: // "RETRIEVABLE_OPTION_UNSPECIFIED" - Value used when unset. Defaults @@ -3077,7 +3077,8 @@ type GoogleCloudRetailV2Product struct { // color_info The maximum number of paths is 30. Otherwise, an // INVALID_ARGUMENT error is returned. Note: Returning more fields in // SearchResponse can increase response payload size and serving - // latency. + // latency. This field is deprecated. Use the retrievable site-wide + // control instead. RetrievableFields string `json:"retrievableFields,omitempty"` // Sizes: The size of the product. To represent different size systems @@ -6485,9 +6486,9 @@ type GoogleCloudRetailV2alphaModel struct { // Type: Required. The type of model e.g. `home-page`. Currently // supported values: `recommended-for-you`, `others-you-may-like`, // `frequently-bought-together`, `page-optimization`, `similar-items`, - // `buy-it-again`, and `recently-viewed`(readonly value). This field - // together with optimization_objective describe model metadata to use - // to control model training and serving. See + // `buy-it-again`, `on-sale-items`, and `recently-viewed`(readonly + // value). This field together with optimization_objective describe + // model metadata to use to control model training and serving. See // https://cloud.google.com/retail/docs/models for more details on what // the model metadata control and which combination of parameters are // valid. For invalid combinations of parameters (e.g. type = @@ -7656,9 +7657,9 @@ type GoogleCloudRetailV2betaModel struct { // Type: Required. The type of model e.g. `home-page`. Currently // supported values: `recommended-for-you`, `others-you-may-like`, // `frequently-bought-together`, `page-optimization`, `similar-items`, - // `buy-it-again`, and `recently-viewed`(readonly value). This field - // together with optimization_objective describe model metadata to use - // to control model training and serving. See + // `buy-it-again`, `on-sale-items`, and `recently-viewed`(readonly + // value). This field together with optimization_objective describe + // model metadata to use to control model training and serving. See // https://cloud.google.com/retail/docs/models for more details on what // the model metadata control and which combination of parameters are // valid. For invalid combinations of parameters (e.g. type = diff --git a/retail/v2alpha/retail-api.json b/retail/v2alpha/retail-api.json index ee13e67745e..e4118a6d5b5 100644 --- a/retail/v2alpha/retail-api.json +++ b/retail/v2alpha/retail-api.json @@ -2095,7 +2095,7 @@ } } }, - "revision": "20221110", + "revision": "20221130", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -2790,7 +2790,7 @@ "type": "string" }, "retrievableOption": { - "description": "If RETRIEVABLE_ENABLED, attribute values will be retrievabled in the search results.", + "description": "If RETRIEVABLE_ENABLED, attribute values are retrievable in the search results.", "enum": [ "RETRIEVABLE_OPTION_UNSPECIFIED", "RETRIEVABLE_ENABLED", @@ -3861,7 +3861,7 @@ "type": "string" }, "type": { - "description": "Required. The type of model e.g. `home-page`. Currently supported values: `recommended-for-you`, `others-you-may-like`, `frequently-bought-together`, `page-optimization`, `similar-items`, `buy-it-again`, and `recently-viewed`(readonly value). This field together with optimization_objective describe model metadata to use to control model training and serving. See https://cloud.google.com/retail/docs/models for more details on what the model metadata control and which combination of parameters are valid. For invalid combinations of parameters (e.g. type = `frequently-bought-together` and optimization_objective = `ctr`), you receive an error 400 if you try to create/update a recommendation with this set of knobs.", + "description": "Required. The type of model e.g. `home-page`. Currently supported values: `recommended-for-you`, `others-you-may-like`, `frequently-bought-together`, `page-optimization`, `similar-items`, `buy-it-again`, `on-sale-items`, and `recently-viewed`(readonly value). This field together with optimization_objective describe model metadata to use to control model training and serving. See https://cloud.google.com/retail/docs/models for more details on what the model metadata control and which combination of parameters are valid. For invalid combinations of parameters (e.g. type = `frequently-bought-together` and optimization_objective = `ctr`), you receive an error 400 if you try to create/update a recommendation with this set of knobs.", "type": "string" }, "updateTime": { @@ -4289,7 +4289,7 @@ "description": "The rating of this product." }, "retrievableFields": { - "description": "Indicates which fields in the Products are returned in SearchResponse. Supported fields for all types: * audience * availability * brands * color_info * conditions * gtin * materials * name * patterns * price_info * rating * sizes * title * uri Supported fields only for Type.PRIMARY and Type.COLLECTION: * categories * description * images Supported fields only for Type.VARIANT: * Only the first image in images To mark attributes as retrievable, include paths of the form \"attributes.key\" where \"key\" is the key of a custom attribute, as specified in attributes. For Type.PRIMARY and Type.COLLECTION, the following fields are always returned in SearchResponse by default: * name For Type.VARIANT, the following fields are always returned in by default: * name * color_info The maximum number of paths is 30. Otherwise, an INVALID_ARGUMENT error is returned. Note: Returning more fields in SearchResponse can increase response payload size and serving latency.", + "description": "Indicates which fields in the Products are returned in SearchResponse. Supported fields for all types: * audience * availability * brands * color_info * conditions * gtin * materials * name * patterns * price_info * rating * sizes * title * uri Supported fields only for Type.PRIMARY and Type.COLLECTION: * categories * description * images Supported fields only for Type.VARIANT: * Only the first image in images To mark attributes as retrievable, include paths of the form \"attributes.key\" where \"key\" is the key of a custom attribute, as specified in attributes. For Type.PRIMARY and Type.COLLECTION, the following fields are always returned in SearchResponse by default: * name For Type.VARIANT, the following fields are always returned in by default: * name * color_info The maximum number of paths is 30. Otherwise, an INVALID_ARGUMENT error is returned. Note: Returning more fields in SearchResponse can increase response payload size and serving latency. This field is deprecated. Use the retrievable site-wide control instead.", "format": "google-fieldmask", "type": "string" }, @@ -6172,7 +6172,7 @@ "type": "string" }, "type": { - "description": "Required. The type of model e.g. `home-page`. Currently supported values: `recommended-for-you`, `others-you-may-like`, `frequently-bought-together`, `page-optimization`, `similar-items`, `buy-it-again`, and `recently-viewed`(readonly value). This field together with optimization_objective describe model metadata to use to control model training and serving. See https://cloud.google.com/retail/docs/models for more details on what the model metadata control and which combination of parameters are valid. For invalid combinations of parameters (e.g. type = `frequently-bought-together` and optimization_objective = `ctr`), you receive an error 400 if you try to create/update a recommendation with this set of knobs.", + "description": "Required. The type of model e.g. `home-page`. Currently supported values: `recommended-for-you`, `others-you-may-like`, `frequently-bought-together`, `page-optimization`, `similar-items`, `buy-it-again`, `on-sale-items`, and `recently-viewed`(readonly value). This field together with optimization_objective describe model metadata to use to control model training and serving. See https://cloud.google.com/retail/docs/models for more details on what the model metadata control and which combination of parameters are valid. For invalid combinations of parameters (e.g. type = `frequently-bought-together` and optimization_objective = `ctr`), you receive an error 400 if you try to create/update a recommendation with this set of knobs.", "type": "string" }, "updateTime": { diff --git a/retail/v2alpha/retail-gen.go b/retail/v2alpha/retail-gen.go index 9d1d3d8c5ac..cb1ed21ad8d 100644 --- a/retail/v2alpha/retail-gen.go +++ b/retail/v2alpha/retail-gen.go @@ -1628,8 +1628,8 @@ type GoogleCloudRetailV2alphaCatalogAttribute struct { // enabled. RecommendationsFilteringOption string `json:"recommendationsFilteringOption,omitempty"` - // RetrievableOption: If RETRIEVABLE_ENABLED, attribute values will be - // retrievabled in the search results. + // RetrievableOption: If RETRIEVABLE_ENABLED, attribute values are + // retrievable in the search results. // // Possible values: // "RETRIEVABLE_OPTION_UNSPECIFIED" - Value used when unset. Defaults @@ -3605,9 +3605,9 @@ type GoogleCloudRetailV2alphaModel struct { // Type: Required. The type of model e.g. `home-page`. Currently // supported values: `recommended-for-you`, `others-you-may-like`, // `frequently-bought-together`, `page-optimization`, `similar-items`, - // `buy-it-again`, and `recently-viewed`(readonly value). This field - // together with optimization_objective describe model metadata to use - // to control model training and serving. See + // `buy-it-again`, `on-sale-items`, and `recently-viewed`(readonly + // value). This field together with optimization_objective describe + // model metadata to use to control model training and serving. See // https://cloud.google.com/retail/docs/models for more details on what // the model metadata control and which combination of parameters are // valid. For invalid combinations of parameters (e.g. type = @@ -4477,7 +4477,8 @@ type GoogleCloudRetailV2alphaProduct struct { // color_info The maximum number of paths is 30. Otherwise, an // INVALID_ARGUMENT error is returned. Note: Returning more fields in // SearchResponse can increase response payload size and serving - // latency. + // latency. This field is deprecated. Use the retrievable site-wide + // control instead. RetrievableFields string `json:"retrievableFields,omitempty"` // Sizes: The size of the product. To represent different size systems @@ -8106,9 +8107,9 @@ type GoogleCloudRetailV2betaModel struct { // Type: Required. The type of model e.g. `home-page`. Currently // supported values: `recommended-for-you`, `others-you-may-like`, // `frequently-bought-together`, `page-optimization`, `similar-items`, - // `buy-it-again`, and `recently-viewed`(readonly value). This field - // together with optimization_objective describe model metadata to use - // to control model training and serving. See + // `buy-it-again`, `on-sale-items`, and `recently-viewed`(readonly + // value). This field together with optimization_objective describe + // model metadata to use to control model training and serving. See // https://cloud.google.com/retail/docs/models for more details on what // the model metadata control and which combination of parameters are // valid. For invalid combinations of parameters (e.g. type = diff --git a/retail/v2beta/retail-api.json b/retail/v2beta/retail-api.json index 7d9cc789aca..9169e0cd2ed 100644 --- a/retail/v2beta/retail-api.json +++ b/retail/v2beta/retail-api.json @@ -2024,7 +2024,7 @@ } } }, - "revision": "20221110", + "revision": "20221130", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -2749,7 +2749,7 @@ "type": "string" }, "type": { - "description": "Required. The type of model e.g. `home-page`. Currently supported values: `recommended-for-you`, `others-you-may-like`, `frequently-bought-together`, `page-optimization`, `similar-items`, `buy-it-again`, and `recently-viewed`(readonly value). This field together with optimization_objective describe model metadata to use to control model training and serving. See https://cloud.google.com/retail/docs/models for more details on what the model metadata control and which combination of parameters are valid. For invalid combinations of parameters (e.g. type = `frequently-bought-together` and optimization_objective = `ctr`), you receive an error 400 if you try to create/update a recommendation with this set of knobs.", + "description": "Required. The type of model e.g. `home-page`. Currently supported values: `recommended-for-you`, `others-you-may-like`, `frequently-bought-together`, `page-optimization`, `similar-items`, `buy-it-again`, `on-sale-items`, and `recently-viewed`(readonly value). This field together with optimization_objective describe model metadata to use to control model training and serving. See https://cloud.google.com/retail/docs/models for more details on what the model metadata control and which combination of parameters are valid. For invalid combinations of parameters (e.g. type = `frequently-bought-together` and optimization_objective = `ctr`), you receive an error 400 if you try to create/update a recommendation with this set of knobs.", "type": "string" }, "updateTime": { @@ -3363,7 +3363,7 @@ "type": "string" }, "retrievableOption": { - "description": "If RETRIEVABLE_ENABLED, attribute values will be retrievabled in the search results.", + "description": "If RETRIEVABLE_ENABLED, attribute values are retrievable in the search results.", "enum": [ "RETRIEVABLE_OPTION_UNSPECIFIED", "RETRIEVABLE_ENABLED", @@ -4396,7 +4396,7 @@ "type": "string" }, "type": { - "description": "Required. The type of model e.g. `home-page`. Currently supported values: `recommended-for-you`, `others-you-may-like`, `frequently-bought-together`, `page-optimization`, `similar-items`, `buy-it-again`, and `recently-viewed`(readonly value). This field together with optimization_objective describe model metadata to use to control model training and serving. See https://cloud.google.com/retail/docs/models for more details on what the model metadata control and which combination of parameters are valid. For invalid combinations of parameters (e.g. type = `frequently-bought-together` and optimization_objective = `ctr`), you receive an error 400 if you try to create/update a recommendation with this set of knobs.", + "description": "Required. The type of model e.g. `home-page`. Currently supported values: `recommended-for-you`, `others-you-may-like`, `frequently-bought-together`, `page-optimization`, `similar-items`, `buy-it-again`, `on-sale-items`, and `recently-viewed`(readonly value). This field together with optimization_objective describe model metadata to use to control model training and serving. See https://cloud.google.com/retail/docs/models for more details on what the model metadata control and which combination of parameters are valid. For invalid combinations of parameters (e.g. type = `frequently-bought-together` and optimization_objective = `ctr`), you receive an error 400 if you try to create/update a recommendation with this set of knobs.", "type": "string" }, "updateTime": { @@ -4755,7 +4755,7 @@ "description": "The rating of this product." }, "retrievableFields": { - "description": "Indicates which fields in the Products are returned in SearchResponse. Supported fields for all types: * audience * availability * brands * color_info * conditions * gtin * materials * name * patterns * price_info * rating * sizes * title * uri Supported fields only for Type.PRIMARY and Type.COLLECTION: * categories * description * images Supported fields only for Type.VARIANT: * Only the first image in images To mark attributes as retrievable, include paths of the form \"attributes.key\" where \"key\" is the key of a custom attribute, as specified in attributes. For Type.PRIMARY and Type.COLLECTION, the following fields are always returned in SearchResponse by default: * name For Type.VARIANT, the following fields are always returned in by default: * name * color_info The maximum number of paths is 30. Otherwise, an INVALID_ARGUMENT error is returned. Note: Returning more fields in SearchResponse can increase response payload size and serving latency.", + "description": "Indicates which fields in the Products are returned in SearchResponse. Supported fields for all types: * audience * availability * brands * color_info * conditions * gtin * materials * name * patterns * price_info * rating * sizes * title * uri Supported fields only for Type.PRIMARY and Type.COLLECTION: * categories * description * images Supported fields only for Type.VARIANT: * Only the first image in images To mark attributes as retrievable, include paths of the form \"attributes.key\" where \"key\" is the key of a custom attribute, as specified in attributes. For Type.PRIMARY and Type.COLLECTION, the following fields are always returned in SearchResponse by default: * name For Type.VARIANT, the following fields are always returned in by default: * name * color_info The maximum number of paths is 30. Otherwise, an INVALID_ARGUMENT error is returned. Note: Returning more fields in SearchResponse can increase response payload size and serving latency. This field is deprecated. Use the retrievable site-wide control instead.", "format": "google-fieldmask", "type": "string" }, diff --git a/retail/v2beta/retail-gen.go b/retail/v2beta/retail-gen.go index c8338e70659..66abd7f92bd 100644 --- a/retail/v2beta/retail-gen.go +++ b/retail/v2beta/retail-gen.go @@ -1582,9 +1582,9 @@ type GoogleCloudRetailV2alphaModel struct { // Type: Required. The type of model e.g. `home-page`. Currently // supported values: `recommended-for-you`, `others-you-may-like`, // `frequently-bought-together`, `page-optimization`, `similar-items`, - // `buy-it-again`, and `recently-viewed`(readonly value). This field - // together with optimization_objective describe model metadata to use - // to control model training and serving. See + // `buy-it-again`, `on-sale-items`, and `recently-viewed`(readonly + // value). This field together with optimization_objective describe + // model metadata to use to control model training and serving. See // https://cloud.google.com/retail/docs/models for more details on what // the model metadata control and which combination of parameters are // valid. For invalid combinations of parameters (e.g. type = @@ -2782,8 +2782,8 @@ type GoogleCloudRetailV2betaCatalogAttribute struct { // enabled. RecommendationsFilteringOption string `json:"recommendationsFilteringOption,omitempty"` - // RetrievableOption: If RETRIEVABLE_ENABLED, attribute values will be - // retrievabled in the search results. + // RetrievableOption: If RETRIEVABLE_ENABLED, attribute values are + // retrievable in the search results. // // Possible values: // "RETRIEVABLE_OPTION_UNSPECIFIED" - Value used when unset. Defaults @@ -4703,9 +4703,9 @@ type GoogleCloudRetailV2betaModel struct { // Type: Required. The type of model e.g. `home-page`. Currently // supported values: `recommended-for-you`, `others-you-may-like`, // `frequently-bought-together`, `page-optimization`, `similar-items`, - // `buy-it-again`, and `recently-viewed`(readonly value). This field - // together with optimization_objective describe model metadata to use - // to control model training and serving. See + // `buy-it-again`, `on-sale-items`, and `recently-viewed`(readonly + // value). This field together with optimization_objective describe + // model metadata to use to control model training and serving. See // https://cloud.google.com/retail/docs/models for more details on what // the model metadata control and which combination of parameters are // valid. For invalid combinations of parameters (e.g. type = @@ -5395,7 +5395,8 @@ type GoogleCloudRetailV2betaProduct struct { // color_info The maximum number of paths is 30. Otherwise, an // INVALID_ARGUMENT error is returned. Note: Returning more fields in // SearchResponse can increase response payload size and serving - // latency. + // latency. This field is deprecated. Use the retrievable site-wide + // control instead. RetrievableFields string `json:"retrievableFields,omitempty"` // Sizes: The size of the product. To represent different size systems diff --git a/securitycenter/v1/securitycenter-api.json b/securitycenter/v1/securitycenter-api.json index 65952468753..e0007d613c8 100644 --- a/securitycenter/v1/securitycenter-api.json +++ b/securitycenter/v1/securitycenter-api.json @@ -119,7 +119,7 @@ ], "parameters": { "parent": { - "description": "Required. Name of the organization to groupBy. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", + "description": "Required. Name of the parent to groupBy. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", "location": "path", "pattern": "^folders/[^/]+$", "required": true, @@ -180,7 +180,7 @@ "type": "string" }, "parent": { - "description": "Required. Name of the organization assets should belong to. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", + "description": "Required. Name of the parent assets should belong to. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", "location": "path", "pattern": "^folders/[^/]+$", "required": true, @@ -634,7 +634,7 @@ ], "parameters": { "name": { - "description": "Required. Name of the notification config to delete. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\".", + "description": "Required. Name of the notification config to delete. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\", \"folders/[folder_id]/notificationConfigs/[config_id]\", or \"projects/[project_id]/notificationConfigs/[config_id]\".", "location": "path", "pattern": "^folders/[^/]+/notificationConfigs/[^/]+$", "required": true, @@ -659,7 +659,7 @@ ], "parameters": { "name": { - "description": "Required. Name of the notification config to get. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\".", + "description": "Required. Name of the notification config to get. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\", \"folders/[folder_id]/notificationConfigs/[config_id]\", or \"projects/[project_id]/notificationConfigs/[config_id]\".", "location": "path", "pattern": "^folders/[^/]+/notificationConfigs/[^/]+$", "required": true, @@ -695,7 +695,7 @@ "type": "string" }, "parent": { - "description": "Required. Name of the organization to list notification configs. Its format is \"organizations/[organization_id]\", \"folders/[folder_id]\", or \"projects/[project_id]\".", + "description": "Required. Name of the parent to list notification configs. Its format is \"organizations/[organization_id]\", \"folders/[folder_id]\", or \"projects/[project_id]\".", "location": "path", "pattern": "^folders/[^/]+$", "required": true, @@ -720,7 +720,7 @@ ], "parameters": { "name": { - "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\".", + "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\", \"folders/{folder_id}/notificationConfigs/notify_public_bucket\", or \"projects/{project_id}/notificationConfigs/notify_public_bucket\".", "location": "path", "pattern": "^folders/[^/]+/notificationConfigs/[^/]+$", "required": true, @@ -1131,7 +1131,7 @@ ], "parameters": { "parent": { - "description": "Required. Name of the organization to groupBy. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", + "description": "Required. Name of the parent to groupBy. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -1192,7 +1192,7 @@ "type": "string" }, "parent": { - "description": "Required. Name of the organization assets should belong to. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", + "description": "Required. Name of the parent assets should belong to. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -1674,7 +1674,7 @@ ], "parameters": { "name": { - "description": "Required. Name of the notification config to delete. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\".", + "description": "Required. Name of the notification config to delete. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\", \"folders/[folder_id]/notificationConfigs/[config_id]\", or \"projects/[project_id]/notificationConfigs/[config_id]\".", "location": "path", "pattern": "^organizations/[^/]+/notificationConfigs/[^/]+$", "required": true, @@ -1699,7 +1699,7 @@ ], "parameters": { "name": { - "description": "Required. Name of the notification config to get. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\".", + "description": "Required. Name of the notification config to get. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\", \"folders/[folder_id]/notificationConfigs/[config_id]\", or \"projects/[project_id]/notificationConfigs/[config_id]\".", "location": "path", "pattern": "^organizations/[^/]+/notificationConfigs/[^/]+$", "required": true, @@ -1735,7 +1735,7 @@ "type": "string" }, "parent": { - "description": "Required. Name of the organization to list notification configs. Its format is \"organizations/[organization_id]\", \"folders/[folder_id]\", or \"projects/[project_id]\".", + "description": "Required. Name of the parent to list notification configs. Its format is \"organizations/[organization_id]\", \"folders/[folder_id]\", or \"projects/[project_id]\".", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -1760,7 +1760,7 @@ ], "parameters": { "name": { - "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\".", + "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\", \"folders/{folder_id}/notificationConfigs/notify_public_bucket\", or \"projects/{project_id}/notificationConfigs/notify_public_bucket\".", "location": "path", "pattern": "^organizations/[^/]+/notificationConfigs/[^/]+$", "required": true, @@ -2434,7 +2434,7 @@ ], "parameters": { "parent": { - "description": "Required. Name of the organization to groupBy. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", + "description": "Required. Name of the parent to groupBy. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -2495,7 +2495,7 @@ "type": "string" }, "parent": { - "description": "Required. Name of the organization assets should belong to. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", + "description": "Required. Name of the parent assets should belong to. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -2949,7 +2949,7 @@ ], "parameters": { "name": { - "description": "Required. Name of the notification config to delete. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\".", + "description": "Required. Name of the notification config to delete. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\", \"folders/[folder_id]/notificationConfigs/[config_id]\", or \"projects/[project_id]/notificationConfigs/[config_id]\".", "location": "path", "pattern": "^projects/[^/]+/notificationConfigs/[^/]+$", "required": true, @@ -2974,7 +2974,7 @@ ], "parameters": { "name": { - "description": "Required. Name of the notification config to get. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\".", + "description": "Required. Name of the notification config to get. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\", \"folders/[folder_id]/notificationConfigs/[config_id]\", or \"projects/[project_id]/notificationConfigs/[config_id]\".", "location": "path", "pattern": "^projects/[^/]+/notificationConfigs/[^/]+$", "required": true, @@ -3010,7 +3010,7 @@ "type": "string" }, "parent": { - "description": "Required. Name of the organization to list notification configs. Its format is \"organizations/[organization_id]\", \"folders/[folder_id]\", or \"projects/[project_id]\".", + "description": "Required. Name of the parent to list notification configs. Its format is \"organizations/[organization_id]\", \"folders/[folder_id]\", or \"projects/[project_id]\".", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -3035,7 +3035,7 @@ ], "parameters": { "name": { - "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\".", + "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\", \"folders/{folder_id}/notificationConfigs/notify_public_bucket\", or \"projects/{project_id}/notificationConfigs/notify_public_bucket\".", "location": "path", "pattern": "^projects/[^/]+/notificationConfigs/[^/]+$", "required": true, @@ -3372,7 +3372,7 @@ } } }, - "revision": "20221117", + "revision": "20221121", "rootUrl": "https://securitycenter.googleapis.com/", "schemas": { "Access": { @@ -4217,6 +4217,10 @@ "$ref": "Indicator", "description": "Represents what's commonly known as an Indicator of compromise (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. Reference: https://en.wikipedia.org/wiki/Indicator_of_compromise" }, + "kernelRootkit": { + "$ref": "KernelRootkit", + "description": "Kernel Rootkit signature." + }, "kubernetes": { "$ref": "Kubernetes", "description": "Kubernetes resources associated with the finding." @@ -5186,6 +5190,49 @@ }, "type": "object" }, + "KernelRootkit": { + "description": "Kernel mode rootkit signatures.", + "id": "KernelRootkit", + "properties": { + "name": { + "description": "Rootkit name when available.", + "type": "string" + }, + "unexpectedCodeModification": { + "description": "Flag indicating unexpected modifications of kernel code memory.", + "type": "boolean" + }, + "unexpectedFtraceHandler": { + "description": "Flag indicating presence of ftrace points with callbacks pointing to regions that are not in the expected kernel or module code range.", + "type": "boolean" + }, + "unexpectedInterruptHandler": { + "description": "Flag indicating presence of interrupt handlers that are are not in the expected kernel, module code regions.", + "type": "boolean" + }, + "unexpectedKernelCodePages": { + "description": "Flag indicating presence of kernel code pages that are not in the expected kernel, module code regions.", + "type": "boolean" + }, + "unexpectedKprobeHandler": { + "description": "Flag indicating presence of kprobe points with callbacks pointing to regions that are not in the expected kernel or module code range.", + "type": "boolean" + }, + "unexpectedProcessesInRunqueue": { + "description": "Flag indicating unexpected process(es) in the scheduler run-queue, those that are in the run-queue, but not in the process task-list.", + "type": "boolean" + }, + "unexpectedReadOnlyDataModification": { + "description": "Flag indicating unexpected modifications of kernel read-only data memory.", + "type": "boolean" + }, + "unexpectedSystemCallHandler": { + "description": "Flag indicating presence of system call handlers that are are not in the expected kernel, module code regions.", + "type": "boolean" + } + }, + "type": "object" + }, "Kubernetes": { "description": "Kubernetes related attributes.", "id": "Kubernetes", @@ -5769,7 +5816,7 @@ "type": "string" }, "name": { - "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\".", + "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\", \"folders/{folder_id}/notificationConfigs/notify_public_bucket\", or \"projects/{project_id}/notificationConfigs/notify_public_bucket\".", "type": "string" }, "pubsubTopic": { diff --git a/securitycenter/v1/securitycenter-gen.go b/securitycenter/v1/securitycenter-gen.go index 22767687fd6..429cbab9b3e 100644 --- a/securitycenter/v1/securitycenter-gen.go +++ b/securitycenter/v1/securitycenter-gen.go @@ -1826,6 +1826,9 @@ type Finding struct { // https://en.wikipedia.org/wiki/Indicator_of_compromise Indicator *Indicator `json:"indicator,omitempty"` + // KernelRootkit: Kernel Rootkit signature. + KernelRootkit *KernelRootkit `json:"kernelRootkit,omitempty"` + // Kubernetes: Kubernetes resources associated with the finding. Kubernetes *Kubernetes `json:"kubernetes,omitempty"` @@ -3486,6 +3489,71 @@ func (s *Indicator) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// KernelRootkit: Kernel mode rootkit signatures. +type KernelRootkit struct { + // Name: Rootkit name when available. + Name string `json:"name,omitempty"` + + // UnexpectedCodeModification: Flag indicating unexpected modifications + // of kernel code memory. + UnexpectedCodeModification bool `json:"unexpectedCodeModification,omitempty"` + + // UnexpectedFtraceHandler: Flag indicating presence of ftrace points + // with callbacks pointing to regions that are not in the expected + // kernel or module code range. + UnexpectedFtraceHandler bool `json:"unexpectedFtraceHandler,omitempty"` + + // UnexpectedInterruptHandler: Flag indicating presence of interrupt + // handlers that are are not in the expected kernel, module code + // regions. + UnexpectedInterruptHandler bool `json:"unexpectedInterruptHandler,omitempty"` + + // UnexpectedKernelCodePages: Flag indicating presence of kernel code + // pages that are not in the expected kernel, module code regions. + UnexpectedKernelCodePages bool `json:"unexpectedKernelCodePages,omitempty"` + + // UnexpectedKprobeHandler: Flag indicating presence of kprobe points + // with callbacks pointing to regions that are not in the expected + // kernel or module code range. + UnexpectedKprobeHandler bool `json:"unexpectedKprobeHandler,omitempty"` + + // UnexpectedProcessesInRunqueue: Flag indicating unexpected process(es) + // in the scheduler run-queue, those that are in the run-queue, but not + // in the process task-list. + UnexpectedProcessesInRunqueue bool `json:"unexpectedProcessesInRunqueue,omitempty"` + + // UnexpectedReadOnlyDataModification: Flag indicating unexpected + // modifications of kernel read-only data memory. + UnexpectedReadOnlyDataModification bool `json:"unexpectedReadOnlyDataModification,omitempty"` + + // UnexpectedSystemCallHandler: Flag indicating presence of system call + // handlers that are are not in the expected kernel, module code + // regions. + UnexpectedSystemCallHandler bool `json:"unexpectedSystemCallHandler,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 *KernelRootkit) MarshalJSON() ([]byte, error) { + type NoMethod KernelRootkit + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Kubernetes: Kubernetes related attributes. type Kubernetes struct { // AccessReviews: Provides information on any Kubernetes access reviews @@ -4192,7 +4260,8 @@ type NotificationConfig struct { // https://cloud.google.com/apis/design/resource_names#relative_resource_name // Example: // "organizations/{organization_id}/notificationConfigs/notify_public_buc - // ket". + // ket", "folders/{folder_id}/notificationConfigs/notify_public_bucket", + // or "projects/{project_id}/notificationConfigs/notify_public_bucket". Name string `json:"name,omitempty"` // PubsubTopic: The Pub/Sub topic to send notifications to. Its format @@ -5358,7 +5427,7 @@ type FoldersAssetsGroupCall struct { // Group: Filters an organization's assets and groups them by their // specified properties. // -// - parent: Name of the organization to groupBy. Its format is +// - parent: Name of the parent to groupBy. Its format is // "organizations/[organization_id], folders/[folder_id], or // projects/[project_id]". func (r *FoldersAssetsService) Group(parent string, groupassetsrequest *GroupAssetsRequest) *FoldersAssetsGroupCall { @@ -5468,7 +5537,7 @@ func (c *FoldersAssetsGroupCall) Do(opts ...googleapi.CallOption) (*GroupAssetsR // ], // "parameters": { // "parent": { - // "description": "Required. Name of the organization to groupBy. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", + // "description": "Required. Name of the parent to groupBy. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", // "location": "path", // "pattern": "^folders/[^/]+$", // "required": true, @@ -5523,8 +5592,8 @@ type FoldersAssetsListCall struct { // List: Lists an organization's assets. // -// - parent: Name of the organization assets should belong to. Its -// format is "organizations/[organization_id], folders/[folder_id], or +// - parent: Name of the parent assets should belong to. Its format is +// "organizations/[organization_id], folders/[folder_id], or // projects/[project_id]". func (r *FoldersAssetsService) List(parent string) *FoldersAssetsListCall { c := &FoldersAssetsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -5796,7 +5865,7 @@ func (c *FoldersAssetsListCall) Do(opts ...googleapi.CallOption) (*ListAssetsRes // "type": "string" // }, // "parent": { - // "description": "Required. Name of the organization assets should belong to. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", + // "description": "Required. Name of the parent assets should belong to. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", // "location": "path", // "pattern": "^folders/[^/]+$", // "required": true, @@ -7954,7 +8023,9 @@ type FoldersNotificationConfigsDeleteCall struct { // Delete: Deletes a notification config. // // - name: Name of the notification config to delete. Its format is -// "organizations/[organization_id]/notificationConfigs/[config_id]". +// "organizations/[organization_id]/notificationConfigs/[config_id]", +// "folders/[folder_id]/notificationConfigs/[config_id]", or +// "projects/[project_id]/notificationConfigs/[config_id]". func (r *FoldersNotificationConfigsService) Delete(name string) *FoldersNotificationConfigsDeleteCall { c := &FoldersNotificationConfigsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -8056,7 +8127,7 @@ func (c *FoldersNotificationConfigsDeleteCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "name": { - // "description": "Required. Name of the notification config to delete. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\".", + // "description": "Required. Name of the notification config to delete. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\", \"folders/[folder_id]/notificationConfigs/[config_id]\", or \"projects/[project_id]/notificationConfigs/[config_id]\".", // "location": "path", // "pattern": "^folders/[^/]+/notificationConfigs/[^/]+$", // "required": true, @@ -8088,7 +8159,9 @@ type FoldersNotificationConfigsGetCall struct { // Get: Gets a notification config. // // - name: Name of the notification config to get. Its format is -// "organizations/[organization_id]/notificationConfigs/[config_id]". +// "organizations/[organization_id]/notificationConfigs/[config_id]", +// "folders/[folder_id]/notificationConfigs/[config_id]", or +// "projects/[project_id]/notificationConfigs/[config_id]". func (r *FoldersNotificationConfigsService) Get(name string) *FoldersNotificationConfigsGetCall { c := &FoldersNotificationConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -8203,7 +8276,7 @@ func (c *FoldersNotificationConfigsGetCall) Do(opts ...googleapi.CallOption) (*N // ], // "parameters": { // "name": { - // "description": "Required. Name of the notification config to get. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\".", + // "description": "Required. Name of the notification config to get. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\", \"folders/[folder_id]/notificationConfigs/[config_id]\", or \"projects/[project_id]/notificationConfigs/[config_id]\".", // "location": "path", // "pattern": "^folders/[^/]+/notificationConfigs/[^/]+$", // "required": true, @@ -8234,9 +8307,9 @@ type FoldersNotificationConfigsListCall struct { // List: Lists notification configs. // -// - parent: Name of the organization to list notification configs. Its -// format is "organizations/[organization_id]", "folders/[folder_id]", -// or "projects/[project_id]". +// - parent: Name of the parent to list notification configs. Its format +// is "organizations/[organization_id]", "folders/[folder_id]", or +// "projects/[project_id]". func (r *FoldersNotificationConfigsService) List(parent string) *FoldersNotificationConfigsListCall { c := &FoldersNotificationConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -8379,7 +8452,7 @@ func (c *FoldersNotificationConfigsListCall) Do(opts ...googleapi.CallOption) (* // "type": "string" // }, // "parent": { - // "description": "Required. Name of the organization to list notification configs. Its format is \"organizations/[organization_id]\", \"folders/[folder_id]\", or \"projects/[project_id]\".", + // "description": "Required. Name of the parent to list notification configs. Its format is \"organizations/[organization_id]\", \"folders/[folder_id]\", or \"projects/[project_id]\".", // "location": "path", // "pattern": "^folders/[^/]+$", // "required": true, @@ -8436,7 +8509,9 @@ type FoldersNotificationConfigsPatchCall struct { // https://cloud.google.com/apis/design/resource_names#relative_resource_name // Example: // "organizations/{organization_id}/notificationConfigs/notify_public_b -// ucket". +// ucket", +// "folders/{folder_id}/notificationConfigs/notify_public_bucket", or +// "projects/{project_id}/notificationConfigs/notify_public_bucket". func (r *FoldersNotificationConfigsService) Patch(name string, notificationconfig *NotificationConfig) *FoldersNotificationConfigsPatchCall { c := &FoldersNotificationConfigsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -8552,7 +8627,7 @@ func (c *FoldersNotificationConfigsPatchCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "name": { - // "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\".", + // "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\", \"folders/{folder_id}/notificationConfigs/notify_public_bucket\", or \"projects/{project_id}/notificationConfigs/notify_public_bucket\".", // "location": "path", // "pattern": "^folders/[^/]+/notificationConfigs/[^/]+$", // "required": true, @@ -10395,7 +10470,7 @@ type OrganizationsAssetsGroupCall struct { // Group: Filters an organization's assets and groups them by their // specified properties. // -// - parent: Name of the organization to groupBy. Its format is +// - parent: Name of the parent to groupBy. Its format is // "organizations/[organization_id], folders/[folder_id], or // projects/[project_id]". func (r *OrganizationsAssetsService) Group(parent string, groupassetsrequest *GroupAssetsRequest) *OrganizationsAssetsGroupCall { @@ -10505,7 +10580,7 @@ func (c *OrganizationsAssetsGroupCall) Do(opts ...googleapi.CallOption) (*GroupA // ], // "parameters": { // "parent": { - // "description": "Required. Name of the organization to groupBy. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", + // "description": "Required. Name of the parent to groupBy. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", // "location": "path", // "pattern": "^organizations/[^/]+$", // "required": true, @@ -10560,8 +10635,8 @@ type OrganizationsAssetsListCall struct { // List: Lists an organization's assets. // -// - parent: Name of the organization assets should belong to. Its -// format is "organizations/[organization_id], folders/[folder_id], or +// - parent: Name of the parent assets should belong to. Its format is +// "organizations/[organization_id], folders/[folder_id], or // projects/[project_id]". func (r *OrganizationsAssetsService) List(parent string) *OrganizationsAssetsListCall { c := &OrganizationsAssetsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -10833,7 +10908,7 @@ func (c *OrganizationsAssetsListCall) Do(opts ...googleapi.CallOption) (*ListAss // "type": "string" // }, // "parent": { - // "description": "Required. Name of the organization assets should belong to. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", + // "description": "Required. Name of the parent assets should belong to. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", // "location": "path", // "pattern": "^organizations/[^/]+$", // "required": true, @@ -13137,7 +13212,9 @@ type OrganizationsNotificationConfigsDeleteCall struct { // Delete: Deletes a notification config. // // - name: Name of the notification config to delete. Its format is -// "organizations/[organization_id]/notificationConfigs/[config_id]". +// "organizations/[organization_id]/notificationConfigs/[config_id]", +// "folders/[folder_id]/notificationConfigs/[config_id]", or +// "projects/[project_id]/notificationConfigs/[config_id]". func (r *OrganizationsNotificationConfigsService) Delete(name string) *OrganizationsNotificationConfigsDeleteCall { c := &OrganizationsNotificationConfigsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -13239,7 +13316,7 @@ func (c *OrganizationsNotificationConfigsDeleteCall) Do(opts ...googleapi.CallOp // ], // "parameters": { // "name": { - // "description": "Required. Name of the notification config to delete. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\".", + // "description": "Required. Name of the notification config to delete. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\", \"folders/[folder_id]/notificationConfigs/[config_id]\", or \"projects/[project_id]/notificationConfigs/[config_id]\".", // "location": "path", // "pattern": "^organizations/[^/]+/notificationConfigs/[^/]+$", // "required": true, @@ -13271,7 +13348,9 @@ type OrganizationsNotificationConfigsGetCall struct { // Get: Gets a notification config. // // - name: Name of the notification config to get. Its format is -// "organizations/[organization_id]/notificationConfigs/[config_id]". +// "organizations/[organization_id]/notificationConfigs/[config_id]", +// "folders/[folder_id]/notificationConfigs/[config_id]", or +// "projects/[project_id]/notificationConfigs/[config_id]". func (r *OrganizationsNotificationConfigsService) Get(name string) *OrganizationsNotificationConfigsGetCall { c := &OrganizationsNotificationConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -13386,7 +13465,7 @@ func (c *OrganizationsNotificationConfigsGetCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "name": { - // "description": "Required. Name of the notification config to get. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\".", + // "description": "Required. Name of the notification config to get. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\", \"folders/[folder_id]/notificationConfigs/[config_id]\", or \"projects/[project_id]/notificationConfigs/[config_id]\".", // "location": "path", // "pattern": "^organizations/[^/]+/notificationConfigs/[^/]+$", // "required": true, @@ -13417,9 +13496,9 @@ type OrganizationsNotificationConfigsListCall struct { // List: Lists notification configs. // -// - parent: Name of the organization to list notification configs. Its -// format is "organizations/[organization_id]", "folders/[folder_id]", -// or "projects/[project_id]". +// - parent: Name of the parent to list notification configs. Its format +// is "organizations/[organization_id]", "folders/[folder_id]", or +// "projects/[project_id]". func (r *OrganizationsNotificationConfigsService) List(parent string) *OrganizationsNotificationConfigsListCall { c := &OrganizationsNotificationConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -13562,7 +13641,7 @@ func (c *OrganizationsNotificationConfigsListCall) Do(opts ...googleapi.CallOpti // "type": "string" // }, // "parent": { - // "description": "Required. Name of the organization to list notification configs. Its format is \"organizations/[organization_id]\", \"folders/[folder_id]\", or \"projects/[project_id]\".", + // "description": "Required. Name of the parent to list notification configs. Its format is \"organizations/[organization_id]\", \"folders/[folder_id]\", or \"projects/[project_id]\".", // "location": "path", // "pattern": "^organizations/[^/]+$", // "required": true, @@ -13619,7 +13698,9 @@ type OrganizationsNotificationConfigsPatchCall struct { // https://cloud.google.com/apis/design/resource_names#relative_resource_name // Example: // "organizations/{organization_id}/notificationConfigs/notify_public_b -// ucket". +// ucket", +// "folders/{folder_id}/notificationConfigs/notify_public_bucket", or +// "projects/{project_id}/notificationConfigs/notify_public_bucket". func (r *OrganizationsNotificationConfigsService) Patch(name string, notificationconfig *NotificationConfig) *OrganizationsNotificationConfigsPatchCall { c := &OrganizationsNotificationConfigsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -13735,7 +13816,7 @@ func (c *OrganizationsNotificationConfigsPatchCall) Do(opts ...googleapi.CallOpt // ], // "parameters": { // "name": { - // "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\".", + // "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\", \"folders/{folder_id}/notificationConfigs/notify_public_bucket\", or \"projects/{project_id}/notificationConfigs/notify_public_bucket\".", // "location": "path", // "pattern": "^organizations/[^/]+/notificationConfigs/[^/]+$", // "required": true, @@ -16951,7 +17032,7 @@ type ProjectsAssetsGroupCall struct { // Group: Filters an organization's assets and groups them by their // specified properties. // -// - parent: Name of the organization to groupBy. Its format is +// - parent: Name of the parent to groupBy. Its format is // "organizations/[organization_id], folders/[folder_id], or // projects/[project_id]". func (r *ProjectsAssetsService) Group(parent string, groupassetsrequest *GroupAssetsRequest) *ProjectsAssetsGroupCall { @@ -17061,7 +17142,7 @@ func (c *ProjectsAssetsGroupCall) Do(opts ...googleapi.CallOption) (*GroupAssets // ], // "parameters": { // "parent": { - // "description": "Required. Name of the organization to groupBy. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", + // "description": "Required. Name of the parent to groupBy. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", // "location": "path", // "pattern": "^projects/[^/]+$", // "required": true, @@ -17116,8 +17197,8 @@ type ProjectsAssetsListCall struct { // List: Lists an organization's assets. // -// - parent: Name of the organization assets should belong to. Its -// format is "organizations/[organization_id], folders/[folder_id], or +// - parent: Name of the parent assets should belong to. Its format is +// "organizations/[organization_id], folders/[folder_id], or // projects/[project_id]". func (r *ProjectsAssetsService) List(parent string) *ProjectsAssetsListCall { c := &ProjectsAssetsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -17389,7 +17470,7 @@ func (c *ProjectsAssetsListCall) Do(opts ...googleapi.CallOption) (*ListAssetsRe // "type": "string" // }, // "parent": { - // "description": "Required. Name of the organization assets should belong to. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", + // "description": "Required. Name of the parent assets should belong to. Its format is \"organizations/[organization_id], folders/[folder_id], or projects/[project_id]\".", // "location": "path", // "pattern": "^projects/[^/]+$", // "required": true, @@ -19547,7 +19628,9 @@ type ProjectsNotificationConfigsDeleteCall struct { // Delete: Deletes a notification config. // // - name: Name of the notification config to delete. Its format is -// "organizations/[organization_id]/notificationConfigs/[config_id]". +// "organizations/[organization_id]/notificationConfigs/[config_id]", +// "folders/[folder_id]/notificationConfigs/[config_id]", or +// "projects/[project_id]/notificationConfigs/[config_id]". func (r *ProjectsNotificationConfigsService) Delete(name string) *ProjectsNotificationConfigsDeleteCall { c := &ProjectsNotificationConfigsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -19649,7 +19732,7 @@ func (c *ProjectsNotificationConfigsDeleteCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "name": { - // "description": "Required. Name of the notification config to delete. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\".", + // "description": "Required. Name of the notification config to delete. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\", \"folders/[folder_id]/notificationConfigs/[config_id]\", or \"projects/[project_id]/notificationConfigs/[config_id]\".", // "location": "path", // "pattern": "^projects/[^/]+/notificationConfigs/[^/]+$", // "required": true, @@ -19681,7 +19764,9 @@ type ProjectsNotificationConfigsGetCall struct { // Get: Gets a notification config. // // - name: Name of the notification config to get. Its format is -// "organizations/[organization_id]/notificationConfigs/[config_id]". +// "organizations/[organization_id]/notificationConfigs/[config_id]", +// "folders/[folder_id]/notificationConfigs/[config_id]", or +// "projects/[project_id]/notificationConfigs/[config_id]". func (r *ProjectsNotificationConfigsService) Get(name string) *ProjectsNotificationConfigsGetCall { c := &ProjectsNotificationConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -19796,7 +19881,7 @@ func (c *ProjectsNotificationConfigsGetCall) Do(opts ...googleapi.CallOption) (* // ], // "parameters": { // "name": { - // "description": "Required. Name of the notification config to get. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\".", + // "description": "Required. Name of the notification config to get. Its format is \"organizations/[organization_id]/notificationConfigs/[config_id]\", \"folders/[folder_id]/notificationConfigs/[config_id]\", or \"projects/[project_id]/notificationConfigs/[config_id]\".", // "location": "path", // "pattern": "^projects/[^/]+/notificationConfigs/[^/]+$", // "required": true, @@ -19827,9 +19912,9 @@ type ProjectsNotificationConfigsListCall struct { // List: Lists notification configs. // -// - parent: Name of the organization to list notification configs. Its -// format is "organizations/[organization_id]", "folders/[folder_id]", -// or "projects/[project_id]". +// - parent: Name of the parent to list notification configs. Its format +// is "organizations/[organization_id]", "folders/[folder_id]", or +// "projects/[project_id]". func (r *ProjectsNotificationConfigsService) List(parent string) *ProjectsNotificationConfigsListCall { c := &ProjectsNotificationConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent @@ -19972,7 +20057,7 @@ func (c *ProjectsNotificationConfigsListCall) Do(opts ...googleapi.CallOption) ( // "type": "string" // }, // "parent": { - // "description": "Required. Name of the organization to list notification configs. Its format is \"organizations/[organization_id]\", \"folders/[folder_id]\", or \"projects/[project_id]\".", + // "description": "Required. Name of the parent to list notification configs. Its format is \"organizations/[organization_id]\", \"folders/[folder_id]\", or \"projects/[project_id]\".", // "location": "path", // "pattern": "^projects/[^/]+$", // "required": true, @@ -20029,7 +20114,9 @@ type ProjectsNotificationConfigsPatchCall struct { // https://cloud.google.com/apis/design/resource_names#relative_resource_name // Example: // "organizations/{organization_id}/notificationConfigs/notify_public_b -// ucket". +// ucket", +// "folders/{folder_id}/notificationConfigs/notify_public_bucket", or +// "projects/{project_id}/notificationConfigs/notify_public_bucket". func (r *ProjectsNotificationConfigsService) Patch(name string, notificationconfig *NotificationConfig) *ProjectsNotificationConfigsPatchCall { c := &ProjectsNotificationConfigsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -20145,7 +20232,7 @@ func (c *ProjectsNotificationConfigsPatchCall) Do(opts ...googleapi.CallOption) // ], // "parameters": { // "name": { - // "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\".", + // "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\", \"folders/{folder_id}/notificationConfigs/notify_public_bucket\", or \"projects/{project_id}/notificationConfigs/notify_public_bucket\".", // "location": "path", // "pattern": "^projects/[^/]+/notificationConfigs/[^/]+$", // "required": true, diff --git a/securitycenter/v1beta1/securitycenter-api.json b/securitycenter/v1beta1/securitycenter-api.json index 0fa06714382..26c19d8d91e 100644 --- a/securitycenter/v1beta1/securitycenter-api.json +++ b/securitycenter/v1beta1/securitycenter-api.json @@ -896,7 +896,7 @@ } } }, - "revision": "20221117", + "revision": "20221121", "rootUrl": "https://securitycenter.googleapis.com/", "schemas": { "Access": { @@ -1717,6 +1717,10 @@ "$ref": "Indicator", "description": "Represents what's commonly known as an Indicator of compromise (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. Reference: https://en.wikipedia.org/wiki/Indicator_of_compromise" }, + "kernelRootkit": { + "$ref": "KernelRootkit", + "description": "Kernel Rootkit signature." + }, "kubernetes": { "$ref": "Kubernetes", "description": "Kubernetes resources associated with the finding." @@ -2741,6 +2745,49 @@ }, "type": "object" }, + "KernelRootkit": { + "description": "Kernel mode rootkit signatures.", + "id": "KernelRootkit", + "properties": { + "name": { + "description": "Rootkit name when available.", + "type": "string" + }, + "unexpectedCodeModification": { + "description": "Flag indicating unexpected modifications of kernel code memory.", + "type": "boolean" + }, + "unexpectedFtraceHandler": { + "description": "Flag indicating presence of ftrace points with callbacks pointing to regions that are not in the expected kernel or module code range.", + "type": "boolean" + }, + "unexpectedInterruptHandler": { + "description": "Flag indicating presence of interrupt handlers that are are not in the expected kernel, module code regions.", + "type": "boolean" + }, + "unexpectedKernelCodePages": { + "description": "Flag indicating presence of kernel code pages that are not in the expected kernel, module code regions.", + "type": "boolean" + }, + "unexpectedKprobeHandler": { + "description": "Flag indicating presence of kprobe points with callbacks pointing to regions that are not in the expected kernel or module code range.", + "type": "boolean" + }, + "unexpectedProcessesInRunqueue": { + "description": "Flag indicating unexpected process(es) in the scheduler run-queue, those that are in the run-queue, but not in the process task-list.", + "type": "boolean" + }, + "unexpectedReadOnlyDataModification": { + "description": "Flag indicating unexpected modifications of kernel read-only data memory.", + "type": "boolean" + }, + "unexpectedSystemCallHandler": { + "description": "Flag indicating presence of system call handlers that are are not in the expected kernel, module code regions.", + "type": "boolean" + } + }, + "type": "object" + }, "Kubernetes": { "description": "Kubernetes related attributes.", "id": "Kubernetes", diff --git a/securitycenter/v1beta1/securitycenter-gen.go b/securitycenter/v1beta1/securitycenter-gen.go index 2ac0e367b92..108cbf2aaa8 100644 --- a/securitycenter/v1beta1/securitycenter-gen.go +++ b/securitycenter/v1beta1/securitycenter-gen.go @@ -1493,6 +1493,9 @@ type Finding struct { // https://en.wikipedia.org/wiki/Indicator_of_compromise Indicator *Indicator `json:"indicator,omitempty"` + // KernelRootkit: Kernel Rootkit signature. + KernelRootkit *KernelRootkit `json:"kernelRootkit,omitempty"` + // Kubernetes: Kubernetes resources associated with the finding. Kubernetes *Kubernetes `json:"kubernetes,omitempty"` @@ -3177,6 +3180,71 @@ func (s *Indicator) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// KernelRootkit: Kernel mode rootkit signatures. +type KernelRootkit struct { + // Name: Rootkit name when available. + Name string `json:"name,omitempty"` + + // UnexpectedCodeModification: Flag indicating unexpected modifications + // of kernel code memory. + UnexpectedCodeModification bool `json:"unexpectedCodeModification,omitempty"` + + // UnexpectedFtraceHandler: Flag indicating presence of ftrace points + // with callbacks pointing to regions that are not in the expected + // kernel or module code range. + UnexpectedFtraceHandler bool `json:"unexpectedFtraceHandler,omitempty"` + + // UnexpectedInterruptHandler: Flag indicating presence of interrupt + // handlers that are are not in the expected kernel, module code + // regions. + UnexpectedInterruptHandler bool `json:"unexpectedInterruptHandler,omitempty"` + + // UnexpectedKernelCodePages: Flag indicating presence of kernel code + // pages that are not in the expected kernel, module code regions. + UnexpectedKernelCodePages bool `json:"unexpectedKernelCodePages,omitempty"` + + // UnexpectedKprobeHandler: Flag indicating presence of kprobe points + // with callbacks pointing to regions that are not in the expected + // kernel or module code range. + UnexpectedKprobeHandler bool `json:"unexpectedKprobeHandler,omitempty"` + + // UnexpectedProcessesInRunqueue: Flag indicating unexpected process(es) + // in the scheduler run-queue, those that are in the run-queue, but not + // in the process task-list. + UnexpectedProcessesInRunqueue bool `json:"unexpectedProcessesInRunqueue,omitempty"` + + // UnexpectedReadOnlyDataModification: Flag indicating unexpected + // modifications of kernel read-only data memory. + UnexpectedReadOnlyDataModification bool `json:"unexpectedReadOnlyDataModification,omitempty"` + + // UnexpectedSystemCallHandler: Flag indicating presence of system call + // handlers that are are not in the expected kernel, module code + // regions. + UnexpectedSystemCallHandler bool `json:"unexpectedSystemCallHandler,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 *KernelRootkit) MarshalJSON() ([]byte, error) { + type NoMethod KernelRootkit + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Kubernetes: Kubernetes related attributes. type Kubernetes struct { // AccessReviews: Provides information on any Kubernetes access reviews diff --git a/securitycenter/v1beta2/securitycenter-api.json b/securitycenter/v1beta2/securitycenter-api.json index 1209dfb3acd..23832c8b063 100644 --- a/securitycenter/v1beta2/securitycenter-api.json +++ b/securitycenter/v1beta2/securitycenter-api.json @@ -108,7 +108,7 @@ "folders": { "methods": { "getContainerThreatDetectionSettings": { - "description": "Get the ContainerThreatDetectionSettings resource.", + "description": "Get the ContainerThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetContainerThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateContainerThreatDetectionSettings for this purpose.", "flatPath": "v1beta2/folders/{foldersId}/containerThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.folders.getContainerThreatDetectionSettings", @@ -133,7 +133,7 @@ ] }, "getEventThreatDetectionSettings": { - "description": "Get the EventThreatDetectionSettings resource.", + "description": "Get the EventThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetEventThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateEventThreatDetectionSettings for this purpose.", "flatPath": "v1beta2/folders/{foldersId}/eventThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.folders.getEventThreatDetectionSettings", @@ -183,7 +183,7 @@ ] }, "getRapidVulnerabilityDetectionSettings": { - "description": "Get the RapidVulnerabilityDetectionSettings resource.", + "description": "Get the RapidVulnerabilityDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetRapidVulnerabilityDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateRapidVulnerabilityDetectionSettings for this purpose.", "flatPath": "v1beta2/folders/{foldersId}/rapidVulnerabilityDetectionSettings", "httpMethod": "GET", "id": "securitycenter.folders.getRapidVulnerabilityDetectionSettings", @@ -233,7 +233,7 @@ ] }, "getSecurityHealthAnalyticsSettings": { - "description": "Get the SecurityHealthAnalyticsSettings resource.", + "description": "Get the SecurityHealthAnalyticsSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetSecurityHealthAnalyticsSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateSecurityHealthAnalyticsSettings for this purpose.", "flatPath": "v1beta2/folders/{foldersId}/securityHealthAnalyticsSettings", "httpMethod": "GET", "id": "securitycenter.folders.getSecurityHealthAnalyticsSettings", @@ -258,7 +258,7 @@ ] }, "getVirtualMachineThreatDetectionSettings": { - "description": "Get the VirtualMachineThreatDetectionSettings resource.", + "description": "Get the VirtualMachineThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetVirtualMachineThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateVirtualMachineThreatDetectionSettings for this purpose.", "flatPath": "v1beta2/folders/{foldersId}/virtualMachineThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.folders.getVirtualMachineThreatDetectionSettings", @@ -283,7 +283,7 @@ ] }, "getWebSecurityScannerSettings": { - "description": "Get the WebSecurityScannerSettings resource.", + "description": "Get the WebSecurityScannerSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetWebSecurityScannerSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateWebSecurityScannerSettings for this purpose.", "flatPath": "v1beta2/folders/{foldersId}/webSecurityScannerSettings", "httpMethod": "GET", "id": "securitycenter.folders.getWebSecurityScannerSettings", @@ -516,7 +516,7 @@ "containerThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/folders/{foldersId}/containerThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.folders.containerThreatDetectionSettings.calculate", @@ -545,7 +545,7 @@ "eventThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/folders/{foldersId}/eventThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.folders.eventThreatDetectionSettings.calculate", @@ -574,7 +574,7 @@ "rapidVulnerabilityDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/folders/{foldersId}/rapidVulnerabilityDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.folders.rapidVulnerabilityDetectionSettings.calculate", @@ -603,7 +603,7 @@ "securityHealthAnalyticsSettings": { "methods": { "calculate": { - "description": "Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/folders/{foldersId}/securityHealthAnalyticsSettings:calculate", "httpMethod": "GET", "id": "securitycenter.folders.securityHealthAnalyticsSettings.calculate", @@ -632,7 +632,7 @@ "virtualMachineThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/folders/{foldersId}/virtualMachineThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.folders.virtualMachineThreatDetectionSettings.calculate", @@ -661,7 +661,7 @@ "webSecurityScannerSettings": { "methods": { "calculate": { - "description": "Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/folders/{foldersId}/webSecurityScannerSettings:calculate", "httpMethod": "GET", "id": "securitycenter.folders.webSecurityScannerSettings.calculate", @@ -692,7 +692,7 @@ "organizations": { "methods": { "getContainerThreatDetectionSettings": { - "description": "Get the ContainerThreatDetectionSettings resource.", + "description": "Get the ContainerThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetContainerThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateContainerThreatDetectionSettings for this purpose.", "flatPath": "v1beta2/organizations/{organizationsId}/containerThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.organizations.getContainerThreatDetectionSettings", @@ -717,7 +717,7 @@ ] }, "getEventThreatDetectionSettings": { - "description": "Get the EventThreatDetectionSettings resource.", + "description": "Get the EventThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetEventThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateEventThreatDetectionSettings for this purpose.", "flatPath": "v1beta2/organizations/{organizationsId}/eventThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.organizations.getEventThreatDetectionSettings", @@ -767,7 +767,7 @@ ] }, "getRapidVulnerabilityDetectionSettings": { - "description": "Get the RapidVulnerabilityDetectionSettings resource.", + "description": "Get the RapidVulnerabilityDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetRapidVulnerabilityDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateRapidVulnerabilityDetectionSettings for this purpose.", "flatPath": "v1beta2/organizations/{organizationsId}/rapidVulnerabilityDetectionSettings", "httpMethod": "GET", "id": "securitycenter.organizations.getRapidVulnerabilityDetectionSettings", @@ -817,7 +817,7 @@ ] }, "getSecurityHealthAnalyticsSettings": { - "description": "Get the SecurityHealthAnalyticsSettings resource.", + "description": "Get the SecurityHealthAnalyticsSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetSecurityHealthAnalyticsSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateSecurityHealthAnalyticsSettings for this purpose.", "flatPath": "v1beta2/organizations/{organizationsId}/securityHealthAnalyticsSettings", "httpMethod": "GET", "id": "securitycenter.organizations.getSecurityHealthAnalyticsSettings", @@ -867,7 +867,7 @@ ] }, "getVirtualMachineThreatDetectionSettings": { - "description": "Get the VirtualMachineThreatDetectionSettings resource.", + "description": "Get the VirtualMachineThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetVirtualMachineThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateVirtualMachineThreatDetectionSettings for this purpose.", "flatPath": "v1beta2/organizations/{organizationsId}/virtualMachineThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.organizations.getVirtualMachineThreatDetectionSettings", @@ -892,7 +892,7 @@ ] }, "getWebSecurityScannerSettings": { - "description": "Get the WebSecurityScannerSettings resource.", + "description": "Get the WebSecurityScannerSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetWebSecurityScannerSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateWebSecurityScannerSettings for this purpose.", "flatPath": "v1beta2/organizations/{organizationsId}/webSecurityScannerSettings", "httpMethod": "GET", "id": "securitycenter.organizations.getWebSecurityScannerSettings", @@ -1125,7 +1125,7 @@ "containerThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/organizations/{organizationsId}/containerThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.organizations.containerThreatDetectionSettings.calculate", @@ -1154,7 +1154,7 @@ "eventThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/organizations/{organizationsId}/eventThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.organizations.eventThreatDetectionSettings.calculate", @@ -1183,7 +1183,7 @@ "rapidVulnerabilityDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/organizations/{organizationsId}/rapidVulnerabilityDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.organizations.rapidVulnerabilityDetectionSettings.calculate", @@ -1212,7 +1212,7 @@ "securityHealthAnalyticsSettings": { "methods": { "calculate": { - "description": "Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/organizations/{organizationsId}/securityHealthAnalyticsSettings:calculate", "httpMethod": "GET", "id": "securitycenter.organizations.securityHealthAnalyticsSettings.calculate", @@ -1241,7 +1241,7 @@ "virtualMachineThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/organizations/{organizationsId}/virtualMachineThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.organizations.virtualMachineThreatDetectionSettings.calculate", @@ -1270,7 +1270,7 @@ "webSecurityScannerSettings": { "methods": { "calculate": { - "description": "Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/organizations/{organizationsId}/webSecurityScannerSettings:calculate", "httpMethod": "GET", "id": "securitycenter.organizations.webSecurityScannerSettings.calculate", @@ -1301,7 +1301,7 @@ "projects": { "methods": { "getContainerThreatDetectionSettings": { - "description": "Get the ContainerThreatDetectionSettings resource.", + "description": "Get the ContainerThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetContainerThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateContainerThreatDetectionSettings for this purpose.", "flatPath": "v1beta2/projects/{projectsId}/containerThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.projects.getContainerThreatDetectionSettings", @@ -1326,7 +1326,7 @@ ] }, "getEventThreatDetectionSettings": { - "description": "Get the EventThreatDetectionSettings resource.", + "description": "Get the EventThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetEventThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateEventThreatDetectionSettings for this purpose.", "flatPath": "v1beta2/projects/{projectsId}/eventThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.projects.getEventThreatDetectionSettings", @@ -1376,7 +1376,7 @@ ] }, "getRapidVulnerabilityDetectionSettings": { - "description": "Get the RapidVulnerabilityDetectionSettings resource.", + "description": "Get the RapidVulnerabilityDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetRapidVulnerabilityDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateRapidVulnerabilityDetectionSettings for this purpose.", "flatPath": "v1beta2/projects/{projectsId}/rapidVulnerabilityDetectionSettings", "httpMethod": "GET", "id": "securitycenter.projects.getRapidVulnerabilityDetectionSettings", @@ -1426,7 +1426,7 @@ ] }, "getSecurityHealthAnalyticsSettings": { - "description": "Get the SecurityHealthAnalyticsSettings resource.", + "description": "Get the SecurityHealthAnalyticsSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetSecurityHealthAnalyticsSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateSecurityHealthAnalyticsSettings for this purpose.", "flatPath": "v1beta2/projects/{projectsId}/securityHealthAnalyticsSettings", "httpMethod": "GET", "id": "securitycenter.projects.getSecurityHealthAnalyticsSettings", @@ -1451,7 +1451,7 @@ ] }, "getVirtualMachineThreatDetectionSettings": { - "description": "Get the VirtualMachineThreatDetectionSettings resource.", + "description": "Get the VirtualMachineThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetVirtualMachineThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateVirtualMachineThreatDetectionSettings for this purpose.", "flatPath": "v1beta2/projects/{projectsId}/virtualMachineThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.projects.getVirtualMachineThreatDetectionSettings", @@ -1476,7 +1476,7 @@ ] }, "getWebSecurityScannerSettings": { - "description": "Get the WebSecurityScannerSettings resource.", + "description": "Get the WebSecurityScannerSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetWebSecurityScannerSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateWebSecurityScannerSettings for this purpose.", "flatPath": "v1beta2/projects/{projectsId}/webSecurityScannerSettings", "httpMethod": "GET", "id": "securitycenter.projects.getWebSecurityScannerSettings", @@ -1709,7 +1709,7 @@ "containerThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/projects/{projectsId}/containerThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.projects.containerThreatDetectionSettings.calculate", @@ -1738,7 +1738,7 @@ "eventThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/projects/{projectsId}/eventThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.projects.eventThreatDetectionSettings.calculate", @@ -1769,7 +1769,7 @@ "clusters": { "methods": { "getContainerThreatDetectionSettings": { - "description": "Get the ContainerThreatDetectionSettings resource.", + "description": "Get the ContainerThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetContainerThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateContainerThreatDetectionSettings for this purpose.", "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/containerThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.projects.locations.clusters.getContainerThreatDetectionSettings", @@ -1832,7 +1832,7 @@ "containerThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/containerThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.projects.locations.clusters.containerThreatDetectionSettings.calculate", @@ -1865,7 +1865,7 @@ "rapidVulnerabilityDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/projects/{projectsId}/rapidVulnerabilityDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.projects.rapidVulnerabilityDetectionSettings.calculate", @@ -1894,7 +1894,7 @@ "securityHealthAnalyticsSettings": { "methods": { "calculate": { - "description": "Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/projects/{projectsId}/securityHealthAnalyticsSettings:calculate", "httpMethod": "GET", "id": "securitycenter.projects.securityHealthAnalyticsSettings.calculate", @@ -1923,7 +1923,7 @@ "virtualMachineThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/projects/{projectsId}/virtualMachineThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.projects.virtualMachineThreatDetectionSettings.calculate", @@ -1952,7 +1952,7 @@ "webSecurityScannerSettings": { "methods": { "calculate": { - "description": "Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings.", + "description": "Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", "flatPath": "v1beta2/projects/{projectsId}/webSecurityScannerSettings:calculate", "httpMethod": "GET", "id": "securitycenter.projects.webSecurityScannerSettings.calculate", @@ -1981,7 +1981,7 @@ } } }, - "revision": "20221117", + "revision": "20221121", "rootUrl": "https://securitycenter.googleapis.com/", "schemas": { "Access": { @@ -2784,6 +2784,10 @@ "$ref": "Indicator", "description": "Represents what's commonly known as an Indicator of compromise (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. Reference: https://en.wikipedia.org/wiki/Indicator_of_compromise" }, + "kernelRootkit": { + "$ref": "KernelRootkit", + "description": "Kernel Rootkit signature." + }, "kubernetes": { "$ref": "Kubernetes", "description": "Kubernetes resources associated with the finding." @@ -3576,6 +3580,49 @@ }, "type": "object" }, + "KernelRootkit": { + "description": "Kernel mode rootkit signatures.", + "id": "KernelRootkit", + "properties": { + "name": { + "description": "Rootkit name when available.", + "type": "string" + }, + "unexpectedCodeModification": { + "description": "Flag indicating unexpected modifications of kernel code memory.", + "type": "boolean" + }, + "unexpectedFtraceHandler": { + "description": "Flag indicating presence of ftrace points with callbacks pointing to regions that are not in the expected kernel or module code range.", + "type": "boolean" + }, + "unexpectedInterruptHandler": { + "description": "Flag indicating presence of interrupt handlers that are are not in the expected kernel, module code regions.", + "type": "boolean" + }, + "unexpectedKernelCodePages": { + "description": "Flag indicating presence of kernel code pages that are not in the expected kernel, module code regions.", + "type": "boolean" + }, + "unexpectedKprobeHandler": { + "description": "Flag indicating presence of kprobe points with callbacks pointing to regions that are not in the expected kernel or module code range.", + "type": "boolean" + }, + "unexpectedProcessesInRunqueue": { + "description": "Flag indicating unexpected process(es) in the scheduler run-queue, those that are in the run-queue, but not in the process task-list.", + "type": "boolean" + }, + "unexpectedReadOnlyDataModification": { + "description": "Flag indicating unexpected modifications of kernel read-only data memory.", + "type": "boolean" + }, + "unexpectedSystemCallHandler": { + "description": "Flag indicating presence of system call handlers that are are not in the expected kernel, module code regions.", + "type": "boolean" + } + }, + "type": "object" + }, "Kubernetes": { "description": "Kubernetes related attributes.", "id": "Kubernetes", diff --git a/securitycenter/v1beta2/securitycenter-gen.go b/securitycenter/v1beta2/securitycenter-gen.go index 3f7dc0669fb..09f791005c9 100644 --- a/securitycenter/v1beta2/securitycenter-gen.go +++ b/securitycenter/v1beta2/securitycenter-gen.go @@ -1576,6 +1576,9 @@ type Finding struct { // https://en.wikipedia.org/wiki/Indicator_of_compromise Indicator *Indicator `json:"indicator,omitempty"` + // KernelRootkit: Kernel Rootkit signature. + KernelRootkit *KernelRootkit `json:"kernelRootkit,omitempty"` + // Kubernetes: Kubernetes resources associated with the finding. Kubernetes *Kubernetes `json:"kubernetes,omitempty"` @@ -2774,6 +2777,71 @@ func (s *Indicator) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// KernelRootkit: Kernel mode rootkit signatures. +type KernelRootkit struct { + // Name: Rootkit name when available. + Name string `json:"name,omitempty"` + + // UnexpectedCodeModification: Flag indicating unexpected modifications + // of kernel code memory. + UnexpectedCodeModification bool `json:"unexpectedCodeModification,omitempty"` + + // UnexpectedFtraceHandler: Flag indicating presence of ftrace points + // with callbacks pointing to regions that are not in the expected + // kernel or module code range. + UnexpectedFtraceHandler bool `json:"unexpectedFtraceHandler,omitempty"` + + // UnexpectedInterruptHandler: Flag indicating presence of interrupt + // handlers that are are not in the expected kernel, module code + // regions. + UnexpectedInterruptHandler bool `json:"unexpectedInterruptHandler,omitempty"` + + // UnexpectedKernelCodePages: Flag indicating presence of kernel code + // pages that are not in the expected kernel, module code regions. + UnexpectedKernelCodePages bool `json:"unexpectedKernelCodePages,omitempty"` + + // UnexpectedKprobeHandler: Flag indicating presence of kprobe points + // with callbacks pointing to regions that are not in the expected + // kernel or module code range. + UnexpectedKprobeHandler bool `json:"unexpectedKprobeHandler,omitempty"` + + // UnexpectedProcessesInRunqueue: Flag indicating unexpected process(es) + // in the scheduler run-queue, those that are in the run-queue, but not + // in the process task-list. + UnexpectedProcessesInRunqueue bool `json:"unexpectedProcessesInRunqueue,omitempty"` + + // UnexpectedReadOnlyDataModification: Flag indicating unexpected + // modifications of kernel read-only data memory. + UnexpectedReadOnlyDataModification bool `json:"unexpectedReadOnlyDataModification,omitempty"` + + // UnexpectedSystemCallHandler: Flag indicating presence of system call + // handlers that are are not in the expected kernel, module code + // regions. + UnexpectedSystemCallHandler bool `json:"unexpectedSystemCallHandler,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 *KernelRootkit) MarshalJSON() ([]byte, error) { + type NoMethod KernelRootkit + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Kubernetes: Kubernetes related attributes. type Kubernetes struct { // AccessReviews: Provides information on any Kubernetes access reviews @@ -3948,7 +4016,13 @@ type FoldersGetContainerThreatDetectionSettingsCall struct { } // GetContainerThreatDetectionSettings: Get the -// ContainerThreatDetectionSettings resource. +// ContainerThreatDetectionSettings resource. In the returned settings +// response, a missing field only indicates that it was not explicitly +// set, so no assumption should be made about these fields. In other +// words, GetContainerThreatDetectionSettings does not calculate the +// effective service settings for the resource, which accounts for +// inherited settings and defaults. Instead, use +// CalculateContainerThreatDetectionSettings for this purpose. // // - name: The name of the ContainerThreatDetectionSettings to retrieve. // Formats: * @@ -4062,7 +4136,7 @@ func (c *FoldersGetContainerThreatDetectionSettingsCall) Do(opts ...googleapi.Ca } return ret, nil // { - // "description": "Get the ContainerThreatDetectionSettings resource.", + // "description": "Get the ContainerThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetContainerThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateContainerThreatDetectionSettings for this purpose.", // "flatPath": "v1beta2/folders/{foldersId}/containerThreatDetectionSettings", // "httpMethod": "GET", // "id": "securitycenter.folders.getContainerThreatDetectionSettings", @@ -4101,7 +4175,13 @@ type FoldersGetEventThreatDetectionSettingsCall struct { } // GetEventThreatDetectionSettings: Get the EventThreatDetectionSettings -// resource. +// resource. In the returned settings response, a missing field only +// indicates that it was not explicitly set, so no assumption should be +// made about these fields. In other words, +// GetEventThreatDetectionSettings does not calculate the effective +// service settings for the resource, which accounts for inherited +// settings and defaults. Instead, use +// CalculateEventThreatDetectionSettings for this purpose. // // - name: The name of the EventThreatDetectionSettings to retrieve. // Formats: * @@ -4213,7 +4293,7 @@ func (c *FoldersGetEventThreatDetectionSettingsCall) Do(opts ...googleapi.CallOp } return ret, nil // { - // "description": "Get the EventThreatDetectionSettings resource.", + // "description": "Get the EventThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetEventThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateEventThreatDetectionSettings for this purpose.", // "flatPath": "v1beta2/folders/{foldersId}/eventThreatDetectionSettings", // "httpMethod": "GET", // "id": "securitycenter.folders.getEventThreatDetectionSettings", @@ -4401,7 +4481,13 @@ type FoldersGetRapidVulnerabilityDetectionSettingsCall struct { } // GetRapidVulnerabilityDetectionSettings: Get the -// RapidVulnerabilityDetectionSettings resource. +// RapidVulnerabilityDetectionSettings resource. In the returned +// settings response, a missing field only indicates that it was not +// explicitly set, so no assumption should be made about these fields. +// In other words, GetRapidVulnerabilityDetectionSettings does not +// calculate the effective service settings for the resource, which +// accounts for inherited settings and defaults. Instead, use +// CalculateRapidVulnerabilityDetectionSettings for this purpose. // // - name: The name of the RapidVulnerabilityDetectionSettings to // retrieve. Formats: * @@ -4514,7 +4600,7 @@ func (c *FoldersGetRapidVulnerabilityDetectionSettingsCall) Do(opts ...googleapi } return ret, nil // { - // "description": "Get the RapidVulnerabilityDetectionSettings resource.", + // "description": "Get the RapidVulnerabilityDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetRapidVulnerabilityDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateRapidVulnerabilityDetectionSettings for this purpose.", // "flatPath": "v1beta2/folders/{foldersId}/rapidVulnerabilityDetectionSettings", // "httpMethod": "GET", // "id": "securitycenter.folders.getRapidVulnerabilityDetectionSettings", @@ -4702,7 +4788,13 @@ type FoldersGetSecurityHealthAnalyticsSettingsCall struct { } // GetSecurityHealthAnalyticsSettings: Get the -// SecurityHealthAnalyticsSettings resource. +// SecurityHealthAnalyticsSettings resource. In the returned settings +// response, a missing field only indicates that it was not explicitly +// set, so no assumption should be made about these fields. In other +// words, GetSecurityHealthAnalyticsSettings does not calculate the +// effective service settings for the resource, which accounts for +// inherited settings and defaults. Instead, use +// CalculateSecurityHealthAnalyticsSettings for this purpose. // // - name: The name of the SecurityHealthAnalyticsSettings to retrieve. // Formats: * @@ -4814,7 +4906,7 @@ func (c *FoldersGetSecurityHealthAnalyticsSettingsCall) Do(opts ...googleapi.Cal } return ret, nil // { - // "description": "Get the SecurityHealthAnalyticsSettings resource.", + // "description": "Get the SecurityHealthAnalyticsSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetSecurityHealthAnalyticsSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateSecurityHealthAnalyticsSettings for this purpose.", // "flatPath": "v1beta2/folders/{foldersId}/securityHealthAnalyticsSettings", // "httpMethod": "GET", // "id": "securitycenter.folders.getSecurityHealthAnalyticsSettings", @@ -4853,7 +4945,13 @@ type FoldersGetVirtualMachineThreatDetectionSettingsCall struct { } // GetVirtualMachineThreatDetectionSettings: Get the -// VirtualMachineThreatDetectionSettings resource. +// VirtualMachineThreatDetectionSettings resource. In the returned +// settings response, a missing field only indicates that it was not +// explicitly set, so no assumption should be made about these fields. +// In other words, GetVirtualMachineThreatDetectionSettings does not +// calculate the effective service settings for the resource, which +// accounts for inherited settings and defaults. Instead, use +// CalculateVirtualMachineThreatDetectionSettings for this purpose. // // - name: The name of the VirtualMachineThreatDetectionSettings to // retrieve. Formats: * @@ -4966,7 +5064,7 @@ func (c *FoldersGetVirtualMachineThreatDetectionSettingsCall) Do(opts ...googlea } return ret, nil // { - // "description": "Get the VirtualMachineThreatDetectionSettings resource.", + // "description": "Get the VirtualMachineThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetVirtualMachineThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateVirtualMachineThreatDetectionSettings for this purpose.", // "flatPath": "v1beta2/folders/{foldersId}/virtualMachineThreatDetectionSettings", // "httpMethod": "GET", // "id": "securitycenter.folders.getVirtualMachineThreatDetectionSettings", @@ -5005,7 +5103,13 @@ type FoldersGetWebSecurityScannerSettingsCall struct { } // GetWebSecurityScannerSettings: Get the WebSecurityScannerSettings -// resource. +// resource. In the returned settings response, a missing field only +// indicates that it was not explicitly set, so no assumption should be +// made about these fields. In other words, +// GetWebSecurityScannerSettings does not calculate the effective +// service settings for the resource, which accounts for inherited +// settings and defaults. Instead, use +// CalculateWebSecurityScannerSettings for this purpose. // // - name: The name of the WebSecurityScannerSettings to retrieve. // Formats: * organizations/{organization}/webSecurityScannerSettings @@ -5116,7 +5220,7 @@ func (c *FoldersGetWebSecurityScannerSettingsCall) Do(opts ...googleapi.CallOpti } return ret, nil // { - // "description": "Get the WebSecurityScannerSettings resource.", + // "description": "Get the WebSecurityScannerSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetWebSecurityScannerSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateWebSecurityScannerSettings for this purpose.", // "flatPath": "v1beta2/folders/{foldersId}/webSecurityScannerSettings", // "httpMethod": "GET", // "id": "securitycenter.folders.getWebSecurityScannerSettings", @@ -6119,6 +6223,12 @@ type FoldersContainerThreatDetectionSettingsCalculateCall struct { // Calculate: Calculates the effective ContainerThreatDetectionSettings // based on its level in the resource hierarchy and its settings. +// Settings provided closer to the target resource take precedence over +// those further away (e.g. folder will override organization level +// settings). The default SCC setting for the detector service defaults +// can be overridden at organization, folder and project levels. No +// assumptions should be made about the SCC defaults as it is considered +// an internal implementation detail. // // - name: The name of the ContainerThreatDetectionSettings to // calculate. Formats: * @@ -6232,7 +6342,7 @@ func (c *FoldersContainerThreatDetectionSettingsCalculateCall) Do(opts ...google } return ret, nil // { - // "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/folders/{foldersId}/containerThreatDetectionSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.folders.containerThreatDetectionSettings.calculate", @@ -6272,6 +6382,12 @@ type FoldersEventThreatDetectionSettingsCalculateCall struct { // Calculate: Calculates the effective EventThreatDetectionSettings // based on its level in the resource hierarchy and its settings. +// Settings provided closer to the target resource take precedence over +// those further away (e.g. folder will override organization level +// settings). The default SCC setting for the detector service defaults +// can be overridden at organization, folder and project levels. No +// assumptions should be made about the SCC defaults as it is considered +// an internal implementation detail. // // - name: The name of the EventThreatDetectionSettings to calculate. // Formats: * @@ -6383,7 +6499,7 @@ func (c *FoldersEventThreatDetectionSettingsCalculateCall) Do(opts ...googleapi. } return ret, nil // { - // "description": "Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/folders/{foldersId}/eventThreatDetectionSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.folders.eventThreatDetectionSettings.calculate", @@ -6423,7 +6539,12 @@ type FoldersRapidVulnerabilityDetectionSettingsCalculateCall struct { // Calculate: Calculates the effective // RapidVulnerabilityDetectionSettings based on its level in the -// resource hierarchy and its settings. +// resource hierarchy and its settings. Settings provided closer to the +// target resource take precedence over those further away (e.g. folder +// will override organization level settings). The default SCC setting +// for the detector service defaults can be overridden at organization, +// folder and project levels. No assumptions should be made about the +// SCC defaults as it is considered an internal implementation detail. // // - name: The name of the RapidVulnerabilityDetectionSettings to // calculate. Formats: * @@ -6536,7 +6657,7 @@ func (c *FoldersRapidVulnerabilityDetectionSettingsCalculateCall) Do(opts ...goo } return ret, nil // { - // "description": "Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/folders/{foldersId}/rapidVulnerabilityDetectionSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.folders.rapidVulnerabilityDetectionSettings.calculate", @@ -6576,6 +6697,12 @@ type FoldersSecurityHealthAnalyticsSettingsCalculateCall struct { // Calculate: Calculates the effective SecurityHealthAnalyticsSettings // based on its level in the resource hierarchy and its settings. +// Settings provided closer to the target resource take precedence over +// those further away (e.g. folder will override organization level +// settings). The default SCC setting for the detector service defaults +// can be overridden at organization, folder and project levels. No +// assumptions should be made about the SCC defaults as it is considered +// an internal implementation detail. // // - name: The name of the SecurityHealthAnalyticsSettings to calculate. // Formats: * @@ -6687,7 +6814,7 @@ func (c *FoldersSecurityHealthAnalyticsSettingsCalculateCall) Do(opts ...googlea } return ret, nil // { - // "description": "Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/folders/{foldersId}/securityHealthAnalyticsSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.folders.securityHealthAnalyticsSettings.calculate", @@ -6727,7 +6854,12 @@ type FoldersVirtualMachineThreatDetectionSettingsCalculateCall struct { // Calculate: Calculates the effective // VirtualMachineThreatDetectionSettings based on its level in the -// resource hierarchy and its settings. +// resource hierarchy and its settings. Settings provided closer to the +// target resource take precedence over those further away (e.g. folder +// will override organization level settings). The default SCC setting +// for the detector service defaults can be overridden at organization, +// folder and project levels. No assumptions should be made about the +// SCC defaults as it is considered an internal implementation detail. // // - name: The name of the VirtualMachineThreatDetectionSettings to // calculate. Formats: * @@ -6840,7 +6972,7 @@ func (c *FoldersVirtualMachineThreatDetectionSettingsCalculateCall) Do(opts ...g } return ret, nil // { - // "description": "Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/folders/{foldersId}/virtualMachineThreatDetectionSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.folders.virtualMachineThreatDetectionSettings.calculate", @@ -6879,7 +7011,13 @@ type FoldersWebSecurityScannerSettingsCalculateCall struct { } // Calculate: Calculates the effective WebSecurityScannerSettings based -// on its level in the resource hierarchy and its settings. +// on its level in the resource hierarchy and its settings. Settings +// provided closer to the target resource take precedence over those +// further away (e.g. folder will override organization level settings). +// The default SCC setting for the detector service defaults can be +// overridden at organization, folder and project levels. No assumptions +// should be made about the SCC defaults as it is considered an internal +// implementation detail. // // - name: The name of the WebSecurityScannerSettings to calculate. // Formats: * organizations/{organization}/webSecurityScannerSettings @@ -6990,7 +7128,7 @@ func (c *FoldersWebSecurityScannerSettingsCalculateCall) Do(opts ...googleapi.Ca } return ret, nil // { - // "description": "Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/folders/{foldersId}/webSecurityScannerSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.folders.webSecurityScannerSettings.calculate", @@ -7029,7 +7167,13 @@ type OrganizationsGetContainerThreatDetectionSettingsCall struct { } // GetContainerThreatDetectionSettings: Get the -// ContainerThreatDetectionSettings resource. +// ContainerThreatDetectionSettings resource. In the returned settings +// response, a missing field only indicates that it was not explicitly +// set, so no assumption should be made about these fields. In other +// words, GetContainerThreatDetectionSettings does not calculate the +// effective service settings for the resource, which accounts for +// inherited settings and defaults. Instead, use +// CalculateContainerThreatDetectionSettings for this purpose. // // - name: The name of the ContainerThreatDetectionSettings to retrieve. // Formats: * @@ -7143,7 +7287,7 @@ func (c *OrganizationsGetContainerThreatDetectionSettingsCall) Do(opts ...google } return ret, nil // { - // "description": "Get the ContainerThreatDetectionSettings resource.", + // "description": "Get the ContainerThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetContainerThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateContainerThreatDetectionSettings for this purpose.", // "flatPath": "v1beta2/organizations/{organizationsId}/containerThreatDetectionSettings", // "httpMethod": "GET", // "id": "securitycenter.organizations.getContainerThreatDetectionSettings", @@ -7182,7 +7326,13 @@ type OrganizationsGetEventThreatDetectionSettingsCall struct { } // GetEventThreatDetectionSettings: Get the EventThreatDetectionSettings -// resource. +// resource. In the returned settings response, a missing field only +// indicates that it was not explicitly set, so no assumption should be +// made about these fields. In other words, +// GetEventThreatDetectionSettings does not calculate the effective +// service settings for the resource, which accounts for inherited +// settings and defaults. Instead, use +// CalculateEventThreatDetectionSettings for this purpose. // // - name: The name of the EventThreatDetectionSettings to retrieve. // Formats: * @@ -7294,7 +7444,7 @@ func (c *OrganizationsGetEventThreatDetectionSettingsCall) Do(opts ...googleapi. } return ret, nil // { - // "description": "Get the EventThreatDetectionSettings resource.", + // "description": "Get the EventThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetEventThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateEventThreatDetectionSettings for this purpose.", // "flatPath": "v1beta2/organizations/{organizationsId}/eventThreatDetectionSettings", // "httpMethod": "GET", // "id": "securitycenter.organizations.getEventThreatDetectionSettings", @@ -7482,7 +7632,13 @@ type OrganizationsGetRapidVulnerabilityDetectionSettingsCall struct { } // GetRapidVulnerabilityDetectionSettings: Get the -// RapidVulnerabilityDetectionSettings resource. +// RapidVulnerabilityDetectionSettings resource. In the returned +// settings response, a missing field only indicates that it was not +// explicitly set, so no assumption should be made about these fields. +// In other words, GetRapidVulnerabilityDetectionSettings does not +// calculate the effective service settings for the resource, which +// accounts for inherited settings and defaults. Instead, use +// CalculateRapidVulnerabilityDetectionSettings for this purpose. // // - name: The name of the RapidVulnerabilityDetectionSettings to // retrieve. Formats: * @@ -7595,7 +7751,7 @@ func (c *OrganizationsGetRapidVulnerabilityDetectionSettingsCall) Do(opts ...goo } return ret, nil // { - // "description": "Get the RapidVulnerabilityDetectionSettings resource.", + // "description": "Get the RapidVulnerabilityDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetRapidVulnerabilityDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateRapidVulnerabilityDetectionSettings for this purpose.", // "flatPath": "v1beta2/organizations/{organizationsId}/rapidVulnerabilityDetectionSettings", // "httpMethod": "GET", // "id": "securitycenter.organizations.getRapidVulnerabilityDetectionSettings", @@ -7783,7 +7939,13 @@ type OrganizationsGetSecurityHealthAnalyticsSettingsCall struct { } // GetSecurityHealthAnalyticsSettings: Get the -// SecurityHealthAnalyticsSettings resource. +// SecurityHealthAnalyticsSettings resource. In the returned settings +// response, a missing field only indicates that it was not explicitly +// set, so no assumption should be made about these fields. In other +// words, GetSecurityHealthAnalyticsSettings does not calculate the +// effective service settings for the resource, which accounts for +// inherited settings and defaults. Instead, use +// CalculateSecurityHealthAnalyticsSettings for this purpose. // // - name: The name of the SecurityHealthAnalyticsSettings to retrieve. // Formats: * @@ -7895,7 +8057,7 @@ func (c *OrganizationsGetSecurityHealthAnalyticsSettingsCall) Do(opts ...googlea } return ret, nil // { - // "description": "Get the SecurityHealthAnalyticsSettings resource.", + // "description": "Get the SecurityHealthAnalyticsSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetSecurityHealthAnalyticsSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateSecurityHealthAnalyticsSettings for this purpose.", // "flatPath": "v1beta2/organizations/{organizationsId}/securityHealthAnalyticsSettings", // "httpMethod": "GET", // "id": "securitycenter.organizations.getSecurityHealthAnalyticsSettings", @@ -8081,7 +8243,13 @@ type OrganizationsGetVirtualMachineThreatDetectionSettingsCall struct { } // GetVirtualMachineThreatDetectionSettings: Get the -// VirtualMachineThreatDetectionSettings resource. +// VirtualMachineThreatDetectionSettings resource. In the returned +// settings response, a missing field only indicates that it was not +// explicitly set, so no assumption should be made about these fields. +// In other words, GetVirtualMachineThreatDetectionSettings does not +// calculate the effective service settings for the resource, which +// accounts for inherited settings and defaults. Instead, use +// CalculateVirtualMachineThreatDetectionSettings for this purpose. // // - name: The name of the VirtualMachineThreatDetectionSettings to // retrieve. Formats: * @@ -8194,7 +8362,7 @@ func (c *OrganizationsGetVirtualMachineThreatDetectionSettingsCall) Do(opts ...g } return ret, nil // { - // "description": "Get the VirtualMachineThreatDetectionSettings resource.", + // "description": "Get the VirtualMachineThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetVirtualMachineThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateVirtualMachineThreatDetectionSettings for this purpose.", // "flatPath": "v1beta2/organizations/{organizationsId}/virtualMachineThreatDetectionSettings", // "httpMethod": "GET", // "id": "securitycenter.organizations.getVirtualMachineThreatDetectionSettings", @@ -8233,7 +8401,13 @@ type OrganizationsGetWebSecurityScannerSettingsCall struct { } // GetWebSecurityScannerSettings: Get the WebSecurityScannerSettings -// resource. +// resource. In the returned settings response, a missing field only +// indicates that it was not explicitly set, so no assumption should be +// made about these fields. In other words, +// GetWebSecurityScannerSettings does not calculate the effective +// service settings for the resource, which accounts for inherited +// settings and defaults. Instead, use +// CalculateWebSecurityScannerSettings for this purpose. // // - name: The name of the WebSecurityScannerSettings to retrieve. // Formats: * organizations/{organization}/webSecurityScannerSettings @@ -8344,7 +8518,7 @@ func (c *OrganizationsGetWebSecurityScannerSettingsCall) Do(opts ...googleapi.Ca } return ret, nil // { - // "description": "Get the WebSecurityScannerSettings resource.", + // "description": "Get the WebSecurityScannerSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetWebSecurityScannerSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateWebSecurityScannerSettings for this purpose.", // "flatPath": "v1beta2/organizations/{organizationsId}/webSecurityScannerSettings", // "httpMethod": "GET", // "id": "securitycenter.organizations.getWebSecurityScannerSettings", @@ -9347,6 +9521,12 @@ type OrganizationsContainerThreatDetectionSettingsCalculateCall struct { // Calculate: Calculates the effective ContainerThreatDetectionSettings // based on its level in the resource hierarchy and its settings. +// Settings provided closer to the target resource take precedence over +// those further away (e.g. folder will override organization level +// settings). The default SCC setting for the detector service defaults +// can be overridden at organization, folder and project levels. No +// assumptions should be made about the SCC defaults as it is considered +// an internal implementation detail. // // - name: The name of the ContainerThreatDetectionSettings to // calculate. Formats: * @@ -9460,7 +9640,7 @@ func (c *OrganizationsContainerThreatDetectionSettingsCalculateCall) Do(opts ... } return ret, nil // { - // "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/organizations/{organizationsId}/containerThreatDetectionSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.organizations.containerThreatDetectionSettings.calculate", @@ -9500,6 +9680,12 @@ type OrganizationsEventThreatDetectionSettingsCalculateCall struct { // Calculate: Calculates the effective EventThreatDetectionSettings // based on its level in the resource hierarchy and its settings. +// Settings provided closer to the target resource take precedence over +// those further away (e.g. folder will override organization level +// settings). The default SCC setting for the detector service defaults +// can be overridden at organization, folder and project levels. No +// assumptions should be made about the SCC defaults as it is considered +// an internal implementation detail. // // - name: The name of the EventThreatDetectionSettings to calculate. // Formats: * @@ -9611,7 +9797,7 @@ func (c *OrganizationsEventThreatDetectionSettingsCalculateCall) Do(opts ...goog } return ret, nil // { - // "description": "Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/organizations/{organizationsId}/eventThreatDetectionSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.organizations.eventThreatDetectionSettings.calculate", @@ -9651,7 +9837,12 @@ type OrganizationsRapidVulnerabilityDetectionSettingsCalculateCall struct { // Calculate: Calculates the effective // RapidVulnerabilityDetectionSettings based on its level in the -// resource hierarchy and its settings. +// resource hierarchy and its settings. Settings provided closer to the +// target resource take precedence over those further away (e.g. folder +// will override organization level settings). The default SCC setting +// for the detector service defaults can be overridden at organization, +// folder and project levels. No assumptions should be made about the +// SCC defaults as it is considered an internal implementation detail. // // - name: The name of the RapidVulnerabilityDetectionSettings to // calculate. Formats: * @@ -9764,7 +9955,7 @@ func (c *OrganizationsRapidVulnerabilityDetectionSettingsCalculateCall) Do(opts } return ret, nil // { - // "description": "Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/organizations/{organizationsId}/rapidVulnerabilityDetectionSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.organizations.rapidVulnerabilityDetectionSettings.calculate", @@ -9804,6 +9995,12 @@ type OrganizationsSecurityHealthAnalyticsSettingsCalculateCall struct { // Calculate: Calculates the effective SecurityHealthAnalyticsSettings // based on its level in the resource hierarchy and its settings. +// Settings provided closer to the target resource take precedence over +// those further away (e.g. folder will override organization level +// settings). The default SCC setting for the detector service defaults +// can be overridden at organization, folder and project levels. No +// assumptions should be made about the SCC defaults as it is considered +// an internal implementation detail. // // - name: The name of the SecurityHealthAnalyticsSettings to calculate. // Formats: * @@ -9915,7 +10112,7 @@ func (c *OrganizationsSecurityHealthAnalyticsSettingsCalculateCall) Do(opts ...g } return ret, nil // { - // "description": "Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/organizations/{organizationsId}/securityHealthAnalyticsSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.organizations.securityHealthAnalyticsSettings.calculate", @@ -9955,7 +10152,12 @@ type OrganizationsVirtualMachineThreatDetectionSettingsCalculateCall struct { // Calculate: Calculates the effective // VirtualMachineThreatDetectionSettings based on its level in the -// resource hierarchy and its settings. +// resource hierarchy and its settings. Settings provided closer to the +// target resource take precedence over those further away (e.g. folder +// will override organization level settings). The default SCC setting +// for the detector service defaults can be overridden at organization, +// folder and project levels. No assumptions should be made about the +// SCC defaults as it is considered an internal implementation detail. // // - name: The name of the VirtualMachineThreatDetectionSettings to // calculate. Formats: * @@ -10068,7 +10270,7 @@ func (c *OrganizationsVirtualMachineThreatDetectionSettingsCalculateCall) Do(opt } return ret, nil // { - // "description": "Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/organizations/{organizationsId}/virtualMachineThreatDetectionSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.organizations.virtualMachineThreatDetectionSettings.calculate", @@ -10107,7 +10309,13 @@ type OrganizationsWebSecurityScannerSettingsCalculateCall struct { } // Calculate: Calculates the effective WebSecurityScannerSettings based -// on its level in the resource hierarchy and its settings. +// on its level in the resource hierarchy and its settings. Settings +// provided closer to the target resource take precedence over those +// further away (e.g. folder will override organization level settings). +// The default SCC setting for the detector service defaults can be +// overridden at organization, folder and project levels. No assumptions +// should be made about the SCC defaults as it is considered an internal +// implementation detail. // // - name: The name of the WebSecurityScannerSettings to calculate. // Formats: * organizations/{organization}/webSecurityScannerSettings @@ -10218,7 +10426,7 @@ func (c *OrganizationsWebSecurityScannerSettingsCalculateCall) Do(opts ...google } return ret, nil // { - // "description": "Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/organizations/{organizationsId}/webSecurityScannerSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.organizations.webSecurityScannerSettings.calculate", @@ -10257,7 +10465,13 @@ type ProjectsGetContainerThreatDetectionSettingsCall struct { } // GetContainerThreatDetectionSettings: Get the -// ContainerThreatDetectionSettings resource. +// ContainerThreatDetectionSettings resource. In the returned settings +// response, a missing field only indicates that it was not explicitly +// set, so no assumption should be made about these fields. In other +// words, GetContainerThreatDetectionSettings does not calculate the +// effective service settings for the resource, which accounts for +// inherited settings and defaults. Instead, use +// CalculateContainerThreatDetectionSettings for this purpose. // // - name: The name of the ContainerThreatDetectionSettings to retrieve. // Formats: * @@ -10371,7 +10585,7 @@ func (c *ProjectsGetContainerThreatDetectionSettingsCall) Do(opts ...googleapi.C } return ret, nil // { - // "description": "Get the ContainerThreatDetectionSettings resource.", + // "description": "Get the ContainerThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetContainerThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateContainerThreatDetectionSettings for this purpose.", // "flatPath": "v1beta2/projects/{projectsId}/containerThreatDetectionSettings", // "httpMethod": "GET", // "id": "securitycenter.projects.getContainerThreatDetectionSettings", @@ -10410,7 +10624,13 @@ type ProjectsGetEventThreatDetectionSettingsCall struct { } // GetEventThreatDetectionSettings: Get the EventThreatDetectionSettings -// resource. +// resource. In the returned settings response, a missing field only +// indicates that it was not explicitly set, so no assumption should be +// made about these fields. In other words, +// GetEventThreatDetectionSettings does not calculate the effective +// service settings for the resource, which accounts for inherited +// settings and defaults. Instead, use +// CalculateEventThreatDetectionSettings for this purpose. // // - name: The name of the EventThreatDetectionSettings to retrieve. // Formats: * @@ -10522,7 +10742,7 @@ func (c *ProjectsGetEventThreatDetectionSettingsCall) Do(opts ...googleapi.CallO } return ret, nil // { - // "description": "Get the EventThreatDetectionSettings resource.", + // "description": "Get the EventThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetEventThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateEventThreatDetectionSettings for this purpose.", // "flatPath": "v1beta2/projects/{projectsId}/eventThreatDetectionSettings", // "httpMethod": "GET", // "id": "securitycenter.projects.getEventThreatDetectionSettings", @@ -10710,7 +10930,13 @@ type ProjectsGetRapidVulnerabilityDetectionSettingsCall struct { } // GetRapidVulnerabilityDetectionSettings: Get the -// RapidVulnerabilityDetectionSettings resource. +// RapidVulnerabilityDetectionSettings resource. In the returned +// settings response, a missing field only indicates that it was not +// explicitly set, so no assumption should be made about these fields. +// In other words, GetRapidVulnerabilityDetectionSettings does not +// calculate the effective service settings for the resource, which +// accounts for inherited settings and defaults. Instead, use +// CalculateRapidVulnerabilityDetectionSettings for this purpose. // // - name: The name of the RapidVulnerabilityDetectionSettings to // retrieve. Formats: * @@ -10823,7 +11049,7 @@ func (c *ProjectsGetRapidVulnerabilityDetectionSettingsCall) Do(opts ...googleap } return ret, nil // { - // "description": "Get the RapidVulnerabilityDetectionSettings resource.", + // "description": "Get the RapidVulnerabilityDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetRapidVulnerabilityDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateRapidVulnerabilityDetectionSettings for this purpose.", // "flatPath": "v1beta2/projects/{projectsId}/rapidVulnerabilityDetectionSettings", // "httpMethod": "GET", // "id": "securitycenter.projects.getRapidVulnerabilityDetectionSettings", @@ -11011,7 +11237,13 @@ type ProjectsGetSecurityHealthAnalyticsSettingsCall struct { } // GetSecurityHealthAnalyticsSettings: Get the -// SecurityHealthAnalyticsSettings resource. +// SecurityHealthAnalyticsSettings resource. In the returned settings +// response, a missing field only indicates that it was not explicitly +// set, so no assumption should be made about these fields. In other +// words, GetSecurityHealthAnalyticsSettings does not calculate the +// effective service settings for the resource, which accounts for +// inherited settings and defaults. Instead, use +// CalculateSecurityHealthAnalyticsSettings for this purpose. // // - name: The name of the SecurityHealthAnalyticsSettings to retrieve. // Formats: * @@ -11123,7 +11355,7 @@ func (c *ProjectsGetSecurityHealthAnalyticsSettingsCall) Do(opts ...googleapi.Ca } return ret, nil // { - // "description": "Get the SecurityHealthAnalyticsSettings resource.", + // "description": "Get the SecurityHealthAnalyticsSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetSecurityHealthAnalyticsSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateSecurityHealthAnalyticsSettings for this purpose.", // "flatPath": "v1beta2/projects/{projectsId}/securityHealthAnalyticsSettings", // "httpMethod": "GET", // "id": "securitycenter.projects.getSecurityHealthAnalyticsSettings", @@ -11162,7 +11394,13 @@ type ProjectsGetVirtualMachineThreatDetectionSettingsCall struct { } // GetVirtualMachineThreatDetectionSettings: Get the -// VirtualMachineThreatDetectionSettings resource. +// VirtualMachineThreatDetectionSettings resource. In the returned +// settings response, a missing field only indicates that it was not +// explicitly set, so no assumption should be made about these fields. +// In other words, GetVirtualMachineThreatDetectionSettings does not +// calculate the effective service settings for the resource, which +// accounts for inherited settings and defaults. Instead, use +// CalculateVirtualMachineThreatDetectionSettings for this purpose. // // - name: The name of the VirtualMachineThreatDetectionSettings to // retrieve. Formats: * @@ -11275,7 +11513,7 @@ func (c *ProjectsGetVirtualMachineThreatDetectionSettingsCall) Do(opts ...google } return ret, nil // { - // "description": "Get the VirtualMachineThreatDetectionSettings resource.", + // "description": "Get the VirtualMachineThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetVirtualMachineThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateVirtualMachineThreatDetectionSettings for this purpose.", // "flatPath": "v1beta2/projects/{projectsId}/virtualMachineThreatDetectionSettings", // "httpMethod": "GET", // "id": "securitycenter.projects.getVirtualMachineThreatDetectionSettings", @@ -11314,7 +11552,13 @@ type ProjectsGetWebSecurityScannerSettingsCall struct { } // GetWebSecurityScannerSettings: Get the WebSecurityScannerSettings -// resource. +// resource. In the returned settings response, a missing field only +// indicates that it was not explicitly set, so no assumption should be +// made about these fields. In other words, +// GetWebSecurityScannerSettings does not calculate the effective +// service settings for the resource, which accounts for inherited +// settings and defaults. Instead, use +// CalculateWebSecurityScannerSettings for this purpose. // // - name: The name of the WebSecurityScannerSettings to retrieve. // Formats: * organizations/{organization}/webSecurityScannerSettings @@ -11425,7 +11669,7 @@ func (c *ProjectsGetWebSecurityScannerSettingsCall) Do(opts ...googleapi.CallOpt } return ret, nil // { - // "description": "Get the WebSecurityScannerSettings resource.", + // "description": "Get the WebSecurityScannerSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetWebSecurityScannerSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateWebSecurityScannerSettings for this purpose.", // "flatPath": "v1beta2/projects/{projectsId}/webSecurityScannerSettings", // "httpMethod": "GET", // "id": "securitycenter.projects.getWebSecurityScannerSettings", @@ -12428,6 +12672,12 @@ type ProjectsContainerThreatDetectionSettingsCalculateCall struct { // Calculate: Calculates the effective ContainerThreatDetectionSettings // based on its level in the resource hierarchy and its settings. +// Settings provided closer to the target resource take precedence over +// those further away (e.g. folder will override organization level +// settings). The default SCC setting for the detector service defaults +// can be overridden at organization, folder and project levels. No +// assumptions should be made about the SCC defaults as it is considered +// an internal implementation detail. // // - name: The name of the ContainerThreatDetectionSettings to // calculate. Formats: * @@ -12541,7 +12791,7 @@ func (c *ProjectsContainerThreatDetectionSettingsCalculateCall) Do(opts ...googl } return ret, nil // { - // "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/projects/{projectsId}/containerThreatDetectionSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.projects.containerThreatDetectionSettings.calculate", @@ -12581,6 +12831,12 @@ type ProjectsEventThreatDetectionSettingsCalculateCall struct { // Calculate: Calculates the effective EventThreatDetectionSettings // based on its level in the resource hierarchy and its settings. +// Settings provided closer to the target resource take precedence over +// those further away (e.g. folder will override organization level +// settings). The default SCC setting for the detector service defaults +// can be overridden at organization, folder and project levels. No +// assumptions should be made about the SCC defaults as it is considered +// an internal implementation detail. // // - name: The name of the EventThreatDetectionSettings to calculate. // Formats: * @@ -12692,7 +12948,7 @@ func (c *ProjectsEventThreatDetectionSettingsCalculateCall) Do(opts ...googleapi } return ret, nil // { - // "description": "Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/projects/{projectsId}/eventThreatDetectionSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.projects.eventThreatDetectionSettings.calculate", @@ -12731,7 +12987,13 @@ type ProjectsLocationsClustersGetContainerThreatDetectionSettingsCall struct { } // GetContainerThreatDetectionSettings: Get the -// ContainerThreatDetectionSettings resource. +// ContainerThreatDetectionSettings resource. In the returned settings +// response, a missing field only indicates that it was not explicitly +// set, so no assumption should be made about these fields. In other +// words, GetContainerThreatDetectionSettings does not calculate the +// effective service settings for the resource, which accounts for +// inherited settings and defaults. Instead, use +// CalculateContainerThreatDetectionSettings for this purpose. // // - name: The name of the ContainerThreatDetectionSettings to retrieve. // Formats: * @@ -12845,7 +13107,7 @@ func (c *ProjectsLocationsClustersGetContainerThreatDetectionSettingsCall) Do(op } return ret, nil // { - // "description": "Get the ContainerThreatDetectionSettings resource.", + // "description": "Get the ContainerThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetContainerThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateContainerThreatDetectionSettings for this purpose.", // "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/containerThreatDetectionSettings", // "httpMethod": "GET", // "id": "securitycenter.projects.locations.clusters.getContainerThreatDetectionSettings", @@ -13047,6 +13309,12 @@ type ProjectsLocationsClustersContainerThreatDetectionSettingsCalculateCall stru // Calculate: Calculates the effective ContainerThreatDetectionSettings // based on its level in the resource hierarchy and its settings. +// Settings provided closer to the target resource take precedence over +// those further away (e.g. folder will override organization level +// settings). The default SCC setting for the detector service defaults +// can be overridden at organization, folder and project levels. No +// assumptions should be made about the SCC defaults as it is considered +// an internal implementation detail. // // - name: The name of the ContainerThreatDetectionSettings to // calculate. Formats: * @@ -13160,7 +13428,7 @@ func (c *ProjectsLocationsClustersContainerThreatDetectionSettingsCalculateCall) } return ret, nil // { - // "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/containerThreatDetectionSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.projects.locations.clusters.containerThreatDetectionSettings.calculate", @@ -13200,7 +13468,12 @@ type ProjectsRapidVulnerabilityDetectionSettingsCalculateCall struct { // Calculate: Calculates the effective // RapidVulnerabilityDetectionSettings based on its level in the -// resource hierarchy and its settings. +// resource hierarchy and its settings. Settings provided closer to the +// target resource take precedence over those further away (e.g. folder +// will override organization level settings). The default SCC setting +// for the detector service defaults can be overridden at organization, +// folder and project levels. No assumptions should be made about the +// SCC defaults as it is considered an internal implementation detail. // // - name: The name of the RapidVulnerabilityDetectionSettings to // calculate. Formats: * @@ -13313,7 +13586,7 @@ func (c *ProjectsRapidVulnerabilityDetectionSettingsCalculateCall) Do(opts ...go } return ret, nil // { - // "description": "Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/projects/{projectsId}/rapidVulnerabilityDetectionSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.projects.rapidVulnerabilityDetectionSettings.calculate", @@ -13353,6 +13626,12 @@ type ProjectsSecurityHealthAnalyticsSettingsCalculateCall struct { // Calculate: Calculates the effective SecurityHealthAnalyticsSettings // based on its level in the resource hierarchy and its settings. +// Settings provided closer to the target resource take precedence over +// those further away (e.g. folder will override organization level +// settings). The default SCC setting for the detector service defaults +// can be overridden at organization, folder and project levels. No +// assumptions should be made about the SCC defaults as it is considered +// an internal implementation detail. // // - name: The name of the SecurityHealthAnalyticsSettings to calculate. // Formats: * @@ -13464,7 +13743,7 @@ func (c *ProjectsSecurityHealthAnalyticsSettingsCalculateCall) Do(opts ...google } return ret, nil // { - // "description": "Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/projects/{projectsId}/securityHealthAnalyticsSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.projects.securityHealthAnalyticsSettings.calculate", @@ -13504,7 +13783,12 @@ type ProjectsVirtualMachineThreatDetectionSettingsCalculateCall struct { // Calculate: Calculates the effective // VirtualMachineThreatDetectionSettings based on its level in the -// resource hierarchy and its settings. +// resource hierarchy and its settings. Settings provided closer to the +// target resource take precedence over those further away (e.g. folder +// will override organization level settings). The default SCC setting +// for the detector service defaults can be overridden at organization, +// folder and project levels. No assumptions should be made about the +// SCC defaults as it is considered an internal implementation detail. // // - name: The name of the VirtualMachineThreatDetectionSettings to // calculate. Formats: * @@ -13617,7 +13901,7 @@ func (c *ProjectsVirtualMachineThreatDetectionSettingsCalculateCall) Do(opts ... } return ret, nil // { - // "description": "Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/projects/{projectsId}/virtualMachineThreatDetectionSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.projects.virtualMachineThreatDetectionSettings.calculate", @@ -13656,7 +13940,13 @@ type ProjectsWebSecurityScannerSettingsCalculateCall struct { } // Calculate: Calculates the effective WebSecurityScannerSettings based -// on its level in the resource hierarchy and its settings. +// on its level in the resource hierarchy and its settings. Settings +// provided closer to the target resource take precedence over those +// further away (e.g. folder will override organization level settings). +// The default SCC setting for the detector service defaults can be +// overridden at organization, folder and project levels. No assumptions +// should be made about the SCC defaults as it is considered an internal +// implementation detail. // // - name: The name of the WebSecurityScannerSettings to calculate. // Formats: * organizations/{organization}/webSecurityScannerSettings @@ -13767,7 +14057,7 @@ func (c *ProjectsWebSecurityScannerSettingsCalculateCall) Do(opts ...googleapi.C } return ret, nil // { - // "description": "Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings.", + // "description": "Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", // "flatPath": "v1beta2/projects/{projectsId}/webSecurityScannerSettings:calculate", // "httpMethod": "GET", // "id": "securitycenter.projects.webSecurityScannerSettings.calculate", diff --git a/servicemanagement/v1/servicemanagement-api.json b/servicemanagement/v1/servicemanagement-api.json index 2a151725fcb..123e605bd4b 100644 --- a/servicemanagement/v1/servicemanagement-api.json +++ b/servicemanagement/v1/servicemanagement-api.json @@ -829,7 +829,7 @@ } } }, - "revision": "20220913", + "revision": "20221125", "rootUrl": "https://servicemanagement.googleapis.com/", "schemas": { "Advice": { @@ -1074,6 +1074,11 @@ "description": "The JWT audience is used when generating a JWT ID token for the backend. This ID token will be added in the HTTP \"authorization\" header, and sent to the backend.", "type": "string" }, + "minDeadline": { + "description": "Deprecated, do not use.", + "format": "double", + "type": "number" + }, "operationDeadline": { "description": "The number of seconds to wait for the completion of a long running operation. The default is no deadline.", "format": "double", @@ -1171,6 +1176,105 @@ }, "type": "object" }, + "ClientLibrarySettings": { + "description": "Details about how and where to publish client libraries.", + "id": "ClientLibrarySettings", + "properties": { + "cppSettings": { + "$ref": "CppSettings", + "description": "Settings for C++ client libraries." + }, + "dotnetSettings": { + "$ref": "DotnetSettings", + "description": "Settings for .NET client libraries." + }, + "goSettings": { + "$ref": "GoSettings", + "description": "Settings for Go client libraries." + }, + "javaSettings": { + "$ref": "JavaSettings", + "description": "Settings for legacy Java features, supported in the Service YAML." + }, + "launchStage": { + "description": "Launch stage of this version of the API.", + "enum": [ + "LAUNCH_STAGE_UNSPECIFIED", + "UNIMPLEMENTED", + "PRELAUNCH", + "EARLY_ACCESS", + "ALPHA", + "BETA", + "GA", + "DEPRECATED" + ], + "enumDescriptions": [ + "Do not use this default value.", + "The feature is not yet implemented. Users can not use it.", + "Prelaunch features are hidden from users and are only visible internally.", + "Early Access features are limited to a closed group of testers. To use these features, you must sign up in advance and sign a Trusted Tester agreement (which includes confidentiality provisions). These features may be unstable, changed in backward-incompatible ways, and are not guaranteed to be released.", + "Alpha is a limited availability test for releases before they are cleared for widespread use. By Alpha, all significant design issues are resolved and we are in the process of verifying functionality. Alpha customers need to apply for access, agree to applicable terms, and have their projects allowlisted. Alpha releases don't have to be feature complete, no SLAs are provided, and there are no technical support obligations, but they will be far enough along that customers can actually use them in test environments or for limited-use tests -- just like they would in normal production cases.", + "Beta is the point at which we are ready to open a release for any customer to use. There are no SLA or technical support obligations in a Beta release. Products will be complete from a feature perspective, but may have some open outstanding issues. Beta releases are suitable for limited production use cases.", + "GA features are open to all developers and are considered stable and fully qualified for production use.", + "Deprecated features are scheduled to be shut down and removed. For more information, see the \"Deprecation Policy\" section of our [Terms of Service](https://cloud.google.com/terms/) and the [Google Cloud Platform Subject to the Deprecation Policy](https://cloud.google.com/terms/deprecation) documentation." + ], + "type": "string" + }, + "nodeSettings": { + "$ref": "NodeSettings", + "description": "Settings for Node client libraries." + }, + "phpSettings": { + "$ref": "PhpSettings", + "description": "Settings for PHP client libraries." + }, + "pythonSettings": { + "$ref": "PythonSettings", + "description": "Settings for Python client libraries." + }, + "restNumericEnums": { + "description": "When using transport=rest, the client request will encode enums as numbers rather than strings.", + "type": "boolean" + }, + "rubySettings": { + "$ref": "RubySettings", + "description": "Settings for Ruby client libraries." + }, + "version": { + "description": "Version of the API to apply these settings to.", + "type": "string" + } + }, + "type": "object" + }, + "CommonLanguageSettings": { + "description": "Required information for every language.", + "id": "CommonLanguageSettings", + "properties": { + "destinations": { + "description": "The destination where API teams want this client library to be published.", + "items": { + "enum": [ + "CLIENT_LIBRARY_DESTINATION_UNSPECIFIED", + "GITHUB", + "PACKAGE_MANAGER" + ], + "enumDescriptions": [ + "Client libraries will neither be generated nor published to package managers.", + "Generate the client library in a repo under github.com/googleapis, but don't publish it to package managers.", + "Publish the library to package managers like nuget.org and npmjs.com." + ], + "type": "string" + }, + "type": "array" + }, + "referenceDocsUri": { + "description": "Link to automatically generated reference documentation. Example: https://cloud.google.com/nodejs/docs/reference/asset/latest", + "type": "string" + } + }, + "type": "object" + }, "ConfigChange": { "description": "Output generated from semantically comparing two versions of a service configuration. Includes detailed information about a field that have changed with applicable advice about potential consequences for the change, such as backwards-incompatibility.", "id": "ConfigChange", @@ -1332,7 +1436,7 @@ "type": "object" }, "Control": { - "description": "Selects and configures the service controller used by the service. The service controller handles two things: - **What is allowed:** for each API request, Chemist checks the project status, activation status, abuse status, billing status, service status, location restrictions, VPC Service Controls, SuperQuota, and other policies. - **What has happened:** for each API response, Chemist reports the telemetry data to analytics, auditing, billing, eventing, logging, monitoring, sawmill, and tracing. Chemist also accepts telemetry data not associated with API traffic, such as billing metrics. Example: control: environment: servicecontrol.googleapis.com", + "description": "Selects and configures the service controller used by the service. Example: control: environment: servicecontrol.googleapis.com", "id": "Control", "properties": { "environment": { @@ -1342,6 +1446,17 @@ }, "type": "object" }, + "CppSettings": { + "description": "Settings for C++ client libraries.", + "id": "CppSettings", + "properties": { + "common": { + "$ref": "CommonLanguageSettings", + "description": "Some settings." + } + }, + "type": "object" + }, "CustomError": { "description": "Customize service error responses. For example, list any service specific protobuf types that can appear in error detail lists of error responses. Example: custom_error: types: - google.foo.v1.CustomError - google.foo.v1.AnotherError", "id": "CustomError", @@ -1482,6 +1597,17 @@ }, "type": "object" }, + "DotnetSettings": { + "description": "Settings for Dotnet client libraries.", + "id": "DotnetSettings", + "properties": { + "common": { + "$ref": "CommonLanguageSettings", + "description": "Some settings." + } + }, + "type": "object" + }, "EnableServiceResponse": { "description": "Operation payload for EnableService method.", "id": "EnableServiceResponse", @@ -1492,6 +1618,13 @@ "description": "`Endpoint` describes a network address of a service that serves a set of APIs. It is commonly known as a service endpoint. A service may expose any number of service endpoints, and all service endpoints share the same service definition, such as quota limits and monitoring metrics. Example: type: google.api.Service name: library-example.googleapis.com endpoints: # Declares network address `https://library-example.googleapis.com` # for service `library-example.googleapis.com`. The `https` scheme # is implicit for all service endpoints. Other schemes may be # supported in the future. - name: library-example.googleapis.com allow_cors: false - name: content-staging-library-example.googleapis.com # Allows HTTP OPTIONS calls to be passed to the API frontend, for it # to decide whether the subsequent cross-origin request is allowed # to proceed. allow_cors: true", "id": "Endpoint", "properties": { + "aliases": { + "description": "Unimplemented. Dot not use. DEPRECATED: This field is no longer supported. Instead of using aliases, please specify multiple google.api.Endpoint for each of the intended aliases. Additional names that this endpoint will be hosted on.", + "items": { + "type": "string" + }, + "type": "array" + }, "allowCors": { "description": "Allowing [CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka cross-domain traffic, would allow the backends served from this endpoint to receive and respond to HTTP OPTIONS requests. The response will be used by the browser to determine whether the subsequent cross-origin request is allowed to proceed.", "type": "boolean" @@ -1790,6 +1923,17 @@ }, "type": "object" }, + "GoSettings": { + "description": "Settings for Go client libraries.", + "id": "GoSettings", + "properties": { + "common": { + "$ref": "CommonLanguageSettings", + "description": "Some settings." + } + }, + "type": "object" + }, "Http": { "description": "Defines the HTTP configuration for an API service. It contains a list of HttpRule, each specifying the mapping of an RPC method to one or more HTTP REST API methods.", "id": "Http", @@ -1858,6 +2002,28 @@ }, "type": "object" }, + "JavaSettings": { + "description": "Settings for Java client libraries.", + "id": "JavaSettings", + "properties": { + "common": { + "$ref": "CommonLanguageSettings", + "description": "Some settings." + }, + "libraryPackage": { + "description": "The package name to use in Java. Clobbers the java_package option set in the protobuf. This should be used **only** by APIs who have already set the language_settings.java.package_name\" field in gapic.yaml. API teams should use the protobuf java_package option where possible. Example of a YAML configuration:: publishing: java_settings: library_package: com.google.cloud.pubsub.v1", + "type": "string" + }, + "serviceClassNames": { + "additionalProperties": { + "type": "string" + }, + "description": "Configure the Java class name to use instead of the service's for its corresponding generated GAPIC client. Keys are fully-qualified service names as they appear in the protobuf (including the full the language_settings.java.interface_names\" field in gapic.yaml. API teams should otherwise use the service name as it appears in the protobuf. Example of a YAML configuration:: publishing: java_settings: service_class_names: - google.pubsub.v1.Publisher: TopicAdmin - google.pubsub.v1.Subscriber: SubscriptionAdmin", + "type": "object" + } + }, + "type": "object" + }, "JwtLocation": { "description": "Specifies a location to extract JWT from an API request.", "id": "JwtLocation", @@ -2047,6 +2213,33 @@ }, "type": "object" }, + "LongRunning": { + "description": "Describes settings to use when generating API methods that use the long-running operation pattern. All default values below are from those used in the client library generators (e.g. [Java](https://github.com/googleapis/gapic-generator-java/blob/04c2faa191a9b5a10b92392fe8482279c4404803/src/main/java/com/google/api/generator/gapic/composer/common/RetrySettingsComposer.java)).", + "id": "LongRunning", + "properties": { + "initialPollDelay": { + "description": "Initial delay after which the first poll request will be made. Default value: 5 seconds.", + "format": "google-duration", + "type": "string" + }, + "maxPollDelay": { + "description": "Maximum time between two subsequent poll requests. Default value: 45 seconds.", + "format": "google-duration", + "type": "string" + }, + "pollDelayMultiplier": { + "description": "Multiplier to gradually increase delay between subsequent polls until it reaches max_poll_delay. Default value: 1.5.", + "format": "float", + "type": "number" + }, + "totalPollTimeout": { + "description": "Total polling timeout. Default value: 5 minutes.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, "ManagedService": { "description": "The full representation of a Service that is managed by Google Service Management.", "id": "ManagedService", @@ -2108,6 +2301,21 @@ }, "type": "object" }, + "MethodSettings": { + "description": "Describes the generator configuration for a method.", + "id": "MethodSettings", + "properties": { + "longRunning": { + "$ref": "LongRunning", + "description": "Describes settings to use for long-running operations when generating API methods for RPCs. Complements RPCs that use the annotations in google/longrunning/operations.proto. Example of a YAML configuration:: publishing: method_behavior: - selector: CreateAdDomain long_running: initial_poll_delay: seconds: 60 # 1 minute poll_delay_multiplier: 1.5 max_poll_delay: seconds: 360 # 6 minutes total_poll_timeout: seconds: 54000 # 90 minutes" + }, + "selector": { + "description": "The fully qualified name of the method, for which the options below apply. This is used to find the method to apply the options.", + "type": "string" + } + }, + "type": "object" + }, "MetricDescriptor": { "description": "Defines a metric type and its schema. Once a metric descriptor is created, deleting or altering it stops data collection and makes the metric type's existing data unusable. ", "id": "MetricDescriptor", @@ -2383,6 +2591,17 @@ }, "type": "object" }, + "NodeSettings": { + "description": "Settings for Node client libraries.", + "id": "NodeSettings", + "properties": { + "common": { + "$ref": "CommonLanguageSettings", + "description": "Some settings." + } + }, + "type": "object" + }, "OAuthRequirements": { "description": "OAuth scopes are a way to define data and permissions on data. For example, there are scopes defined for \"Read-only access to Google Calendar\" and \"Access to Cloud Platform\". Users can consent to a scope for an application, giving it permission to access that data on their behalf. OAuth scope specifications should be fairly coarse grained; a user will need to see and understand the text description of what your scope means. In most cases: use one or at most two OAuth scopes for an entire family of products. If your product has multiple APIs, you should probably be sharing the OAuth scope across all of those APIs. When you need finer grained OAuth consent screens: talk with your product management about how developers will use them in practice. Please note that even though each of the canonical scopes is enough for a request to be accepted and passed to the backend, a request can still fail due to the backend requiring additional scopes or permissions.", "id": "OAuthRequirements", @@ -2516,6 +2735,17 @@ }, "type": "object" }, + "PhpSettings": { + "description": "Settings for Php client libraries.", + "id": "PhpSettings", + "properties": { + "common": { + "$ref": "CommonLanguageSettings", + "description": "Some settings." + } + }, + "type": "object" + }, "Policy": { "description": "An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** { \"bindings\": [ { \"role\": \"roles/resourcemanager.organizationAdmin\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-project-id@appspot.gserviceaccount.com\" ] }, { \"role\": \"roles/resourcemanager.organizationViewer\", \"members\": [ \"user:eve@example.com\" ], \"condition\": { \"title\": \"expirable access\", \"description\": \"Does not grant access after Sep 2020\", \"expression\": \"request.time \u003c timestamp('2020-10-01T00:00:00.000Z')\", } } ], \"etag\": \"BwWWja0YfJA=\", \"version\": 3 } **YAML example:** bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time \u003c timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a description of IAM and its features, see the [IAM documentation](https://cloud.google.com/iam/docs/).", "id": "Policy", @@ -2547,6 +2777,83 @@ }, "type": "object" }, + "Publishing": { + "description": "This message configures the settings for publishing [Google Cloud Client libraries](https://cloud.google.com/apis/docs/cloud-client-libraries) generated from the service config.", + "id": "Publishing", + "properties": { + "apiShortName": { + "description": "Used as a tracking tag when collecting data about the APIs developer relations artifacts like docs, packages delivered to package managers, etc. Example: \"speech\".", + "type": "string" + }, + "codeownerGithubTeams": { + "description": "GitHub teams to be added to CODEOWNERS in the directory in GitHub containing source code for the client libraries for this API.", + "items": { + "type": "string" + }, + "type": "array" + }, + "docTagPrefix": { + "description": "A prefix used in sample code when demarking regions to be included in documentation.", + "type": "string" + }, + "documentationUri": { + "description": "Link to product home page. Example: https://cloud.google.com/asset-inventory/docs/overview", + "type": "string" + }, + "githubLabel": { + "description": "GitHub label to apply to issues and pull requests opened for this API.", + "type": "string" + }, + "librarySettings": { + "description": "Client library settings. If the same version string appears multiple times in this list, then the last one wins. Settings from earlier settings with the same version string are discarded.", + "items": { + "$ref": "ClientLibrarySettings" + }, + "type": "array" + }, + "methodSettings": { + "description": "A list of API method settings, e.g. the behavior for methods that use the long-running operation pattern.", + "items": { + "$ref": "MethodSettings" + }, + "type": "array" + }, + "newIssueUri": { + "description": "Link to a place that API users can report issues. Example: https://issuetracker.google.com/issues/new?component=190865\u0026template=1161103", + "type": "string" + }, + "organization": { + "description": "For whom the client library is being published.", + "enum": [ + "CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED", + "CLOUD", + "ADS", + "PHOTOS", + "STREET_VIEW" + ], + "enumDescriptions": [ + "Not useful.", + "Google Cloud Platform Org.", + "Ads (Advertising) Org.", + "Photos Org.", + "Street View Org." + ], + "type": "string" + } + }, + "type": "object" + }, + "PythonSettings": { + "description": "Settings for Python client libraries.", + "id": "PythonSettings", + "properties": { + "common": { + "$ref": "CommonLanguageSettings", + "description": "Some settings." + } + }, + "type": "object" + }, "Quota": { "description": "Quota configuration helps to achieve fairness and budgeting in service usage. The metric based quota configuration works this way: - The service configuration defines a set of metrics. - For API calls, the quota.metric_rules maps methods to metrics with corresponding costs. - The quota.limits defines limits on the metrics, which will be used for quota checks at runtime. An example quota configuration in yaml format: quota: limits: - name: apiWriteQpsPerProject metric: library.googleapis.com/write_calls unit: \"1/min/{project}\" # rate limit for consumer projects values: STANDARD: 10000 (The metric rules bind all methods to the read_calls metric, except for the UpdateBook and DeleteBook methods. These two methods are mapped to the write_calls metric, with the UpdateBook method consuming at twice rate as the DeleteBook method.) metric_rules: - selector: \"*\" metric_costs: library.googleapis.com/read_calls: 1 - selector: google.example.library.v1.LibraryService.UpdateBook metric_costs: library.googleapis.com/write_calls: 2 - selector: google.example.library.v1.LibraryService.DeleteBook metric_costs: library.googleapis.com/write_calls: 1 Corresponding Metric definition: metrics: - name: library.googleapis.com/read_calls display_name: Read requests metric_kind: DELTA value_type: INT64 - name: library.googleapis.com/write_calls display_name: Write requests metric_kind: DELTA value_type: INT64 ", "id": "Quota", @@ -2691,6 +2998,17 @@ }, "type": "object" }, + "RubySettings": { + "description": "Settings for Ruby client libraries.", + "id": "RubySettings", + "properties": { + "common": { + "$ref": "CommonLanguageSettings", + "description": "Some settings." + } + }, + "type": "object" + }, "Service": { "description": "`Service` is the root object of Google API service configuration (service config). It describes the basic information about a logical service, such as the service name and the user-facing title, and delegates other aspects to sub-sections. Each sub-section is either a proto message or a repeated proto message that configures a specific aspect, such as auth. For more information, see each proto message definition. Example: type: google.api.Service name: calendar.googleapis.com title: Google Calendar API apis: - name: google.calendar.v3.Calendar visibility: rules: - selector: \"google.calendar.v3.*\" restriction: PREVIEW backend: rules: - selector: \"google.calendar.v3.*\" address: calendar.example.com authentication: providers: - id: google_calendar_auth jwks_uri: https://www.googleapis.com/oauth2/v1/certs issuer: https://securetoken.google.com rules: - selector: \"*\" requirements: provider_id: google_calendar_auth", "id": "Service", @@ -2794,6 +3112,10 @@ "description": "The Google project that owns this service.", "type": "string" }, + "publishing": { + "$ref": "Publishing", + "description": "Settings for [Google Cloud Client libraries](https://cloud.google.com/apis/docs/cloud-client-libraries) generated from APIs defined as protocol buffers." + }, "quota": { "$ref": "Quota", "description": "Quota configuration." diff --git a/servicemanagement/v1/servicemanagement-gen.go b/servicemanagement/v1/servicemanagement-gen.go index 2a32c1856e0..313ecf9a4d4 100644 --- a/servicemanagement/v1/servicemanagement-gen.go +++ b/servicemanagement/v1/servicemanagement-gen.go @@ -688,6 +688,9 @@ type BackendRule struct { // "authorization" header, and sent to the backend. JwtAudience string `json:"jwtAudience,omitempty"` + // MinDeadline: Deprecated, do not use. + MinDeadline float64 `json:"minDeadline,omitempty"` + // OperationDeadline: The number of seconds to wait for the completion // of a long running operation. The default is no deadline. OperationDeadline float64 `json:"operationDeadline,omitempty"` @@ -763,6 +766,7 @@ func (s *BackendRule) UnmarshalJSON(data []byte) error { type NoMethod BackendRule var s1 struct { Deadline gensupport.JSONFloat64 `json:"deadline"` + MinDeadline gensupport.JSONFloat64 `json:"minDeadline"` OperationDeadline gensupport.JSONFloat64 `json:"operationDeadline"` *NoMethod } @@ -771,6 +775,7 @@ func (s *BackendRule) UnmarshalJSON(data []byte) error { return err } s.Deadline = float64(s1.Deadline) + s.MinDeadline = float64(s1.MinDeadline) s.OperationDeadline = float64(s1.OperationDeadline) return nil } @@ -970,6 +975,143 @@ func (s *ChangeReport) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ClientLibrarySettings: Details about how and where to publish client +// libraries. +type ClientLibrarySettings struct { + // CppSettings: Settings for C++ client libraries. + CppSettings *CppSettings `json:"cppSettings,omitempty"` + + // DotnetSettings: Settings for .NET client libraries. + DotnetSettings *DotnetSettings `json:"dotnetSettings,omitempty"` + + // GoSettings: Settings for Go client libraries. + GoSettings *GoSettings `json:"goSettings,omitempty"` + + // JavaSettings: Settings for legacy Java features, supported in the + // Service YAML. + JavaSettings *JavaSettings `json:"javaSettings,omitempty"` + + // LaunchStage: Launch stage of this version of the API. + // + // Possible values: + // "LAUNCH_STAGE_UNSPECIFIED" - Do not use this default value. + // "UNIMPLEMENTED" - The feature is not yet implemented. Users can not + // use it. + // "PRELAUNCH" - Prelaunch features are hidden from users and are only + // visible internally. + // "EARLY_ACCESS" - Early Access features are limited to a closed + // group of testers. To use these features, you must sign up in advance + // and sign a Trusted Tester agreement (which includes confidentiality + // provisions). These features may be unstable, changed in + // backward-incompatible ways, and are not guaranteed to be released. + // "ALPHA" - Alpha is a limited availability test for releases before + // they are cleared for widespread use. By Alpha, all significant design + // issues are resolved and we are in the process of verifying + // functionality. Alpha customers need to apply for access, agree to + // applicable terms, and have their projects allowlisted. Alpha releases + // don't have to be feature complete, no SLAs are provided, and there + // are no technical support obligations, but they will be far enough + // along that customers can actually use them in test environments or + // for limited-use tests -- just like they would in normal production + // cases. + // "BETA" - Beta is the point at which we are ready to open a release + // for any customer to use. There are no SLA or technical support + // obligations in a Beta release. Products will be complete from a + // feature perspective, but may have some open outstanding issues. Beta + // releases are suitable for limited production use cases. + // "GA" - GA features are open to all developers and are considered + // stable and fully qualified for production use. + // "DEPRECATED" - Deprecated features are scheduled to be shut down + // and removed. For more information, see the "Deprecation Policy" + // section of our [Terms of Service](https://cloud.google.com/terms/) + // and the [Google Cloud Platform Subject to the Deprecation + // Policy](https://cloud.google.com/terms/deprecation) documentation. + LaunchStage string `json:"launchStage,omitempty"` + + // NodeSettings: Settings for Node client libraries. + NodeSettings *NodeSettings `json:"nodeSettings,omitempty"` + + // PhpSettings: Settings for PHP client libraries. + PhpSettings *PhpSettings `json:"phpSettings,omitempty"` + + // PythonSettings: Settings for Python client libraries. + PythonSettings *PythonSettings `json:"pythonSettings,omitempty"` + + // RestNumericEnums: When using transport=rest, the client request will + // encode enums as numbers rather than strings. + RestNumericEnums bool `json:"restNumericEnums,omitempty"` + + // RubySettings: Settings for Ruby client libraries. + RubySettings *RubySettings `json:"rubySettings,omitempty"` + + // Version: Version of the API to apply these settings to. + Version string `json:"version,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CppSettings") 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. "CppSettings") 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 *ClientLibrarySettings) MarshalJSON() ([]byte, error) { + type NoMethod ClientLibrarySettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CommonLanguageSettings: Required information for every language. +type CommonLanguageSettings struct { + // Destinations: The destination where API teams want this client + // library to be published. + // + // Possible values: + // "CLIENT_LIBRARY_DESTINATION_UNSPECIFIED" - Client libraries will + // neither be generated nor published to package managers. + // "GITHUB" - Generate the client library in a repo under + // github.com/googleapis, but don't publish it to package managers. + // "PACKAGE_MANAGER" - Publish the library to package managers like + // nuget.org and npmjs.com. + Destinations []string `json:"destinations,omitempty"` + + // ReferenceDocsUri: Link to automatically generated reference + // documentation. Example: + // https://cloud.google.com/nodejs/docs/reference/asset/latest + ReferenceDocsUri string `json:"referenceDocsUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Destinations") 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. "Destinations") 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 *CommonLanguageSettings) MarshalJSON() ([]byte, error) { + type NoMethod CommonLanguageSettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ConfigChange: Output generated from semantically comparing two // versions of a service configuration. Includes detailed information // about a field that have changed with applicable advice about @@ -1245,15 +1387,7 @@ func (s *ContextRule) MarshalJSON() ([]byte, error) { } // Control: Selects and configures the service controller used by the -// service. The service controller handles two things: - **What is -// allowed:** for each API request, Chemist checks the project status, -// activation status, abuse status, billing status, service status, -// location restrictions, VPC Service Controls, SuperQuota, and other -// policies. - **What has happened:** for each API response, Chemist -// reports the telemetry data to analytics, auditing, billing, eventing, -// logging, monitoring, sawmill, and tracing. Chemist also accepts -// telemetry data not associated with API traffic, such as billing -// metrics. Example: control: environment: servicecontrol.googleapis.com +// service. Example: control: environment: servicecontrol.googleapis.com type Control struct { // Environment: The service controller environment to use. If empty, no // control plane feature (like quota and billing) will be enabled. The @@ -1283,6 +1417,34 @@ func (s *Control) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// CppSettings: Settings for C++ client libraries. +type CppSettings struct { + // Common: Some settings. + Common *CommonLanguageSettings `json:"common,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Common") 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. "Common") 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 *CppSettings) MarshalJSON() ([]byte, error) { + type NoMethod CppSettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // CustomError: Customize service error responses. For example, list any // service specific protobuf types that can appear in error detail lists // of error responses. Example: custom_error: types: - @@ -1566,6 +1728,34 @@ func (s *DocumentationRule) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// DotnetSettings: Settings for Dotnet client libraries. +type DotnetSettings struct { + // Common: Some settings. + Common *CommonLanguageSettings `json:"common,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Common") 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. "Common") 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 *DotnetSettings) MarshalJSON() ([]byte, error) { + type NoMethod DotnetSettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // EnableServiceResponse: Operation payload for EnableService method. type EnableServiceResponse struct { } @@ -1585,6 +1775,12 @@ type EnableServiceResponse struct { // whether the subsequent cross-origin request is allowed # to proceed. // allow_cors: true type Endpoint struct { + // Aliases: Unimplemented. Dot not use. DEPRECATED: This field is no + // longer supported. Instead of using aliases, please specify multiple + // google.api.Endpoint for each of the intended aliases. Additional + // names that this endpoint will be hosted on. + Aliases []string `json:"aliases,omitempty"` + // AllowCors: Allowing CORS // (https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka // cross-domain traffic, would allow the backends served from this @@ -1603,7 +1799,7 @@ type Endpoint struct { // "8.8.8.8" or "myservice.appspot.com". Target string `json:"target,omitempty"` - // ForceSendFields is a list of field names (e.g. "AllowCors") to + // ForceSendFields is a list of field names (e.g. "Aliases") 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 @@ -1611,7 +1807,7 @@ type Endpoint struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "AllowCors") to include in + // NullFields is a list of field names (e.g. "Aliases") 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 @@ -2037,6 +2233,34 @@ func (s *GetPolicyOptions) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoSettings: Settings for Go client libraries. +type GoSettings struct { + // Common: Some settings. + Common *CommonLanguageSettings `json:"common,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Common") 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. "Common") 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 *GoSettings) MarshalJSON() ([]byte, error) { + type NoMethod GoSettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Http: Defines the HTTP configuration for an API service. It contains // a list of HttpRule, each specifying the mapping of an RPC method to // one or more HTTP REST API methods. @@ -2301,6 +2525,53 @@ func (s *HttpRule) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// JavaSettings: Settings for Java client libraries. +type JavaSettings struct { + // Common: Some settings. + Common *CommonLanguageSettings `json:"common,omitempty"` + + // LibraryPackage: The package name to use in Java. Clobbers the + // java_package option set in the protobuf. This should be used **only** + // by APIs who have already set the language_settings.java.package_name" + // field in gapic.yaml. API teams should use the protobuf java_package + // option where possible. Example of a YAML configuration:: publishing: + // java_settings: library_package: com.google.cloud.pubsub.v1 + LibraryPackage string `json:"libraryPackage,omitempty"` + + // ServiceClassNames: Configure the Java class name to use instead of + // the service's for its corresponding generated GAPIC client. Keys are + // fully-qualified service names as they appear in the protobuf + // (including the full the language_settings.java.interface_names" field + // in gapic.yaml. API teams should otherwise use the service name as it + // appears in the protobuf. Example of a YAML configuration:: + // publishing: java_settings: service_class_names: - + // google.pubsub.v1.Publisher: TopicAdmin - google.pubsub.v1.Subscriber: + // SubscriptionAdmin + ServiceClassNames map[string]string `json:"serviceClassNames,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Common") 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. "Common") 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 *JavaSettings) MarshalJSON() ([]byte, error) { + type NoMethod JavaSettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // JwtLocation: Specifies a location to extract JWT from an API request. type JwtLocation struct { // Cookie: Specifies cookie name to extract JWT token. @@ -2663,6 +2934,64 @@ func (s *LoggingDestination) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// LongRunning: Describes settings to use when generating API methods +// that use the long-running operation pattern. All default values below +// are from those used in the client library generators (e.g. Java +// (https://github.com/googleapis/gapic-generator-java/blob/04c2faa191a9b5a10b92392fe8482279c4404803/src/main/java/com/google/api/generator/gapic/composer/common/RetrySettingsComposer.java)). +type LongRunning struct { + // InitialPollDelay: Initial delay after which the first poll request + // will be made. Default value: 5 seconds. + InitialPollDelay string `json:"initialPollDelay,omitempty"` + + // MaxPollDelay: Maximum time between two subsequent poll requests. + // Default value: 45 seconds. + MaxPollDelay string `json:"maxPollDelay,omitempty"` + + // PollDelayMultiplier: Multiplier to gradually increase delay between + // subsequent polls until it reaches max_poll_delay. Default value: 1.5. + PollDelayMultiplier float64 `json:"pollDelayMultiplier,omitempty"` + + // TotalPollTimeout: Total polling timeout. Default value: 5 minutes. + TotalPollTimeout string `json:"totalPollTimeout,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InitialPollDelay") 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. "InitialPollDelay") 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 *LongRunning) MarshalJSON() ([]byte, error) { + type NoMethod LongRunning + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *LongRunning) UnmarshalJSON(data []byte) error { + type NoMethod LongRunning + var s1 struct { + PollDelayMultiplier gensupport.JSONFloat64 `json:"pollDelayMultiplier"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.PollDelayMultiplier = float64(s1.PollDelayMultiplier) + return nil +} + // ManagedService: The full representation of a Service that is managed // by Google Service Management. type ManagedService struct { @@ -2753,6 +3082,45 @@ func (s *Method) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// MethodSettings: Describes the generator configuration for a method. +type MethodSettings struct { + // LongRunning: Describes settings to use for long-running operations + // when generating API methods for RPCs. Complements RPCs that use the + // annotations in google/longrunning/operations.proto. Example of a YAML + // configuration:: publishing: method_behavior: - selector: + // CreateAdDomain long_running: initial_poll_delay: seconds: 60 # 1 + // minute poll_delay_multiplier: 1.5 max_poll_delay: seconds: 360 # 6 + // minutes total_poll_timeout: seconds: 54000 # 90 minutes + LongRunning *LongRunning `json:"longRunning,omitempty"` + + // Selector: The fully qualified name of the method, for which the + // options below apply. This is used to find the method to apply the + // options. + Selector string `json:"selector,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LongRunning") 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. "LongRunning") 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 *MethodSettings) MarshalJSON() ([]byte, error) { + type NoMethod MethodSettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // MetricDescriptor: Defines a metric type and its schema. Once a metric // descriptor is created, deleting or altering it stops data collection // and makes the metric type's existing data unusable. @@ -3330,6 +3698,34 @@ func (s *MonitoringDestination) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// NodeSettings: Settings for Node client libraries. +type NodeSettings struct { + // Common: Some settings. + Common *CommonLanguageSettings `json:"common,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Common") 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. "Common") 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 *NodeSettings) MarshalJSON() ([]byte, error) { + type NoMethod NodeSettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // OAuthRequirements: OAuth scopes are a way to define data and // permissions on data. For example, there are scopes defined for // "Read-only access to Google Calendar" and "Access to Cloud Platform". @@ -3609,6 +4005,34 @@ func (s *Page) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// PhpSettings: Settings for Php client libraries. +type PhpSettings struct { + // Common: Some settings. + Common *CommonLanguageSettings `json:"common,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Common") 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. "Common") 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 *PhpSettings) MarshalJSON() ([]byte, error) { + type NoMethod PhpSettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Policy: An Identity and Access Management (IAM) policy, which // specifies access controls for Google Cloud resources. A `Policy` is a // collection of `bindings`. A `binding` binds one or more `members`, or @@ -3719,6 +4143,108 @@ func (s *Policy) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Publishing: This message configures the settings for publishing +// Google Cloud Client libraries +// (https://cloud.google.com/apis/docs/cloud-client-libraries) generated +// from the service config. +type Publishing struct { + // ApiShortName: Used as a tracking tag when collecting data about the + // APIs developer relations artifacts like docs, packages delivered to + // package managers, etc. Example: "speech". + ApiShortName string `json:"apiShortName,omitempty"` + + // CodeownerGithubTeams: GitHub teams to be added to CODEOWNERS in the + // directory in GitHub containing source code for the client libraries + // for this API. + CodeownerGithubTeams []string `json:"codeownerGithubTeams,omitempty"` + + // DocTagPrefix: A prefix used in sample code when demarking regions to + // be included in documentation. + DocTagPrefix string `json:"docTagPrefix,omitempty"` + + // DocumentationUri: Link to product home page. Example: + // https://cloud.google.com/asset-inventory/docs/overview + DocumentationUri string `json:"documentationUri,omitempty"` + + // GithubLabel: GitHub label to apply to issues and pull requests opened + // for this API. + GithubLabel string `json:"githubLabel,omitempty"` + + // LibrarySettings: Client library settings. If the same version string + // appears multiple times in this list, then the last one wins. Settings + // from earlier settings with the same version string are discarded. + LibrarySettings []*ClientLibrarySettings `json:"librarySettings,omitempty"` + + // MethodSettings: A list of API method settings, e.g. the behavior for + // methods that use the long-running operation pattern. + MethodSettings []*MethodSettings `json:"methodSettings,omitempty"` + + // NewIssueUri: Link to a place that API users can report issues. + // Example: + // https://issuetracker.google.com/issues/new?component=190865&template=1161103 + NewIssueUri string `json:"newIssueUri,omitempty"` + + // Organization: For whom the client library is being published. + // + // Possible values: + // "CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED" - Not useful. + // "CLOUD" - Google Cloud Platform Org. + // "ADS" - Ads (Advertising) Org. + // "PHOTOS" - Photos Org. + // "STREET_VIEW" - Street View Org. + Organization string `json:"organization,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ApiShortName") 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. "ApiShortName") 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 *Publishing) MarshalJSON() ([]byte, error) { + type NoMethod Publishing + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// PythonSettings: Settings for Python client libraries. +type PythonSettings struct { + // Common: Some settings. + Common *CommonLanguageSettings `json:"common,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Common") 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. "Common") 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 *PythonSettings) MarshalJSON() ([]byte, error) { + type NoMethod PythonSettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Quota: Quota configuration helps to achieve fairness and budgeting in // service usage. The metric based quota configuration works this way: - // The service configuration defines a set of metrics. - For API calls, @@ -3989,6 +4515,34 @@ func (s *Rollout) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// RubySettings: Settings for Ruby client libraries. +type RubySettings struct { + // Common: Some settings. + Common *CommonLanguageSettings `json:"common,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Common") 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. "Common") 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 *RubySettings) MarshalJSON() ([]byte, error) { + type NoMethod RubySettings + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Service: `Service` is the root object of Google API service // configuration (service config). It describes the basic information // about a logical service, such as the service name and the user-facing @@ -4085,6 +4639,11 @@ type Service struct { // ProducerProjectId: The Google project that owns this service. ProducerProjectId string `json:"producerProjectId,omitempty"` + // Publishing: Settings for Google Cloud Client libraries + // (https://cloud.google.com/apis/docs/cloud-client-libraries) generated + // from APIs defined as protocol buffers. + Publishing *Publishing `json:"publishing,omitempty"` + // Quota: Quota configuration. Quota *Quota `json:"quota,omitempty"` diff --git a/testing/v1/testing-api.json b/testing/v1/testing-api.json index 12b0a9b31ea..ceffc9e1308 100644 --- a/testing/v1/testing-api.json +++ b/testing/v1/testing-api.json @@ -282,7 +282,7 @@ } } }, - "revision": "20221108", + "revision": "20221122", "rootUrl": "https://testing.googleapis.com/", "schemas": { "Account": { @@ -1867,7 +1867,8 @@ "NO_CODE_APK", "INVALID_INPUT_APK", "INVALID_APK_PREVIEW_SDK", - "MATRIX_TOO_LARGE" + "MATRIX_TOO_LARGE", + "DEVICE_QUOTA_EXCEEDED" ], "enumDescriptions": [ "Do not use. For proto versioning only.", @@ -1905,7 +1906,8 @@ "APK contains no code. See also https://developer.android.com/guide/topics/manifest/application-element.html#code", "Either the provided input APK path was malformed, the APK file does not exist, or the user does not have permission to access the APK file.", "APK is built for a preview SDK which is unsupported", - "The matrix expanded to contain too many executions." + "The matrix expanded to contain too many executions.", + "Not enough device quota to run the executions in this matrix." ], "type": "string" }, diff --git a/testing/v1/testing-gen.go b/testing/v1/testing-gen.go index bb1f6d8898a..6f1dd06b59d 100644 --- a/testing/v1/testing-gen.go +++ b/testing/v1/testing-gen.go @@ -2802,6 +2802,8 @@ type TestMatrix struct { // unsupported // "MATRIX_TOO_LARGE" - The matrix expanded to contain too many // executions. + // "DEVICE_QUOTA_EXCEEDED" - Not enough device quota to run the + // executions in this matrix. InvalidMatrixDetails string `json:"invalidMatrixDetails,omitempty"` // OutcomeSummary: Output Only. The overall outcome of the test. Only