blob: ee21fa353feffadc0913956b8672ca81a7ebfeb8 [file] [log] [blame]
// Copyright 2024 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 searchads360 provides access to the Search Ads 360 Reporting API.
//
// For product documentation, see: https://developers.google.com/search-ads/reporting
//
// # Library status
//
// These client libraries are officially supported by Google. However, this
// library is considered complete and is in maintenance mode. This means
// that we will address critical bugs and security issues but will not add
// any new features.
//
// When possible, we recommend using our newer
// [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go)
// that are still actively being worked and iterated on.
//
// # Creating a client
//
// Usage example:
//
// import "google.golang.org/api/searchads360/v0"
// ...
// ctx := context.Background()
// searchads360Service, err := searchads360.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
//
// To use an API key for authentication (note: some APIs do not support API
// keys), use [google.golang.org/api/option.WithAPIKey]:
//
// searchads360Service, err := searchads360.NewService(ctx, option.WithAPIKey("AIza..."))
//
// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth
// flow, use [google.golang.org/api/option.WithTokenSource]:
//
// config := &oauth2.Config{...}
// // ...
// token, err := config.Exchange(ctx, ...)
// searchads360Service, err := searchads360.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
//
// See [google.golang.org/api/option.ClientOption] for details on options.
package searchads360 // import "google.golang.org/api/searchads360/v0"
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
var _ = internal.Version
const apiId = "searchads360:v0"
const apiName = "searchads360"
const apiVersion = "v0"
const basePath = "https://searchads360.googleapis.com/"
const basePathTemplate = "https://searchads360.UNIVERSE_DOMAIN/"
const mtlsBasePath = "https://searchads360.mtls.googleapis.com/"
// OAuth2 scopes used by this API.
const (
// View and manage your advertising data in DoubleClick Search
DoubleclicksearchScope = "https://www.googleapis.com/auth/doubleclicksearch"
)
// NewService creates a new Service.
func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
scopesOption := internaloption.WithDefaultScopes(
"https://www.googleapis.com/auth/doubleclicksearch",
)
// 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.WithDefaultEndpointTemplate(basePathTemplate))
opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
opts = append(opts, internaloption.EnableNewAuthLibrary())
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.Customers = NewCustomersService(s)
s.SearchAds360Fields = NewSearchAds360FieldsService(s)
return s, nil
}
type Service struct {
client *http.Client
BasePath string // API endpoint base URL
UserAgent string // optional additional User-Agent fragment
Customers *CustomersService
SearchAds360Fields *SearchAds360FieldsService
}
func (s *Service) userAgent() string {
if s.UserAgent == "" {
return googleapi.UserAgent
}
return googleapi.UserAgent + " " + s.UserAgent
}
func NewCustomersService(s *Service) *CustomersService {
rs := &CustomersService{s: s}
rs.CustomColumns = NewCustomersCustomColumnsService(s)
rs.SearchAds360 = NewCustomersSearchAds360Service(s)
return rs
}
type CustomersService struct {
s *Service
CustomColumns *CustomersCustomColumnsService
SearchAds360 *CustomersSearchAds360Service
}
func NewCustomersCustomColumnsService(s *Service) *CustomersCustomColumnsService {
rs := &CustomersCustomColumnsService{s: s}
return rs
}
type CustomersCustomColumnsService struct {
s *Service
}
func NewCustomersSearchAds360Service(s *Service) *CustomersSearchAds360Service {
rs := &CustomersSearchAds360Service{s: s}
return rs
}
type CustomersSearchAds360Service struct {
s *Service
}
func NewSearchAds360FieldsService(s *Service) *SearchAds360FieldsService {
rs := &SearchAds360FieldsService{s: s}
return rs
}
type SearchAds360FieldsService struct {
s *Service
}
// GoogleAdsSearchads360V0Common__AdScheduleInfo: Represents an AdSchedule
// criterion. AdSchedule is specified as the day of the week and a time
// interval within which ads will be shown. No more than six AdSchedules can be
// added for the same day.
type GoogleAdsSearchads360V0Common__AdScheduleInfo struct {
// DayOfWeek: Day of the week the schedule applies to. This field is required
// for CREATE operations and is prohibited on UPDATE operations.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - The value is unknown in this version.
// "MONDAY" - Monday.
// "TUESDAY" - Tuesday.
// "WEDNESDAY" - Wednesday.
// "THURSDAY" - Thursday.
// "FRIDAY" - Friday.
// "SATURDAY" - Saturday.
// "SUNDAY" - Sunday.
DayOfWeek string `json:"dayOfWeek,omitempty"`
// EndHour: Ending hour in 24 hour time; 24 signifies end of the day. This
// field must be between 0 and 24, inclusive. This field is required for CREATE
// operations and is prohibited on UPDATE operations.
EndHour int64 `json:"endHour,omitempty"`
// EndMinute: Minutes after the end hour at which this schedule ends. The
// schedule is exclusive of the end minute. This field is required for CREATE
// operations and is prohibited on UPDATE operations.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - The value is unknown in this version.
// "ZERO" - Zero minutes past the hour.
// "FIFTEEN" - Fifteen minutes past the hour.
// "THIRTY" - Thirty minutes past the hour.
// "FORTY_FIVE" - Forty-five minutes past the hour.
EndMinute string `json:"endMinute,omitempty"`
// StartHour: Starting hour in 24 hour time. This field must be between 0 and
// 23, inclusive. This field is required for CREATE operations and is
// prohibited on UPDATE operations.
StartHour int64 `json:"startHour,omitempty"`
// StartMinute: Minutes after the start hour at which this schedule starts.
// This field is required for CREATE operations and is prohibited on UPDATE
// operations.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - The value is unknown in this version.
// "ZERO" - Zero minutes past the hour.
// "FIFTEEN" - Fifteen minutes past the hour.
// "THIRTY" - Thirty minutes past the hour.
// "FORTY_FIVE" - Forty-five minutes past the hour.
StartMinute string `json:"startMinute,omitempty"`
// ForceSendFields is a list of field names (e.g. "DayOfWeek") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DayOfWeek") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__AdScheduleInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__AdScheduleInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__AgeRangeInfo: An age range criterion.
type GoogleAdsSearchads360V0Common__AgeRangeInfo struct {
// Type: Type of the age range.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "AGE_RANGE_18_24" - Between 18 and 24 years old.
// "AGE_RANGE_25_34" - Between 25 and 34 years old.
// "AGE_RANGE_35_44" - Between 35 and 44 years old.
// "AGE_RANGE_45_54" - Between 45 and 54 years old.
// "AGE_RANGE_55_64" - Between 55 and 64 years old.
// "AGE_RANGE_65_UP" - 65 years old and beyond.
// "AGE_RANGE_UNDETERMINED" - Undetermined age range.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Type") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Type") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__AgeRangeInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__AgeRangeInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__AssetInteractionTarget: An
// AssetInteractionTarget segment.
type GoogleAdsSearchads360V0Common__AssetInteractionTarget struct {
// Asset: The asset resource name.
Asset string `json:"asset,omitempty"`
// InteractionOnThisAsset: Only used with CustomerAsset, CampaignAsset and
// AdGroupAsset metrics. Indicates whether the interaction metrics occurred on
// the asset itself or a different asset or ad unit.
InteractionOnThisAsset bool `json:"interactionOnThisAsset,omitempty"`
// ForceSendFields is a list of field names (e.g. "Asset") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Asset") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__AssetInteractionTarget) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__AssetInteractionTarget
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__AssetUsage: Contains the usage information of
// the asset.
type GoogleAdsSearchads360V0Common__AssetUsage struct {
// Asset: Resource name of the asset.
Asset string `json:"asset,omitempty"`
// ServedAssetFieldType: The served field type of the asset.
//
// Possible values:
// "UNSPECIFIED" - No value has been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "HEADLINE_1" - The asset is used in headline 1.
// "HEADLINE_2" - The asset is used in headline 2.
// "HEADLINE_3" - The asset is used in headline 3.
// "DESCRIPTION_1" - The asset is used in description 1.
// "DESCRIPTION_2" - The asset is used in description 2.
// "HEADLINE" - The asset was used in a headline. Use this only if there is
// only one headline in the ad. Otherwise, use the HEADLINE_1, HEADLINE_2 or
// HEADLINE_3 enums
// "HEADLINE_IN_PORTRAIT" - The asset was used as a headline in portrait
// image.
// "LONG_HEADLINE" - The asset was used in a long headline (used in
// MultiAssetResponsiveAd).
// "DESCRIPTION" - The asset was used in a description. Use this only if
// there is only one description in the ad. Otherwise, use the DESCRIPTION_1 or
// DESCRIPTION_@ enums
// "DESCRIPTION_IN_PORTRAIT" - The asset was used as description in portrait
// image.
// "BUSINESS_NAME_IN_PORTRAIT" - The asset was used as business name in
// portrait image.
// "BUSINESS_NAME" - The asset was used as business name.
// "MARKETING_IMAGE" - The asset was used as a marketing image.
// "MARKETING_IMAGE_IN_PORTRAIT" - The asset was used as a marketing image in
// portrait image.
// "SQUARE_MARKETING_IMAGE" - The asset was used as a square marketing image.
// "PORTRAIT_MARKETING_IMAGE" - The asset was used as a portrait marketing
// image.
// "LOGO" - The asset was used as a logo.
// "LANDSCAPE_LOGO" - The asset was used as a landscape logo.
// "CALL_TO_ACTION" - The asset was used as a call-to-action.
// "YOU_TUBE_VIDEO" - The asset was used as a YouTube video.
// "SITELINK" - This asset is used as a sitelink.
// "CALL" - This asset is used as a call.
// "MOBILE_APP" - This asset is used as a mobile app.
// "CALLOUT" - This asset is used as a callout.
// "STRUCTURED_SNIPPET" - This asset is used as a structured snippet.
// "PRICE" - This asset is used as a price.
// "PROMOTION" - This asset is used as a promotion.
// "AD_IMAGE" - This asset is used as an image.
// "LEAD_FORM" - The asset is used as a lead form.
// "BUSINESS_LOGO" - The asset is used as a business logo.
ServedAssetFieldType string `json:"servedAssetFieldType,omitempty"`
// ForceSendFields is a list of field names (e.g. "Asset") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Asset") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__AssetUsage) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__AssetUsage
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__AudienceInfo: An audience criterion.
type GoogleAdsSearchads360V0Common__AudienceInfo struct {
// Audience: The Audience resource name.
Audience string `json:"audience,omitempty"`
// ForceSendFields is a list of field names (e.g. "Audience") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Audience") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__AudienceInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__AudienceInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__BusinessProfileLocation: Business Profile
// location data synced from the linked Business Profile account.
type GoogleAdsSearchads360V0Common__BusinessProfileLocation struct {
// Labels: Advertiser specified label for the location on the Business Profile
// account. This is synced from the Business Profile account.
Labels []string `json:"labels,omitempty"`
// ListingId: Listing ID of this Business Profile location. This is synced from
// the linked Business Profile account.
ListingId int64 `json:"listingId,omitempty,string"`
// StoreCode: Business Profile store code of this location. This is synced from
// the Business Profile account.
StoreCode string `json:"storeCode,omitempty"`
// ForceSendFields is a list of field names (e.g. "Labels") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Labels") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__BusinessProfileLocation) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__BusinessProfileLocation
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__CallToActionAsset: A call to action asset.
type GoogleAdsSearchads360V0Common__CallToActionAsset struct {
// CallToAction: Call to action.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "LEARN_MORE" - The call to action type is learn more.
// "GET_QUOTE" - The call to action type is get quote.
// "APPLY_NOW" - The call to action type is apply now.
// "SIGN_UP" - The call to action type is sign up.
// "CONTACT_US" - The call to action type is contact us.
// "SUBSCRIBE" - The call to action type is subscribe.
// "DOWNLOAD" - The call to action type is download.
// "BOOK_NOW" - The call to action type is book now.
// "SHOP_NOW" - The call to action type is shop now.
// "BUY_NOW" - The call to action type is buy now.
// "DONATE_NOW" - The call to action type is donate now.
// "ORDER_NOW" - The call to action type is order now.
// "PLAY_NOW" - The call to action type is play now.
// "SEE_MORE" - The call to action type is see more.
// "START_NOW" - The call to action type is start now.
// "VISIT_SITE" - The call to action type is visit site.
// "WATCH_NOW" - The call to action type is watch now.
CallToAction string `json:"callToAction,omitempty"`
// ForceSendFields is a list of field names (e.g. "CallToAction") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CallToAction") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__CallToActionAsset) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__CallToActionAsset
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__CustomParameter: A mapping that can be used
// by custom parameter tags in a `tracking_url_template`, `final_urls`, or
// `mobile_final_urls`.
type GoogleAdsSearchads360V0Common__CustomParameter struct {
// Key: The key matching the parameter tag name.
Key string `json:"key,omitempty"`
// Value: The value to be substituted.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Key") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__CustomParameter) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__CustomParameter
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__DeviceInfo: A device criterion.
type GoogleAdsSearchads360V0Common__DeviceInfo struct {
// Type: Type of the device.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - The value is unknown in this version.
// "MOBILE" - Mobile devices with full browsers.
// "TABLET" - Tablets with full browsers.
// "DESKTOP" - Computers.
// "CONNECTED_TV" - Smart TVs and game consoles.
// "OTHER" - Other device types.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Type") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Type") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__DeviceInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__DeviceInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__EnhancedCpc: An automated bidding strategy
// that raises bids for clicks that seem more likely to lead to a conversion
// and lowers them for clicks where they seem less likely. This bidding
// strategy is deprecated and cannot be created anymore. Use ManualCpc with
// enhanced_cpc_enabled set to true for equivalent functionality.
type GoogleAdsSearchads360V0Common__EnhancedCpc struct {
}
// GoogleAdsSearchads360V0Common__FrequencyCapEntry: A rule specifying the
// maximum number of times an ad (or some set of ads) can be shown to a user
// over a particular time period.
type GoogleAdsSearchads360V0Common__FrequencyCapEntry struct {
}
// GoogleAdsSearchads360V0Common__GenderInfo: A gender criterion.
type GoogleAdsSearchads360V0Common__GenderInfo struct {
// Type: Type of the gender.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "MALE" - Male.
// "FEMALE" - Female.
// "UNDETERMINED" - Undetermined gender.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Type") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Type") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__GenderInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__GenderInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__ImageAsset: An Image asset.
type GoogleAdsSearchads360V0Common__ImageAsset struct {
// FileSize: File size of the image asset in bytes.
FileSize int64 `json:"fileSize,omitempty,string"`
// FullSize: Metadata for this image at its original size.
FullSize *GoogleAdsSearchads360V0Common__ImageDimension `json:"fullSize,omitempty"`
// MimeType: MIME type of the image asset.
//
// Possible values:
// "UNSPECIFIED" - The mime type has not been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "IMAGE_JPEG" - MIME type of image/jpeg.
// "IMAGE_GIF" - MIME type of image/gif.
// "IMAGE_PNG" - MIME type of image/png.
// "FLASH" - MIME type of application/x-shockwave-flash.
// "TEXT_HTML" - MIME type of text/html.
// "PDF" - MIME type of application/pdf.
// "MSWORD" - MIME type of application/msword.
// "MSEXCEL" - MIME type of application/vnd.ms-excel.
// "RTF" - MIME type of application/rtf.
// "AUDIO_WAV" - MIME type of audio/wav.
// "AUDIO_MP3" - MIME type of audio/mp3.
// "HTML5_AD_ZIP" - MIME type of application/x-html5-ad-zip.
MimeType string `json:"mimeType,omitempty"`
// ForceSendFields is a list of field names (e.g. "FileSize") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FileSize") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__ImageAsset) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__ImageAsset
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__ImageDimension: Metadata for an image at a
// certain size, either original or resized.
type GoogleAdsSearchads360V0Common__ImageDimension struct {
// HeightPixels: Height of the image.
HeightPixels int64 `json:"heightPixels,omitempty,string"`
// Url: A URL that returns the image with this height and width.
Url string `json:"url,omitempty"`
// WidthPixels: Width of the image.
WidthPixels int64 `json:"widthPixels,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "HeightPixels") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "HeightPixels") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__ImageDimension) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__ImageDimension
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__Keyword: A Keyword criterion segment.
type GoogleAdsSearchads360V0Common__Keyword struct {
// AdGroupCriterion: The AdGroupCriterion resource name.
AdGroupCriterion string `json:"adGroupCriterion,omitempty"`
// Info: Keyword info.
Info *GoogleAdsSearchads360V0Common__KeywordInfo `json:"info,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdGroupCriterion") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdGroupCriterion") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__Keyword) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__Keyword
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__KeywordInfo: A keyword criterion.
type GoogleAdsSearchads360V0Common__KeywordInfo struct {
// MatchType: The match type of the keyword.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "EXACT" - Exact match.
// "PHRASE" - Phrase match.
// "BROAD" - Broad match.
MatchType string `json:"matchType,omitempty"`
// Text: The text of the keyword (at most 80 characters and 10 words).
Text string `json:"text,omitempty"`
// ForceSendFields is a list of field names (e.g. "MatchType") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "MatchType") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__KeywordInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__KeywordInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__LanguageInfo: A language criterion.
type GoogleAdsSearchads360V0Common__LanguageInfo struct {
// LanguageConstant: The language constant resource name.
LanguageConstant string `json:"languageConstant,omitempty"`
// ForceSendFields is a list of field names (e.g. "LanguageConstant") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "LanguageConstant") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__LanguageInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__LanguageInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__ListingGroupInfo: A listing group criterion.
type GoogleAdsSearchads360V0Common__ListingGroupInfo struct {
// Type: Type of the listing group.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "SUBDIVISION" - Subdivision of products along some listing dimension.
// These nodes are not used by serving to target listing entries, but is purely
// to define the structure of the tree.
// "UNIT" - Listing group unit that defines a bid.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Type") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Type") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__ListingGroupInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__ListingGroupInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__LocationGroupInfo: A radius around a list of
// locations specified through a feed.
type GoogleAdsSearchads360V0Common__LocationGroupInfo struct {
// FeedItemSets: FeedItemSets whose FeedItems are targeted. If multiple IDs are
// specified, then all items that appear in at least one set are targeted. This
// field cannot be used with geo_target_constants. This is optional and can
// only be set in CREATE operations.
FeedItemSets []string `json:"feedItemSets,omitempty"`
// GeoTargetConstants: Geo target constant(s) restricting the scope of the
// geographic area within the feed. Currently only one geo target constant is
// allowed.
GeoTargetConstants []string `json:"geoTargetConstants,omitempty"`
// Radius: Distance in units specifying the radius around targeted locations.
// This is required and must be set in CREATE operations.
Radius int64 `json:"radius,omitempty,string"`
// RadiusUnits: Unit of the radius. Miles and meters are supported for geo
// target constants. Milli miles and meters are supported for feed item sets.
// This is required and must be set in CREATE operations.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "METERS" - Meters
// "MILES" - Miles
// "MILLI_MILES" - Milli Miles
RadiusUnits string `json:"radiusUnits,omitempty"`
// ForceSendFields is a list of field names (e.g. "FeedItemSets") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FeedItemSets") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__LocationGroupInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__LocationGroupInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__LocationInfo: A location criterion.
type GoogleAdsSearchads360V0Common__LocationInfo struct {
// GeoTargetConstant: The geo target constant resource name.
GeoTargetConstant string `json:"geoTargetConstant,omitempty"`
// ForceSendFields is a list of field names (e.g. "GeoTargetConstant") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "GeoTargetConstant") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__LocationInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__LocationInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__ManualCpa: Manual bidding strategy that
// allows advertiser to set the bid per advertiser-specified action.
type GoogleAdsSearchads360V0Common__ManualCpa struct {
}
// GoogleAdsSearchads360V0Common__ManualCpc: Manual click-based bidding where
// user pays per click.
type GoogleAdsSearchads360V0Common__ManualCpc struct {
// EnhancedCpcEnabled: Whether bids are to be enhanced based on conversion
// optimizer data.
EnhancedCpcEnabled bool `json:"enhancedCpcEnabled,omitempty"`
// ForceSendFields is a list of field names (e.g. "EnhancedCpcEnabled") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "EnhancedCpcEnabled") to include
// in API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__ManualCpc) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__ManualCpc
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__ManualCpm: Manual impression-based bidding
// where user pays per thousand impressions.
type GoogleAdsSearchads360V0Common__ManualCpm struct {
}
// GoogleAdsSearchads360V0Common__MaximizeConversionValue: An automated bidding
// strategy to help get the most conversion value for your campaigns while
// spending your budget.
type GoogleAdsSearchads360V0Common__MaximizeConversionValue struct {
// CpcBidCeilingMicros: Maximum bid limit that can be set by the bid strategy.
// The limit applies to all keywords managed by the strategy. Mutable for
// portfolio bidding strategies only.
CpcBidCeilingMicros int64 `json:"cpcBidCeilingMicros,omitempty,string"`
// CpcBidFloorMicros: Minimum bid limit that can be set by the bid strategy.
// The limit applies to all keywords managed by the strategy. Mutable for
// portfolio bidding strategies only.
CpcBidFloorMicros int64 `json:"cpcBidFloorMicros,omitempty,string"`
// TargetRoas: The target return on ad spend (ROAS) option. If set, the bid
// strategy will maximize revenue while averaging the target return on ad
// spend. If the target ROAS is high, the bid strategy may not be able to spend
// the full budget. If the target ROAS is not set, the bid strategy will aim to
// achieve the highest possible ROAS for the budget.
TargetRoas float64 `json:"targetRoas,omitempty"`
// ForceSendFields is a list of field names (e.g. "CpcBidCeilingMicros") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CpcBidCeilingMicros") to include
// in API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__MaximizeConversionValue) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__MaximizeConversionValue
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
func (s *GoogleAdsSearchads360V0Common__MaximizeConversionValue) UnmarshalJSON(data []byte) error {
type NoMethod GoogleAdsSearchads360V0Common__MaximizeConversionValue
var s1 struct {
TargetRoas gensupport.JSONFloat64 `json:"targetRoas"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.TargetRoas = float64(s1.TargetRoas)
return nil
}
// GoogleAdsSearchads360V0Common__MaximizeConversions: An automated bidding
// strategy to help get the most conversions for your campaigns while spending
// your budget.
type GoogleAdsSearchads360V0Common__MaximizeConversions struct {
// CpcBidCeilingMicros: Maximum bid limit that can be set by the bid strategy.
// The limit applies to all keywords managed by the strategy. Mutable for
// portfolio bidding strategies only.
CpcBidCeilingMicros int64 `json:"cpcBidCeilingMicros,omitempty,string"`
// CpcBidFloorMicros: Minimum bid limit that can be set by the bid strategy.
// The limit applies to all keywords managed by the strategy. Mutable for
// portfolio bidding strategies only.
CpcBidFloorMicros int64 `json:"cpcBidFloorMicros,omitempty,string"`
// TargetCpaMicros: The target cost-per-action (CPA) option. This is the
// average amount that you would like to spend per conversion action specified
// in micro units of the bidding strategy's currency. If set, the bid strategy
// will get as many conversions as possible at or below the target
// cost-per-action. If the target CPA is not set, the bid strategy will aim to
// achieve the lowest possible CPA given the budget.
TargetCpaMicros int64 `json:"targetCpaMicros,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "CpcBidCeilingMicros") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CpcBidCeilingMicros") to include
// in API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__MaximizeConversions) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__MaximizeConversions
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__Metrics: Metrics data.
type GoogleAdsSearchads360V0Common__Metrics struct {
// AbsoluteTopImpressionPercentage: Search absolute top impression share is the
// percentage of your Search ad impressions that are shown in the most
// prominent Search position.
AbsoluteTopImpressionPercentage float64 `json:"absoluteTopImpressionPercentage,omitempty"`
// AllConversions: The total number of conversions. This includes all
// conversions regardless of the value of include_in_conversions_metric.
AllConversions float64 `json:"allConversions,omitempty"`
// AllConversionsByConversionDate: The total number of conversions. This
// includes all conversions regardless of the value of
// include_in_conversions_metric. When this column is selected with date, the
// values in date column means the conversion date. Details for the
// by_conversion_date columns are available at
// https://support.google.com/sa360/answer/9250611.
AllConversionsByConversionDate float64 `json:"allConversionsByConversionDate,omitempty"`
// AllConversionsFromClickToCall: The number of times people clicked the "Call"
// button to call a store during or after clicking an ad. This number doesn't
// include whether or not calls were connected, or the duration of any calls.
// This metric applies to feed items only.
AllConversionsFromClickToCall float64 `json:"allConversionsFromClickToCall,omitempty"`
// AllConversionsFromDirections: The number of times people clicked a "Get
// directions" button to navigate to a store after clicking an ad. This metric
// applies to feed items only.
AllConversionsFromDirections float64 `json:"allConversionsFromDirections,omitempty"`
// AllConversionsFromInteractionsRate: All conversions from interactions (as
// oppose to view through conversions) divided by the number of ad
// interactions.
AllConversionsFromInteractionsRate float64 `json:"allConversionsFromInteractionsRate,omitempty"`
// AllConversionsFromInteractionsValuePerInteraction: The value of all
// conversions from interactions divided by the total number of interactions.
AllConversionsFromInteractionsValuePerInteraction float64 `json:"allConversionsFromInteractionsValuePerInteraction,omitempty"`
// AllConversionsFromMenu: The number of times people clicked a link to view a
// store's menu after clicking an ad. This metric applies to feed items only.
AllConversionsFromMenu float64 `json:"allConversionsFromMenu,omitempty"`
// AllConversionsFromOrder: The number of times people placed an order at a
// store after clicking an ad. This metric applies to feed items only.
AllConversionsFromOrder float64 `json:"allConversionsFromOrder,omitempty"`
// AllConversionsFromOtherEngagement: The number of other conversions (for
// example, posting a review or saving a location for a store) that occurred
// after people clicked an ad. This metric applies to feed items only.
AllConversionsFromOtherEngagement float64 `json:"allConversionsFromOtherEngagement,omitempty"`
// AllConversionsFromStoreVisit: Estimated number of times people visited a
// store after clicking an ad. This metric applies to feed items only.
AllConversionsFromStoreVisit float64 `json:"allConversionsFromStoreVisit,omitempty"`
// AllConversionsFromStoreWebsite: The number of times that people were taken
// to a store's URL after clicking an ad. This metric applies to feed items
// only.
AllConversionsFromStoreWebsite float64 `json:"allConversionsFromStoreWebsite,omitempty"`
// AllConversionsValue: The value of all conversions.
AllConversionsValue float64 `json:"allConversionsValue,omitempty"`
// AllConversionsValueByConversionDate: The value of all conversions. When this
// column is selected with date, the values in date column means the conversion
// date. Details for the by_conversion_date columns are available at
// https://support.google.com/sa360/answer/9250611.
AllConversionsValueByConversionDate float64 `json:"allConversionsValueByConversionDate,omitempty"`
// AllConversionsValuePerCost: The value of all conversions divided by the
// total cost of ad interactions (such as clicks for text ads or views for
// video ads).
AllConversionsValuePerCost float64 `json:"allConversionsValuePerCost,omitempty"`
// AverageCost: The average amount you pay per interaction. This amount is the
// total cost of your ads divided by the total number of interactions.
AverageCost float64 `json:"averageCost,omitempty"`
// AverageCpc: The total cost of all clicks divided by the total number of
// clicks received. This metric is a monetary value and returned in the
// customer's currency by default. See the metrics_currency parameter at
// https://developers.google.com/search-ads/reporting/query/query-structure#parameters_clause
AverageCpc float64 `json:"averageCpc,omitempty"`
// AverageCpm: Average cost-per-thousand impressions (CPM). This metric is a
// monetary value and returned in the customer's currency by default. See the
// metrics_currency parameter at
// https://developers.google.com/search-ads/reporting/query/query-structure#parameters_clause
AverageCpm float64 `json:"averageCpm,omitempty"`
// Clicks: The number of clicks.
Clicks int64 `json:"clicks,omitempty,string"`
// ClientAccountConversions: The number of client account conversions. This
// only includes conversion actions which
// include_in_client_account_conversions_metric attribute is set to true. If
// you use conversion-based bidding, your bid strategies will optimize for
// these conversions.
ClientAccountConversions float64 `json:"clientAccountConversions,omitempty"`
// ClientAccountConversionsValue: The value of client account conversions. This
// only includes conversion actions which
// include_in_client_account_conversions_metric attribute is set to true. If
// you use conversion-based bidding, your bid strategies will optimize for
// these conversions.
ClientAccountConversionsValue float64 `json:"clientAccountConversionsValue,omitempty"`
// ClientAccountCrossSellCostOfGoodsSoldMicros: Client account cross-sell cost
// of goods sold (COGS) is the total cost of products sold as a result of
// advertising a different product. How it works: You report conversions with
// cart data for completed purchases on your website. If the ad that was
// interacted with before the purchase has an associated product (see Shopping
// Ads) then this product is considered the advertised product. Any product
// included in the order the customer places is a sold product. If these
// products don't match then this is considered cross-sell. Cross-sell cost of
// goods sold is the total cost of the products sold that weren't advertised.
// Example: Someone clicked on a Shopping ad for a hat then bought the same hat
// and a shirt. The hat has a cost of goods sold value of $3, the shirt has a
// cost of goods sold value of $5. The cross-sell cost of goods sold for this
// order is $5. This metric is only available if you report conversions with
// cart data. This metric is a monetary value and returned in the customer's
// currency by default. See the metrics_currency parameter at
// https://developers.google.com/search-ads/reporting/query/query-structure#parameters_clause
ClientAccountCrossSellCostOfGoodsSoldMicros int64 `json:"clientAccountCrossSellCostOfGoodsSoldMicros,omitempty,string"`
// ClientAccountCrossSellGrossProfitMicros: Client account cross-sell gross
// profit is the profit you made from products sold as a result of advertising
// a different product, minus cost of goods sold (COGS). How it works: You
// report conversions with cart data for completed purchases on your website.
// If the ad that was interacted with before the purchase has an associated
// product (see Shopping Ads) then this product is considered the advertised
// product. Any product included in the purchase is a sold product. If these
// products don't match then this is considered cross-sell. Cross-sell gross
// profit is the revenue you made from cross-sell attributed to your ads minus
// the cost of the goods sold. Example: Someone clicked on a Shopping ad for a
// hat then bought the same hat and a shirt. The shirt is priced $20 and has a
// cost of goods sold value of $5. The cross-sell gross profit of this order is
// $15 = $20 - $5. This metric is only available if you report conversions with
// cart data. This metric is a monetary value and returned in the customer's
// currency by default. See the metrics_currency parameter at
// https://developers.google.com/search-ads/reporting/query/query-structure#parameters_clause
ClientAccountCrossSellGrossProfitMicros int64 `json:"clientAccountCrossSellGrossProfitMicros,omitempty,string"`
// ClientAccountCrossSellRevenueMicros: Client account cross-sell revenue is
// the total amount you made from products sold as a result of advertising a
// different product. How it works: You report conversions with cart data for
// completed purchases on your website. If the ad that was interacted with
// before the purchase has an associated product (see Shopping Ads) then this
// product is considered the advertised product. Any product included in the
// order the customer places is a sold product. If these products don't match
// then this is considered cross-sell. Cross-sell revenue is the total value
// you made from cross-sell attributed to your ads. Example: Someone clicked on
// a Shopping ad for a hat then bought the same hat and a shirt. The hat is
// priced $10 and the shirt is priced $20. The cross-sell revenue of this order
// is $20. This metric is only available if you report conversions with cart
// data. This metric is a monetary value and returned in the customer's
// currency by default. See the metrics_currency parameter at
// https://developers.google.com/search-ads/reporting/query/query-structure#parameters_clause
ClientAccountCrossSellRevenueMicros int64 `json:"clientAccountCrossSellRevenueMicros,omitempty,string"`
// ClientAccountCrossSellUnitsSold: Client account cross-sell units sold is the
// total number of products sold as a result of advertising a different
// product. How it works: You report conversions with cart data for completed
// purchases on your website. If the ad that was interacted with before the
// purchase has an associated product (see Shopping Ads) then this product is
// considered the advertised product. Any product included in the order the
// customer places is a sold product. If these products don't match then this
// is considered cross-sell. Cross-sell units sold is the total number of
// cross-sold products from all orders attributed to your ads. Example: Someone
// clicked on a Shopping ad for a hat then bought the same hat, a shirt and a
// jacket. The cross-sell units sold in this order is 2. This metric is only
// available if you report conversions with cart data.
ClientAccountCrossSellUnitsSold float64 `json:"clientAccountCrossSellUnitsSold,omitempty"`
// ClientAccountLeadCostOfGoodsSoldMicros: Client account lead cost of goods
// sold (COGS) is the total cost of products sold as a result of advertising
// the same product. How it works: You report conversions with cart data for
// completed purchases on your website. If the ad that was interacted with has
// an associated product (see Shopping Ads) then this product is considered the
// advertised product. Any product included in the order the customer places is
// a sold product. If the advertised and sold products match, then the cost of
// these goods is counted under lead cost of goods sold. Example: Someone
// clicked on a Shopping ad for a hat then bought the same hat and a shirt. The
// hat has a cost of goods sold value of $3, the shirt has a cost of goods sold
// value of $5. The lead cost of goods sold for this order is $3. This metric
// is only available if you report conversions with cart data. This metric is a
// monetary value and returned in the customer's currency by default. See the
// metrics_currency parameter at
// https://developers.google.com/search-ads/reporting/query/query-structure#parameters_clause
ClientAccountLeadCostOfGoodsSoldMicros int64 `json:"clientAccountLeadCostOfGoodsSoldMicros,omitempty,string"`
// ClientAccountLeadGrossProfitMicros: Client account lead gross profit is the
// profit you made from products sold as a result of advertising the same
// product, minus cost of goods sold (COGS). How it works: You report
// conversions with cart data for completed purchases on your website. If the
// ad that was interacted with before the purchase has an associated product
// (see Shopping Ads) then this product is considered the advertised product.
// Any product included in the order the customer places is a sold product. If
// the advertised and sold products match, then the revenue you made from these
// sales minus the cost of goods sold is your lead gross profit. Example:
// Someone clicked on a Shopping ad for a hat then bought the same hat and a
// shirt. The hat is priced $10 and has a cost of goods sold value of $3. The
// lead gross profit of this order is $7 = $10 - $3. This metric is only
// available if you report conversions with cart data. This metric is a
// monetary value and returned in the customer's currency by default. See the
// metrics_currency parameter at
// https://developers.google.com/search-ads/reporting/query/query-structure#parameters_clause
ClientAccountLeadGrossProfitMicros int64 `json:"clientAccountLeadGrossProfitMicros,omitempty,string"`
// ClientAccountLeadRevenueMicros: Client account lead revenue is the total
// amount you made from products sold as a result of advertising the same
// product. How it works: You report conversions with cart data for completed
// purchases on your website. If the ad that was interacted with before the
// purchase has an associated product (see Shopping Ads) then this product is
// considered the advertised product. Any product included in the order the
// customer places is a sold product. If the advertised and sold products
// match, then the total value you made from the sales of these products is
// shown under lead revenue. Example: Someone clicked on a Shopping ad for a
// hat then bought the same hat and a shirt. The hat is priced $10 and the
// shirt is priced $20. The lead revenue of this order is $10. This metric is
// only available if you report conversions with cart data. This metric is a
// monetary value and returned in the customer's currency by default. See the
// metrics_currency parameter at
// https://developers.google.com/search-ads/reporting/query/query-structure#parameters_clause
ClientAccountLeadRevenueMicros int64 `json:"clientAccountLeadRevenueMicros,omitempty,string"`
// ClientAccountLeadUnitsSold: Client account lead units sold is the total
// number of products sold as a result of advertising the same product. How it
// works: You report conversions with cart data for completed purchases on your
// website. If the ad that was interacted with before the purchase has an
// associated product (see Shopping Ads) then this product is considered the
// advertised product. Any product included in the order the customer places is
// a sold product. If the advertised and sold products match, then the total
// number of these products sold is shown under lead units sold. Example:
// Someone clicked on a Shopping ad for a hat then bought the same hat, a shirt
// and a jacket. The lead units sold in this order is 1. This metric is only
// available if you report conversions with cart data.
ClientAccountLeadUnitsSold float64 `json:"clientAccountLeadUnitsSold,omitempty"`
// ClientAccountViewThroughConversions: The total number of view-through
// conversions. These happen when a customer sees an image or rich media ad,
// then later completes a conversion on your site without interacting with (for
// example, clicking on) another ad.
ClientAccountViewThroughConversions int64 `json:"clientAccountViewThroughConversions,omitempty,string"`
// ContentBudgetLostImpressionShare: The estimated percent of times that your
// ad was eligible to show on the Display Network but didn't because your
// budget was too low. Note: Content budget lost impression share is reported
// in the range of 0 to 0.9. Any value above 0.9 is reported as 0.9001.
ContentBudgetLostImpressionShare float64 `json:"contentBudgetLostImpressionShare,omitempty"`
// ContentImpressionShare: The impressions you've received on the Display
// Network divided by the estimated number of impressions you were eligible to
// receive. Note: Content impression share is reported in the range of 0.1 to
// 1. Any value below 0.1 is reported as 0.0999.
ContentImpressionShare float64 `json:"contentImpressionShare,omitempty"`
// ContentRankLostImpressionShare: The estimated percentage of impressions on
// the Display Network that your ads didn't receive due to poor Ad Rank. Note:
// Content rank lost impression share is reported in the range of 0 to 0.9. Any
// value above 0.9 is reported as 0.9001.
ContentRankLostImpressionShare float64 `json:"contentRankLostImpressionShare,omitempty"`
// ConversionCustomMetrics: The conversion custom metrics.
ConversionCustomMetrics []*GoogleAdsSearchads360V0Common__Value `json:"conversionCustomMetrics,omitempty"`
// Conversions: The number of conversions. This only includes conversion
// actions which include_in_conversions_metric attribute is set to true. If you
// use conversion-based bidding, your bid strategies will optimize for these
// conversions.
Conversions float64 `json:"conversions,omitempty"`
// ConversionsByConversionDate: The sum of conversions by conversion date for
// biddable conversion types. Can be fractional due to attribution modeling.
// When this column is selected with date, the values in date column means the
// conversion date.
ConversionsByConversionDate float64 `json:"conversionsByConversionDate,omitempty"`
// ConversionsFromInteractionsRate: Average biddable conversions (from
// interaction) per conversion eligible interaction. Shows how often, on
// average, an ad interaction leads to a biddable conversion.
ConversionsFromInteractionsRate float64 `json:"conversionsFromInteractionsRate,omitempty"`
// ConversionsFromInteractionsValuePerInteraction: The value of conversions
// from interactions divided by the number of ad interactions. This only
// includes conversion actions which include_in_conversions_metric attribute is
// set to true. If you use conversion-based bidding, your bid strategies will
// optimize for these conversions.
ConversionsFromInteractionsValuePerInteraction float64 `json:"conversionsFromInteractionsValuePerInteraction,omitempty"`
// ConversionsValue: The sum of conversion values for the conversions included
// in the "conversions" field. This metric is useful only if you entered a
// value for your conversion actions.
ConversionsValue float64 `json:"conversionsValue,omitempty"`
// ConversionsValueByConversionDate: The sum of biddable conversions value by
// conversion date. When this column is selected with date, the values in date
// column means the conversion date.
ConversionsValueByConversionDate float64 `json:"conversionsValueByConversionDate,omitempty"`
// ConversionsValuePerCost: The value of biddable conversion divided by the
// total cost of conversion eligible interactions.
ConversionsValuePerCost float64 `json:"conversionsValuePerCost,omitempty"`
// CostMicros: The sum of your cost-per-click (CPC) and cost-per-thousand
// impressions (CPM) costs during this period. This metric is a monetary value
// and returned in the customer's currency by default. See the metrics_currency
// parameter at
// https://developers.google.com/search-ads/reporting/query/query-structure#parameters_clause
CostMicros int64 `json:"costMicros,omitempty,string"`
// CostPerAllConversions: The cost of ad interactions divided by all
// conversions.
CostPerAllConversions float64 `json:"costPerAllConversions,omitempty"`
// CostPerConversion: Average conversion eligible cost per biddable conversion.
CostPerConversion float64 `json:"costPerConversion,omitempty"`
// CostPerCurrentModelAttributedConversion: The cost of ad interactions divided
// by current model attributed conversions. This only includes conversion
// actions which include_in_conversions_metric attribute is set to true. If you
// use conversion-based bidding, your bid strategies will optimize for these
// conversions.
CostPerCurrentModelAttributedConversion float64 `json:"costPerCurrentModelAttributedConversion,omitempty"`
// CrossDeviceConversions: Conversions from when a customer clicks on an ad on
// one device, then converts on a different device or browser. Cross-device
// conversions are already included in all_conversions.
CrossDeviceConversions float64 `json:"crossDeviceConversions,omitempty"`
// CrossDeviceConversionsValue: The sum of the value of cross-device
// conversions.
CrossDeviceConversionsValue float64 `json:"crossDeviceConversionsValue,omitempty"`
// CrossSellCostOfGoodsSoldMicros: Cross-sell cost of goods sold (COGS) is the
// total cost of products sold as a result of advertising a different product.
// How it works: You report conversions with cart data for completed purchases
// on your website. If the ad that was interacted with before the purchase has
// an associated product (see Shopping Ads) then this product is considered the
// advertised product. Any product included in the order the customer places is
// a sold product. If these products don't match then this is considered
// cross-sell. Cross-sell cost of goods sold is the total cost of the products
// sold that weren't advertised. Example: Someone clicked on a Shopping ad for
// a hat then bought the same hat and a shirt. The hat has a cost of goods sold
// value of $3, the shirt has a cost of goods sold value of $5. The cross-sell
// cost of goods sold for this order is $5. This metric is only available if
// you report conversions with cart data. This metric is a monetary value and
// returned in the customer's currency by default. See the metrics_currency
// parameter at
// https://developers.google.com/search-ads/reporting/query/query-structure#parameters_clause
CrossSellCostOfGoodsSoldMicros int64 `json:"crossSellCostOfGoodsSoldMicros,omitempty,string"`
// CrossSellGrossProfitMicros: Cross-sell gross profit is the profit you made
// from products sold as a result of advertising a different product, minus
// cost of goods sold (COGS). How it works: You report conversions with cart
// data for completed purchases on your website. If the ad that was interacted
// with before the purchase has an associated product (see Shopping Ads) then
// this product is considered the advertised product. Any product included in
// the purchase is a sold product. If these products don't match then this is
// considered cross-sell. Cross-sell gross profit is the revenue you made from
// cross-sell attributed to your ads minus the cost of the goods sold. Example:
// Someone clicked on a Shopping ad for a hat then bought the same hat and a
// shirt. The shirt is priced $20 and has a cost of goods sold value of $5. The
// cross-sell gross profit of this order is $15 = $20 - $5. This metric is only
// available if you report conversions with cart data. This metric is a
// monetary value and returned in the customer's currency by default. See the
// metrics_currency parameter at
// https://developers.google.com/search-ads/reporting/query/query-structure#parameters_clause
CrossSellGrossProfitMicros int64 `json:"crossSellGrossProfitMicros,omitempty,string"`
// CrossSellRevenueMicros: Cross-sell revenue is the total amount you made from
// products sold as a result of advertising a different product. How it works:
// You report conversions with cart data for completed purchases on your
// website. If the ad that was interacted with before the purchase has an
// associated product (see Shopping Ads) then this product is considered the
// advertised product. Any product included in the order the customer places is
// a sold product. If these products don't match then this is considered
// cross-sell. Cross-sell revenue is the total value you made from cross-sell
// attributed to your ads. Example: Someone clicked on a Shopping ad for a hat
// then bought the same hat and a shirt. The hat is priced $10 and the shirt is
// priced $20. The cross-sell revenue of this order is $20. This metric is only
// available if you report conversions with cart data. This metric is a
// monetary value and returned in the customer's currency by default. See the
// metrics_currency parameter at
// https://developers.google.com/search-ads/reporting/query/query-structure#parameters_clause
CrossSellRevenueMicros int64 `json:"crossSellRevenueMicros,omitempty,string"`
// CrossSellUnitsSold: Cross-sell units sold is the total number of products
// sold as a result of advertising a different product. How it works: You
// report conversions with cart data for completed purchases on your website.
// If the ad that was interacted with before the purchase has an associated
// product (see Shopping Ads) then this product is considered the advertised
// product. Any product included in the order the customer places is a sold
// product. If these products don't match then this is considered cross-sell.
// Cross-sell units sold is the total number of cross-sold products from all
// orders attributed to your ads. Example: Someone clicked on a Shopping ad for
// a hat then bought the same hat, a shirt and a jacket. The cross-sell units
// sold in this order is 2. This metric is only available if you report
// conversions with cart data.
CrossSellUnitsSold float64 `json:"crossSellUnitsSold,omitempty"`
// Ctr: The number of clicks your ad receives (Clicks) divided by the number of
// times your ad is shown (Impressions).
Ctr float64 `json:"ctr,omitempty"`
// HistoricalCreativeQualityScore: The creative historical quality score.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "BELOW_AVERAGE" - Quality of the creative is below average.
// "AVERAGE" - Quality of the creative is average.
// "ABOVE_AVERAGE" - Quality of the creative is above average.
HistoricalCreativeQualityScore string `json:"historicalCreativeQualityScore,omitempty"`
// HistoricalLandingPageQualityScore: The quality of historical landing page
// experience.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "BELOW_AVERAGE" - Quality of the creative is below average.
// "AVERAGE" - Quality of the creative is average.
// "ABOVE_AVERAGE" - Quality of the creative is above average.
HistoricalLandingPageQualityScore string `json:"historicalLandingPageQualityScore,omitempty"`
// HistoricalQualityScore: The historical quality score.
HistoricalQualityScore int64 `json:"historicalQualityScore,omitempty,string"`
// HistoricalSearchPredictedCtr: The historical search predicted click through
// rate (CTR).
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "BELOW_AVERAGE" - Quality of the creative is below average.
// "AVERAGE" - Quality of the creative is average.
// "ABOVE_AVERAGE" - Quality of the creative is above average.
HistoricalSearchPredictedCtr string `json:"historicalSearchPredictedCtr,omitempty"`
// Impressions: Count of how often your ad has appeared on a search results
// page or website on the Google Network.
Impressions int64 `json:"impressions,omitempty,string"`
// InteractionEventTypes: The types of payable and free interactions.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "CLICK" - Click to site. In most cases, this interaction navigates to an
// external location, usually the advertiser's landing page. This is also the
// default InteractionEventType for click events.
// "ENGAGEMENT" - The user's expressed intent to engage with the ad in-place.
// "VIDEO_VIEW" - User viewed a video ad.
// "NONE" - The default InteractionEventType for ad conversion events. This
// is used when an ad conversion row does NOT indicate that the free
// interactions (for example, the ad conversions) should be 'promoted' and
// reported as part of the core metrics. These are simply other (ad)
// conversions.
InteractionEventTypes []string `json:"interactionEventTypes,omitempty"`
// InteractionRate: How often people interact with your ad after it is shown to
// them. This is the number of interactions divided by the number of times your
// ad is shown.
InteractionRate float64 `json:"interactionRate,omitempty"`
// Interactions: The number of interactions. An interaction is the main user
// action associated with an ad format-clicks for text and shopping ads, views
// for video ads, and so on.
Interactions int64 `json:"interactions,omitempty,string"`
// InvalidClickRate: The percentage of clicks filtered out of your total number
// of clicks (filtered + non-filtered clicks) during the reporting period.
InvalidClickRate float64 `json:"invalidClickRate,omitempty"`
// InvalidClicks: Number of clicks Google considers illegitimate and doesn't
// charge you for.
InvalidClicks int64 `json:"invalidClicks,omitempty,string"`
// LeadCostOfGoodsSoldMicros: Lead cost of goods sold (COGS) is the total cost
// of products sold as a result of advertising the same product. How it works:
// You report conversions with cart data for completed purchases on your
// website. If the ad that was interacted with has an associated product (see
// Shopping Ads) then this product is considered the advertised product. Any
// product included in the order the customer places is a sold product. If the
// advertised and sold products match, then the cost of these goods is counted
// under lead cost of goods sold. Example: Someone clicked on a Shopping ad for
// a hat then bought the same hat and a shirt. The hat has a cost of goods sold
// value of $3, the shirt has a cost of goods sold value of $5. The lead cost
// of goods sold for this order is $3. This metric is only available if you
// report conversions with cart data. This metric is a monetary value and
// returned in the customer's currency by default. See the metrics_currency
// parameter at
// https://developers.google.com/search-ads/reporting/query/query-structure#parameters_clause
LeadCostOfGoodsSoldMicros int64 `json:"leadCostOfGoodsSoldMicros,omitempty,string"`
// LeadGrossProfitMicros: Lead gross profit is the profit you made from
// products sold as a result of advertising the same product, minus cost of
// goods sold (COGS). How it works: You report conversions with cart data for
// completed purchases on your website. If the ad that was interacted with
// before the purchase has an associated product (see Shopping Ads) then this
// product is considered the advertised product. Any product included in the
// order the customer places is a sold product. If the advertised and sold
// products match, then the revenue you made from these sales minus the cost of
// goods sold is your lead gross profit. Example: Someone clicked on a Shopping
// ad for a hat then bought the same hat and a shirt. The hat is priced $10 and
// has a cost of goods sold value of $3. The lead gross profit of this order is
// $7 = $10 - $3. This metric is only available if you report conversions with
// cart data. This metric is a monetary value and returned in the customer's
// currency by default. See the metrics_currency parameter at
// https://developers.google.com/search-ads/reporting/query/query-structure#parameters_clause
LeadGrossProfitMicros int64 `json:"leadGrossProfitMicros,omitempty,string"`
// LeadRevenueMicros: Lead revenue is the total amount you made from products
// sold as a result of advertising the same product. How it works: You report
// conversions with cart data for completed purchases on your website. If the
// ad that was interacted with before the purchase has an associated product
// (see Shopping Ads) then this product is considered the advertised product.
// Any product included in the order the customer places is a sold product. If
// the advertised and sold products match, then the total value you made from
// the sales of these products is shown under lead revenue. Example: Someone
// clicked on a Shopping ad for a hat then bought the same hat and a shirt. The
// hat is priced $10 and the shirt is priced $20. The lead revenue of this
// order is $10. This metric is only available if you report conversions with
// cart data. This metric is a monetary value and returned in the customer's
// currency by default. See the metrics_currency parameter at
// https://developers.google.com/search-ads/reporting/query/query-structure#parameters_clause
LeadRevenueMicros int64 `json:"leadRevenueMicros,omitempty,string"`
// LeadUnitsSold: Lead units sold is the total number of products sold as a
// result of advertising the same product. How it works: You report conversions
// with cart data for completed purchases on your website. If the ad that was
// interacted with before the purchase has an associated product (see Shopping
// Ads) then this product is considered the advertised product. Any product
// included in the order the customer places is a sold product. If the
// advertised and sold products match, then the total number of these products
// sold is shown under lead units sold. Example: Someone clicked on a Shopping
// ad for a hat then bought the same hat, a shirt and a jacket. The lead units
// sold in this order is 1. This metric is only available if you report
// conversions with cart data.
LeadUnitsSold float64 `json:"leadUnitsSold,omitempty"`
// MobileFriendlyClicksPercentage: The percentage of mobile clicks that go to a
// mobile-friendly page.
MobileFriendlyClicksPercentage float64 `json:"mobileFriendlyClicksPercentage,omitempty"`
// RawEventConversionMetrics: The raw event conversion metrics.
RawEventConversionMetrics []*GoogleAdsSearchads360V0Common__Value `json:"rawEventConversionMetrics,omitempty"`
// SearchAbsoluteTopImpressionShare: The percentage of the customer's Shopping
// or Search ad impressions that are shown in the most prominent Shopping
// position. See https://support.google.com/sa360/answer/9566729 for details.
// Any value below 0.1 is reported as 0.0999.
SearchAbsoluteTopImpressionShare float64 `json:"searchAbsoluteTopImpressionShare,omitempty"`
// SearchBudgetLostAbsoluteTopImpressionShare: The number estimating how often
// your ad wasn't the very first ad among the top ads in the search results due
// to a low budget. Note: Search budget lost absolute top impression share is
// reported in the range of 0 to 0.9. Any value above 0.9 is reported as
// 0.9001.
SearchBudgetLostAbsoluteTopImpressionShare float64 `json:"searchBudgetLostAbsoluteTopImpressionShare,omitempty"`
// SearchBudgetLostImpressionShare: The estimated percent of times that your ad
// was eligible to show on the Search Network but didn't because your budget
// was too low. Note: Search budget lost impression share is reported in the
// range of 0 to 0.9. Any value above 0.9 is reported as 0.9001.
SearchBudgetLostImpressionShare float64 `json:"searchBudgetLostImpressionShare,omitempty"`
// SearchBudgetLostTopImpressionShare: The number estimating how often your ad
// didn't show adjacent to the top organic search results due to a low budget.
// Note: Search budget lost top impression share is reported in the range of 0
// to 0.9. Any value above 0.9 is reported as 0.9001.
SearchBudgetLostTopImpressionShare float64 `json:"searchBudgetLostTopImpressionShare,omitempty"`
// SearchClickShare: The number of clicks you've received on the Search Network
// divided by the estimated number of clicks you were eligible to receive.
// Note: Search click share is reported in the range of 0.1 to 1. Any value
// below 0.1 is reported as 0.0999.
SearchClickShare float64 `json:"searchClickShare,omitempty"`
// SearchExactMatchImpressionShare: The impressions you've received divided by
// the estimated number of impressions you were eligible to receive on the
// Search Network for search terms that matched your keywords exactly (or were
// close variants of your keyword), regardless of your keyword match types.
// Note: Search exact match impression share is reported in the range of 0.1 to
// 1. Any value below 0.1 is reported as 0.0999.
SearchExactMatchImpressionShare float64 `json:"searchExactMatchImpressionShare,omitempty"`
// SearchImpressionShare: The impressions you've received on the Search Network
// divided by the estimated number of impressions you were eligible to receive.
// Note: Search impression share is reported in the range of 0.1 to 1. Any
// value below 0.1 is reported as 0.0999.
SearchImpressionShare float64 `json:"searchImpressionShare,omitempty"`
// SearchRankLostAbsoluteTopImpressionShare: The number estimating how often
// your ad wasn't the very first ad among the top ads in the search results due
// to poor Ad Rank. Note: Search rank lost absolute top impression share is
// reported in the range of 0 to 0.9. Any value above 0.9 is reported as
// 0.9001.
SearchRankLostAbsoluteTopImpressionShare float64 `json:"searchRankLostAbsoluteTopImpressionShare,omitempty"`
// SearchRankLostImpressionShare: The estimated percentage of impressions on
// the Search Network that your ads didn't receive due to poor Ad Rank. Note:
// Search rank lost impression share is reported in the range of 0 to 0.9. Any
// value above 0.9 is reported as 0.9001.
SearchRankLostImpressionShare float64 `json:"searchRankLostImpressionShare,omitempty"`
// SearchRankLostTopImpressionShare: The number estimating how often your ad
// didn't show adjacent to the top organic search results due to poor Ad Rank.
// Note: Search rank lost top impression share is reported in the range of 0 to
// 0.9. Any value above 0.9 is reported as 0.9001.
SearchRankLostTopImpressionShare float64 `json:"searchRankLostTopImpressionShare,omitempty"`
// SearchTopImpressionShare: The impressions you've received among the top ads
// compared to the estimated number of impressions you were eligible to receive
// among the top ads. Note: Search top impression share is reported in the
// range of 0.1 to 1. Any value below 0.1 is reported as 0.0999. Top ads are
// generally above the top organic results, although they may show below the
// top organic results on certain queries.
SearchTopImpressionShare float64 `json:"searchTopImpressionShare,omitempty"`
// TopImpressionPercentage: The percent of your ad impressions that are shown
// adjacent to the top organic search results.
TopImpressionPercentage float64 `json:"topImpressionPercentage,omitempty"`
// ValuePerAllConversions: The value of all conversions divided by the number
// of all conversions.
ValuePerAllConversions float64 `json:"valuePerAllConversions,omitempty"`
// ValuePerAllConversionsByConversionDate: The value of all conversions divided
// by the number of all conversions. When this column is selected with date,
// the values in date column means the conversion date. Details for the
// by_conversion_date columns are available at
// https://support.google.com/sa360/answer/9250611.
ValuePerAllConversionsByConversionDate float64 `json:"valuePerAllConversionsByConversionDate,omitempty"`
// ValuePerConversion: The value of biddable conversion divided by the number
// of biddable conversions. Shows how much, on average, each of the biddable
// conversions is worth.
ValuePerConversion float64 `json:"valuePerConversion,omitempty"`
// ValuePerConversionsByConversionDate: Biddable conversions value by
// conversion date divided by biddable conversions by conversion date. Shows
// how much, on average, each of the biddable conversions is worth (by
// conversion date). When this column is selected with date, the values in date
// column means the conversion date.
ValuePerConversionsByConversionDate float64 `json:"valuePerConversionsByConversionDate,omitempty"`
// Visits: Clicks that Search Ads 360 has successfully recorded and forwarded
// to an advertiser's landing page.
Visits float64 `json:"visits,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "AbsoluteTopImpressionPercentage") to unconditionally include in API
// requests. By default, fields with empty or default values are omitted from
// API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AbsoluteTopImpressionPercentage")
// to include in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__Metrics) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__Metrics
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
func (s *GoogleAdsSearchads360V0Common__Metrics) UnmarshalJSON(data []byte) error {
type NoMethod GoogleAdsSearchads360V0Common__Metrics
var s1 struct {
AbsoluteTopImpressionPercentage gensupport.JSONFloat64 `json:"absoluteTopImpressionPercentage"`
AllConversions gensupport.JSONFloat64 `json:"allConversions"`
AllConversionsByConversionDate gensupport.JSONFloat64 `json:"allConversionsByConversionDate"`
AllConversionsFromClickToCall gensupport.JSONFloat64 `json:"allConversionsFromClickToCall"`
AllConversionsFromDirections gensupport.JSONFloat64 `json:"allConversionsFromDirections"`
AllConversionsFromInteractionsRate gensupport.JSONFloat64 `json:"allConversionsFromInteractionsRate"`
AllConversionsFromInteractionsValuePerInteraction gensupport.JSONFloat64 `json:"allConversionsFromInteractionsValuePerInteraction"`
AllConversionsFromMenu gensupport.JSONFloat64 `json:"allConversionsFromMenu"`
AllConversionsFromOrder gensupport.JSONFloat64 `json:"allConversionsFromOrder"`
AllConversionsFromOtherEngagement gensupport.JSONFloat64 `json:"allConversionsFromOtherEngagement"`
AllConversionsFromStoreVisit gensupport.JSONFloat64 `json:"allConversionsFromStoreVisit"`
AllConversionsFromStoreWebsite gensupport.JSONFloat64 `json:"allConversionsFromStoreWebsite"`
AllConversionsValue gensupport.JSONFloat64 `json:"allConversionsValue"`
AllConversionsValueByConversionDate gensupport.JSONFloat64 `json:"allConversionsValueByConversionDate"`
AllConversionsValuePerCost gensupport.JSONFloat64 `json:"allConversionsValuePerCost"`
AverageCost gensupport.JSONFloat64 `json:"averageCost"`
AverageCpc gensupport.JSONFloat64 `json:"averageCpc"`
AverageCpm gensupport.JSONFloat64 `json:"averageCpm"`
ClientAccountConversions gensupport.JSONFloat64 `json:"clientAccountConversions"`
ClientAccountConversionsValue gensupport.JSONFloat64 `json:"clientAccountConversionsValue"`
ClientAccountCrossSellUnitsSold gensupport.JSONFloat64 `json:"clientAccountCrossSellUnitsSold"`
ClientAccountLeadUnitsSold gensupport.JSONFloat64 `json:"clientAccountLeadUnitsSold"`
ContentBudgetLostImpressionShare gensupport.JSONFloat64 `json:"contentBudgetLostImpressionShare"`
ContentImpressionShare gensupport.JSONFloat64 `json:"contentImpressionShare"`
ContentRankLostImpressionShare gensupport.JSONFloat64 `json:"contentRankLostImpressionShare"`
Conversions gensupport.JSONFloat64 `json:"conversions"`
ConversionsByConversionDate gensupport.JSONFloat64 `json:"conversionsByConversionDate"`
ConversionsFromInteractionsRate gensupport.JSONFloat64 `json:"conversionsFromInteractionsRate"`
ConversionsFromInteractionsValuePerInteraction gensupport.JSONFloat64 `json:"conversionsFromInteractionsValuePerInteraction"`
ConversionsValue gensupport.JSONFloat64 `json:"conversionsValue"`
ConversionsValueByConversionDate gensupport.JSONFloat64 `json:"conversionsValueByConversionDate"`
ConversionsValuePerCost gensupport.JSONFloat64 `json:"conversionsValuePerCost"`
CostPerAllConversions gensupport.JSONFloat64 `json:"costPerAllConversions"`
CostPerConversion gensupport.JSONFloat64 `json:"costPerConversion"`
CostPerCurrentModelAttributedConversion gensupport.JSONFloat64 `json:"costPerCurrentModelAttributedConversion"`
CrossDeviceConversions gensupport.JSONFloat64 `json:"crossDeviceConversions"`
CrossDeviceConversionsValue gensupport.JSONFloat64 `json:"crossDeviceConversionsValue"`
CrossSellUnitsSold gensupport.JSONFloat64 `json:"crossSellUnitsSold"`
Ctr gensupport.JSONFloat64 `json:"ctr"`
InteractionRate gensupport.JSONFloat64 `json:"interactionRate"`
InvalidClickRate gensupport.JSONFloat64 `json:"invalidClickRate"`
LeadUnitsSold gensupport.JSONFloat64 `json:"leadUnitsSold"`
MobileFriendlyClicksPercentage gensupport.JSONFloat64 `json:"mobileFriendlyClicksPercentage"`
SearchAbsoluteTopImpressionShare gensupport.JSONFloat64 `json:"searchAbsoluteTopImpressionShare"`
SearchBudgetLostAbsoluteTopImpressionShare gensupport.JSONFloat64 `json:"searchBudgetLostAbsoluteTopImpressionShare"`
SearchBudgetLostImpressionShare gensupport.JSONFloat64 `json:"searchBudgetLostImpressionShare"`
SearchBudgetLostTopImpressionShare gensupport.JSONFloat64 `json:"searchBudgetLostTopImpressionShare"`
SearchClickShare gensupport.JSONFloat64 `json:"searchClickShare"`
SearchExactMatchImpressionShare gensupport.JSONFloat64 `json:"searchExactMatchImpressionShare"`
SearchImpressionShare gensupport.JSONFloat64 `json:"searchImpressionShare"`
SearchRankLostAbsoluteTopImpressionShare gensupport.JSONFloat64 `json:"searchRankLostAbsoluteTopImpressionShare"`
SearchRankLostImpressionShare gensupport.JSONFloat64 `json:"searchRankLostImpressionShare"`
SearchRankLostTopImpressionShare gensupport.JSONFloat64 `json:"searchRankLostTopImpressionShare"`
SearchTopImpressionShare gensupport.JSONFloat64 `json:"searchTopImpressionShare"`
TopImpressionPercentage gensupport.JSONFloat64 `json:"topImpressionPercentage"`
ValuePerAllConversions gensupport.JSONFloat64 `json:"valuePerAllConversions"`
ValuePerAllConversionsByConversionDate gensupport.JSONFloat64 `json:"valuePerAllConversionsByConversionDate"`
ValuePerConversion gensupport.JSONFloat64 `json:"valuePerConversion"`
ValuePerConversionsByConversionDate gensupport.JSONFloat64 `json:"valuePerConversionsByConversionDate"`
Visits gensupport.JSONFloat64 `json:"visits"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.AbsoluteTopImpressionPercentage = float64(s1.AbsoluteTopImpressionPercentage)
s.AllConversions = float64(s1.AllConversions)
s.AllConversionsByConversionDate = float64(s1.AllConversionsByConversionDate)
s.AllConversionsFromClickToCall = float64(s1.AllConversionsFromClickToCall)
s.AllConversionsFromDirections = float64(s1.AllConversionsFromDirections)
s.AllConversionsFromInteractionsRate = float64(s1.AllConversionsFromInteractionsRate)
s.AllConversionsFromInteractionsValuePerInteraction = float64(s1.AllConversionsFromInteractionsValuePerInteraction)
s.AllConversionsFromMenu = float64(s1.AllConversionsFromMenu)
s.AllConversionsFromOrder = float64(s1.AllConversionsFromOrder)
s.AllConversionsFromOtherEngagement = float64(s1.AllConversionsFromOtherEngagement)
s.AllConversionsFromStoreVisit = float64(s1.AllConversionsFromStoreVisit)
s.AllConversionsFromStoreWebsite = float64(s1.AllConversionsFromStoreWebsite)
s.AllConversionsValue = float64(s1.AllConversionsValue)
s.AllConversionsValueByConversionDate = float64(s1.AllConversionsValueByConversionDate)
s.AllConversionsValuePerCost = float64(s1.AllConversionsValuePerCost)
s.AverageCost = float64(s1.AverageCost)
s.AverageCpc = float64(s1.AverageCpc)
s.AverageCpm = float64(s1.AverageCpm)
s.ClientAccountConversions = float64(s1.ClientAccountConversions)
s.ClientAccountConversionsValue = float64(s1.ClientAccountConversionsValue)
s.ClientAccountCrossSellUnitsSold = float64(s1.ClientAccountCrossSellUnitsSold)
s.ClientAccountLeadUnitsSold = float64(s1.ClientAccountLeadUnitsSold)
s.ContentBudgetLostImpressionShare = float64(s1.ContentBudgetLostImpressionShare)
s.ContentImpressionShare = float64(s1.ContentImpressionShare)
s.ContentRankLostImpressionShare = float64(s1.ContentRankLostImpressionShare)
s.Conversions = float64(s1.Conversions)
s.ConversionsByConversionDate = float64(s1.ConversionsByConversionDate)
s.ConversionsFromInteractionsRate = float64(s1.ConversionsFromInteractionsRate)
s.ConversionsFromInteractionsValuePerInteraction = float64(s1.ConversionsFromInteractionsValuePerInteraction)
s.ConversionsValue = float64(s1.ConversionsValue)
s.ConversionsValueByConversionDate = float64(s1.ConversionsValueByConversionDate)
s.ConversionsValuePerCost = float64(s1.ConversionsValuePerCost)
s.CostPerAllConversions = float64(s1.CostPerAllConversions)
s.CostPerConversion = float64(s1.CostPerConversion)
s.CostPerCurrentModelAttributedConversion = float64(s1.CostPerCurrentModelAttributedConversion)
s.CrossDeviceConversions = float64(s1.CrossDeviceConversions)
s.CrossDeviceConversionsValue = float64(s1.CrossDeviceConversionsValue)
s.CrossSellUnitsSold = float64(s1.CrossSellUnitsSold)
s.Ctr = float64(s1.Ctr)
s.InteractionRate = float64(s1.InteractionRate)
s.InvalidClickRate = float64(s1.InvalidClickRate)
s.LeadUnitsSold = float64(s1.LeadUnitsSold)
s.MobileFriendlyClicksPercentage = float64(s1.MobileFriendlyClicksPercentage)
s.SearchAbsoluteTopImpressionShare = float64(s1.SearchAbsoluteTopImpressionShare)
s.SearchBudgetLostAbsoluteTopImpressionShare = float64(s1.SearchBudgetLostAbsoluteTopImpressionShare)
s.SearchBudgetLostImpressionShare = float64(s1.SearchBudgetLostImpressionShare)
s.SearchBudgetLostTopImpressionShare = float64(s1.SearchBudgetLostTopImpressionShare)
s.SearchClickShare = float64(s1.SearchClickShare)
s.SearchExactMatchImpressionShare = float64(s1.SearchExactMatchImpressionShare)
s.SearchImpressionShare = float64(s1.SearchImpressionShare)
s.SearchRankLostAbsoluteTopImpressionShare = float64(s1.SearchRankLostAbsoluteTopImpressionShare)
s.SearchRankLostImpressionShare = float64(s1.SearchRankLostImpressionShare)
s.SearchRankLostTopImpressionShare = float64(s1.SearchRankLostTopImpressionShare)
s.SearchTopImpressionShare = float64(s1.SearchTopImpressionShare)
s.TopImpressionPercentage = float64(s1.TopImpressionPercentage)
s.ValuePerAllConversions = float64(s1.ValuePerAllConversions)
s.ValuePerAllConversionsByConversionDate = float64(s1.ValuePerAllConversionsByConversionDate)
s.ValuePerConversion = float64(s1.ValuePerConversion)
s.ValuePerConversionsByConversionDate = float64(s1.ValuePerConversionsByConversionDate)
s.Visits = float64(s1.Visits)
return nil
}
// GoogleAdsSearchads360V0Common__MobileAppAsset: An asset representing a
// mobile app.
type GoogleAdsSearchads360V0Common__MobileAppAsset struct {
// AppId: Required. A string that uniquely identifies a mobile application. It
// should just contain the platform native id, like "com.android.ebay" for
// Android or "12345689" for iOS.
AppId string `json:"appId,omitempty"`
// AppStore: Required. The application store that distributes this specific
// app.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "APPLE_APP_STORE" - Mobile app vendor for Apple app store.
// "GOOGLE_APP_STORE" - Mobile app vendor for Google app store.
AppStore string `json:"appStore,omitempty"`
// ForceSendFields is a list of field names (e.g. "AppId") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AppId") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__MobileAppAsset) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__MobileAppAsset
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__PercentCpc: A bidding strategy where bids are
// a fraction of the advertised price for some good or service.
type GoogleAdsSearchads360V0Common__PercentCpc struct {
// CpcBidCeilingMicros: Maximum bid limit that can be set by the bid strategy.
// This is an optional field entered by the advertiser and specified in local
// micros. Note: A zero value is interpreted in the same way as having
// bid_ceiling undefined.
CpcBidCeilingMicros int64 `json:"cpcBidCeilingMicros,omitempty,string"`
// EnhancedCpcEnabled: Adjusts the bid for each auction upward or downward,
// depending on the likelihood of a conversion. Individual bids may exceed
// cpc_bid_ceiling_micros, but the average bid amount for a campaign should
// not.
EnhancedCpcEnabled bool `json:"enhancedCpcEnabled,omitempty"`
// ForceSendFields is a list of field names (e.g. "CpcBidCeilingMicros") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CpcBidCeilingMicros") to include
// in API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__PercentCpc) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__PercentCpc
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__RealTimeBiddingSetting: Settings for
// Real-Time Bidding, a feature only available for campaigns targeting the Ad
// Exchange network.
type GoogleAdsSearchads360V0Common__RealTimeBiddingSetting struct {
// OptIn: Whether the campaign is opted in to real-time bidding.
OptIn bool `json:"optIn,omitempty"`
// ForceSendFields is a list of field names (e.g. "OptIn") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "OptIn") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__RealTimeBiddingSetting) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__RealTimeBiddingSetting
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__SearchAds360ExpandedDynamicSearchAdInfo: An
// expanded dynamic search ad.
type GoogleAdsSearchads360V0Common__SearchAds360ExpandedDynamicSearchAdInfo struct {
// AdTrackingId: The tracking id of the ad.
AdTrackingId int64 `json:"adTrackingId,omitempty,string"`
// Description1: The first line of the ad's description.
Description1 string `json:"description1,omitempty"`
// Description2: The second line of the ad's description.
Description2 string `json:"description2,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdTrackingId") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdTrackingId") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__SearchAds360ExpandedDynamicSearchAdInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__SearchAds360ExpandedDynamicSearchAdInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__SearchAds360ExpandedTextAdInfo: A Search Ads
// 360 expanded text ad.
type GoogleAdsSearchads360V0Common__SearchAds360ExpandedTextAdInfo struct {
// AdTrackingId: The tracking id of the ad.
AdTrackingId int64 `json:"adTrackingId,omitempty,string"`
// Description1: The first line of the ad's description.
Description1 string `json:"description1,omitempty"`
// Description2: The second line of the ad's description.
Description2 string `json:"description2,omitempty"`
// Headline: The headline of the ad.
Headline string `json:"headline,omitempty"`
// Headline2: The second headline of the ad.
Headline2 string `json:"headline2,omitempty"`
// Headline3: The third headline of the ad.
Headline3 string `json:"headline3,omitempty"`
// Path1: Text appended to the auto-generated visible URL with a delimiter.
Path1 string `json:"path1,omitempty"`
// Path2: Text appended to path1 with a delimiter.
Path2 string `json:"path2,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdTrackingId") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdTrackingId") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__SearchAds360ExpandedTextAdInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__SearchAds360ExpandedTextAdInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__SearchAds360ProductAdInfo: A Search Ads 360
// product ad.
type GoogleAdsSearchads360V0Common__SearchAds360ProductAdInfo struct {
}
// GoogleAdsSearchads360V0Common__SearchAds360ResponsiveSearchAdInfo: A Search
// Ads 360 responsive search ad.
type GoogleAdsSearchads360V0Common__SearchAds360ResponsiveSearchAdInfo struct {
// AdTrackingId: The tracking id of the ad.
AdTrackingId int64 `json:"adTrackingId,omitempty,string"`
// Path1: Text appended to the auto-generated visible URL with a delimiter.
Path1 string `json:"path1,omitempty"`
// Path2: Text appended to path1 with a delimiter.
Path2 string `json:"path2,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdTrackingId") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdTrackingId") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__SearchAds360ResponsiveSearchAdInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__SearchAds360ResponsiveSearchAdInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__SearchAds360TextAdInfo: A Search Ads 360 text
// ad.
type GoogleAdsSearchads360V0Common__SearchAds360TextAdInfo struct {
// AdTrackingId: The tracking id of the ad.
AdTrackingId int64 `json:"adTrackingId,omitempty,string"`
// Description1: The first line of the ad's description.
Description1 string `json:"description1,omitempty"`
// Description2: The second line of the ad's description.
Description2 string `json:"description2,omitempty"`
// DisplayMobileUrl: The displayed mobile URL of the ad.
DisplayMobileUrl string `json:"displayMobileUrl,omitempty"`
// DisplayUrl: The displayed URL of the ad.
DisplayUrl string `json:"displayUrl,omitempty"`
// Headline: The headline of the ad.
Headline string `json:"headline,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdTrackingId") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdTrackingId") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__SearchAds360TextAdInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__SearchAds360TextAdInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__Segments: Segment only fields.
type GoogleAdsSearchads360V0Common__Segments struct {
// AdNetworkType: Ad network type.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - The value is unknown in this version.
// "SEARCH" - Google search.
// "SEARCH_PARTNERS" - Search partners.
// "CONTENT" - Display Network.
// "YOUTUBE_SEARCH" - YouTube Search.
// "YOUTUBE_WATCH" - YouTube Videos
// "MIXED" - Cross-network.
AdNetworkType string `json:"adNetworkType,omitempty"`
// AssetInteractionTarget: Only used with CustomerAsset, CampaignAsset and
// AdGroupAsset metrics. Indicates whether the interaction metrics occurred on
// the asset itself or a different asset or ad unit. Interactions (for example,
// clicks) are counted across all the parts of the served ad (for example, Ad
// itself and other components like Sitelinks) when they are served together.
// When interaction_on_this_asset is true, it means the interactions are on
// this specific asset and when interaction_on_this_asset is false, it means
// the interactions is not on this specific asset but on other parts of the
// served ad this asset is served with.
AssetInteractionTarget *GoogleAdsSearchads360V0Common__AssetInteractionTarget `json:"assetInteractionTarget,omitempty"`
// ConversionAction: Resource name of the conversion action.
ConversionAction string `json:"conversionAction,omitempty"`
// ConversionActionCategory: Conversion action category.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "DEFAULT" - Default category.
// "PAGE_VIEW" - User visiting a page.
// "PURCHASE" - Purchase, sales, or "order placed" event.
// "SIGNUP" - Signup user action.
// "LEAD" - Lead-generating action.
// "DOWNLOAD" - Software download action (as for an app).
// "ADD_TO_CART" - The addition of items to a shopping cart or bag on an
// advertiser site.
// "BEGIN_CHECKOUT" - When someone enters the checkout flow on an advertiser
// site.
// "SUBSCRIBE_PAID" - The start of a paid subscription for a product or
// service.
// "PHONE_CALL_LEAD" - A call to indicate interest in an advertiser's
// offering.
// "IMPORTED_LEAD" - A lead conversion imported from an external source into
// Google Ads.
// "SUBMIT_LEAD_FORM" - A submission of a form on an advertiser site
// indicating business interest.
// "BOOK_APPOINTMENT" - A booking of an appointment with an advertiser's
// business.
// "REQUEST_QUOTE" - A quote or price estimate request.
// "GET_DIRECTIONS" - A search for an advertiser's business location with
// intention to visit.
// "OUTBOUND_CLICK" - A click to an advertiser's partner's site.
// "CONTACT" - A call, SMS, email, chat or other type of contact to an
// advertiser.
// "ENGAGEMENT" - A website engagement event such as long site time or a
// Google Analytics (GA) Smart Goal. Intended to be used for GA, Firebase, GA
// Gold goal imports.
// "STORE_VISIT" - A visit to a physical store location.
// "STORE_SALE" - A sale occurring in a physical store.
// "QUALIFIED_LEAD" - A lead conversion imported from an external source into
// Google Ads, that has been further qualified by the advertiser
// (marketing/sales team). In the lead-to-sale journey, advertisers get leads,
// then act on them by reaching out to the consumer. If the consumer is
// interested and may end up buying their product, the advertiser marks such
// leads as "qualified leads".
// "CONVERTED_LEAD" - A lead conversion imported from an external source into
// Google Ads, that has further completed a chosen stage as defined by the lead
// gen advertiser.
ConversionActionCategory string `json:"conversionActionCategory,omitempty"`
// ConversionActionName: Conversion action name.
ConversionActionName string `json:"conversionActionName,omitempty"`
// ConversionCustomDimensions: The conversion custom dimensions.
ConversionCustomDimensions []*GoogleAdsSearchads360V0Common__Value `json:"conversionCustomDimensions,omitempty"`
// Date: Date to which metrics apply. yyyy-MM-dd format, for example,
// 2018-04-17.
Date string `json:"date,omitempty"`
// DayOfWeek: Day of the week, for example, MONDAY.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - The value is unknown in this version.
// "MONDAY" - Monday.
// "TUESDAY" - Tuesday.
// "WEDNESDAY" - Wednesday.
// "THURSDAY" - Thursday.
// "FRIDAY" - Friday.
// "SATURDAY" - Saturday.
// "SUNDAY" - Sunday.
DayOfWeek string `json:"dayOfWeek,omitempty"`
// Device: Device to which metrics apply.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - The value is unknown in this version.
// "MOBILE" - Mobile devices with full browsers.
// "TABLET" - Tablets with full browsers.
// "DESKTOP" - Computers.
// "CONNECTED_TV" - Smart TVs and game consoles.
// "OTHER" - Other device types.
Device string `json:"device,omitempty"`
// Keyword: Keyword criterion.
Keyword *GoogleAdsSearchads360V0Common__Keyword `json:"keyword,omitempty"`
// Month: Month as represented by the date of the first day of a month.
// Formatted as yyyy-MM-dd.
Month string `json:"month,omitempty"`
// ProductBiddingCategoryLevel1: Bidding category (level 1) of the product.
ProductBiddingCategoryLevel1 string `json:"productBiddingCategoryLevel1,omitempty"`
// ProductBiddingCategoryLevel2: Bidding category (level 2) of the product.
ProductBiddingCategoryLevel2 string `json:"productBiddingCategoryLevel2,omitempty"`
// ProductBiddingCategoryLevel3: Bidding category (level 3) of the product.
ProductBiddingCategoryLevel3 string `json:"productBiddingCategoryLevel3,omitempty"`
// ProductBiddingCategoryLevel4: Bidding category (level 4) of the product.
ProductBiddingCategoryLevel4 string `json:"productBiddingCategoryLevel4,omitempty"`
// ProductBiddingCategoryLevel5: Bidding category (level 5) of the product.
ProductBiddingCategoryLevel5 string `json:"productBiddingCategoryLevel5,omitempty"`
// ProductBrand: Brand of the product.
ProductBrand string `json:"productBrand,omitempty"`
// ProductChannel: Channel of the product.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ONLINE" - The item is sold online.
// "LOCAL" - The item is sold in local stores.
ProductChannel string `json:"productChannel,omitempty"`
// ProductChannelExclusivity: Channel exclusivity of the product.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "SINGLE_CHANNEL" - The item is sold through one channel only, either local
// stores or online as indicated by its ProductChannel.
// "MULTI_CHANNEL" - The item is matched to its online or local stores
// counterpart, indicating it is available for purchase in both
// ShoppingProductChannels.
ProductChannelExclusivity string `json:"productChannelExclusivity,omitempty"`
// ProductCondition: Condition of the product.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "OLD" - The product condition is old.
// "NEW" - The product condition is new.
// "REFURBISHED" - The product condition is refurbished.
// "USED" - The product condition is used.
ProductCondition string `json:"productCondition,omitempty"`
// ProductCountry: Resource name of the geo target constant for the country of
// sale of the product.
ProductCountry string `json:"productCountry,omitempty"`
// ProductCustomAttribute0: Custom attribute 0 of the product.
ProductCustomAttribute0 string `json:"productCustomAttribute0,omitempty"`
// ProductCustomAttribute1: Custom attribute 1 of the product.
ProductCustomAttribute1 string `json:"productCustomAttribute1,omitempty"`
// ProductCustomAttribute2: Custom attribute 2 of the product.
ProductCustomAttribute2 string `json:"productCustomAttribute2,omitempty"`
// ProductCustomAttribute3: Custom attribute 3 of the product.
ProductCustomAttribute3 string `json:"productCustomAttribute3,omitempty"`
// ProductCustomAttribute4: Custom attribute 4 of the product.
ProductCustomAttribute4 string `json:"productCustomAttribute4,omitempty"`
// ProductItemId: Item ID of the product.
ProductItemId string `json:"productItemId,omitempty"`
// ProductLanguage: Resource name of the language constant for the language of
// the product.
ProductLanguage string `json:"productLanguage,omitempty"`
// ProductSoldBiddingCategoryLevel1: Bidding category (level 1) of the product
// sold.
ProductSoldBiddingCategoryLevel1 string `json:"productSoldBiddingCategoryLevel1,omitempty"`
// ProductSoldBiddingCategoryLevel2: Bidding category (level 2) of the product
// sold.
ProductSoldBiddingCategoryLevel2 string `json:"productSoldBiddingCategoryLevel2,omitempty"`
// ProductSoldBiddingCategoryLevel3: Bidding category (level 3) of the product
// sold.
ProductSoldBiddingCategoryLevel3 string `json:"productSoldBiddingCategoryLevel3,omitempty"`
// ProductSoldBiddingCategoryLevel4: Bidding category (level 4) of the product
// sold.
ProductSoldBiddingCategoryLevel4 string `json:"productSoldBiddingCategoryLevel4,omitempty"`
// ProductSoldBiddingCategoryLevel5: Bidding category (level 5) of the product
// sold.
ProductSoldBiddingCategoryLevel5 string `json:"productSoldBiddingCategoryLevel5,omitempty"`
// ProductSoldBrand: Brand of the product sold.
ProductSoldBrand string `json:"productSoldBrand,omitempty"`
// ProductSoldCondition: Condition of the product sold.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "OLD" - The product condition is old.
// "NEW" - The product condition is new.
// "REFURBISHED" - The product condition is refurbished.
// "USED" - The product condition is used.
ProductSoldCondition string `json:"productSoldCondition,omitempty"`
// ProductSoldCustomAttribute0: Custom attribute 0 of the product sold.
ProductSoldCustomAttribute0 string `json:"productSoldCustomAttribute0,omitempty"`
// ProductSoldCustomAttribute1: Custom attribute 1 of the product sold.
ProductSoldCustomAttribute1 string `json:"productSoldCustomAttribute1,omitempty"`
// ProductSoldCustomAttribute2: Custom attribute 2 of the product sold.
ProductSoldCustomAttribute2 string `json:"productSoldCustomAttribute2,omitempty"`
// ProductSoldCustomAttribute3: Custom attribute 3 of the product sold.
ProductSoldCustomAttribute3 string `json:"productSoldCustomAttribute3,omitempty"`
// ProductSoldCustomAttribute4: Custom attribute 4 of the product sold.
ProductSoldCustomAttribute4 string `json:"productSoldCustomAttribute4,omitempty"`
// ProductSoldItemId: Item ID of the product sold.
ProductSoldItemId string `json:"productSoldItemId,omitempty"`
// ProductSoldTitle: Title of the product sold.
ProductSoldTitle string `json:"productSoldTitle,omitempty"`
// ProductSoldTypeL1: Type (level 1) of the product sold.
ProductSoldTypeL1 string `json:"productSoldTypeL1,omitempty"`
// ProductSoldTypeL2: Type (level 2) of the product sold.
ProductSoldTypeL2 string `json:"productSoldTypeL2,omitempty"`
// ProductSoldTypeL3: Type (level 3) of the product sold.
ProductSoldTypeL3 string `json:"productSoldTypeL3,omitempty"`
// ProductSoldTypeL4: Type (level 4) of the product sold.
ProductSoldTypeL4 string `json:"productSoldTypeL4,omitempty"`
// ProductSoldTypeL5: Type (level 5) of the product sold.
ProductSoldTypeL5 string `json:"productSoldTypeL5,omitempty"`
// ProductStoreId: Store ID of the product.
ProductStoreId string `json:"productStoreId,omitempty"`
// ProductTitle: Title of the product.
ProductTitle string `json:"productTitle,omitempty"`
// ProductTypeL1: Type (level 1) of the product.
ProductTypeL1 string `json:"productTypeL1,omitempty"`
// ProductTypeL2: Type (level 2) of the product.
ProductTypeL2 string `json:"productTypeL2,omitempty"`
// ProductTypeL3: Type (level 3) of the product.
ProductTypeL3 string `json:"productTypeL3,omitempty"`
// ProductTypeL4: Type (level 4) of the product.
ProductTypeL4 string `json:"productTypeL4,omitempty"`
// ProductTypeL5: Type (level 5) of the product.
ProductTypeL5 string `json:"productTypeL5,omitempty"`
// Quarter: Quarter as represented by the date of the first day of a quarter.
// Uses the calendar year for quarters, for example, the second quarter of 2018
// starts on 2018-04-01. Formatted as yyyy-MM-dd.
Quarter string `json:"quarter,omitempty"`
// RawEventConversionDimensions: The raw event conversion dimensions.
RawEventConversionDimensions []*GoogleAdsSearchads360V0Common__Value `json:"rawEventConversionDimensions,omitempty"`
// Week: Week as defined as Monday through Sunday, and represented by the date
// of Monday. Formatted as yyyy-MM-dd.
Week string `json:"week,omitempty"`
// Year: Year, formatted as yyyy.
Year int64 `json:"year,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdNetworkType") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdNetworkType") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__Segments) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__Segments
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__TargetCpa: An automated bid strategy that
// sets bids to help get as many conversions as possible at the target
// cost-per-acquisition (CPA) you set.
type GoogleAdsSearchads360V0Common__TargetCpa struct {
// CpcBidCeilingMicros: Maximum bid limit that can be set by the bid strategy.
// The limit applies to all keywords managed by the strategy. This should only
// be set for portfolio bid strategies.
CpcBidCeilingMicros int64 `json:"cpcBidCeilingMicros,omitempty,string"`
// CpcBidFloorMicros: Minimum bid limit that can be set by the bid strategy.
// The limit applies to all keywords managed by the strategy. This should only
// be set for portfolio bid strategies.
CpcBidFloorMicros int64 `json:"cpcBidFloorMicros,omitempty,string"`
// TargetCpaMicros: Average CPA target. This target should be greater than or
// equal to minimum billable unit based on the currency for the account.
TargetCpaMicros int64 `json:"targetCpaMicros,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "CpcBidCeilingMicros") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CpcBidCeilingMicros") to include
// in API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__TargetCpa) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__TargetCpa
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__TargetCpm: Target CPM (cost per thousand
// impressions) is an automated bidding strategy that sets bids to optimize
// performance given the target CPM you set.
type GoogleAdsSearchads360V0Common__TargetCpm struct {
}
// GoogleAdsSearchads360V0Common__TargetImpressionShare: An automated bidding
// strategy that sets bids so that a certain percentage of search ads are shown
// at the top of the first page (or other targeted location).
type GoogleAdsSearchads360V0Common__TargetImpressionShare struct {
// CpcBidCeilingMicros: The highest CPC bid the automated bidding system is
// permitted to specify. This is a required field entered by the advertiser
// that sets the ceiling and specified in local micros.
CpcBidCeilingMicros int64 `json:"cpcBidCeilingMicros,omitempty,string"`
// Location: The targeted location on the search results page.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ANYWHERE_ON_PAGE" - Any location on the web page.
// "TOP_OF_PAGE" - Top box of ads.
// "ABSOLUTE_TOP_OF_PAGE" - Top slot in the top box of ads.
Location string `json:"location,omitempty"`
// LocationFractionMicros: The chosen fraction of ads to be shown in the
// targeted location in micros. For example, 1% equals 10,000.
LocationFractionMicros int64 `json:"locationFractionMicros,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "CpcBidCeilingMicros") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CpcBidCeilingMicros") to include
// in API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__TargetImpressionShare) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__TargetImpressionShare
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__TargetOutrankShare: An automated bidding
// strategy that sets bids based on the target fraction of auctions where the
// advertiser should outrank a specific competitor. This strategy is
// deprecated.
type GoogleAdsSearchads360V0Common__TargetOutrankShare struct {
// CpcBidCeilingMicros: Maximum bid limit that can be set by the bid strategy.
// The limit applies to all keywords managed by the strategy.
CpcBidCeilingMicros int64 `json:"cpcBidCeilingMicros,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "CpcBidCeilingMicros") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CpcBidCeilingMicros") to include
// in API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__TargetOutrankShare) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__TargetOutrankShare
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__TargetRestriction: The list of
// per-targeting-dimension targeting settings.
type GoogleAdsSearchads360V0Common__TargetRestriction struct {
// BidOnly: Indicates whether to restrict your ads to show only for the
// criteria you have selected for this targeting_dimension, or to target all
// values for this targeting_dimension and show ads based on your targeting in
// other TargetingDimensions. A value of `true` means that these criteria will
// only apply bid modifiers, and not affect targeting. A value of `false` means
// that these criteria will restrict targeting as well as applying bid
// modifiers.
BidOnly bool `json:"bidOnly,omitempty"`
// TargetingDimension: The targeting dimension that these settings apply to.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "KEYWORD" - Keyword criteria, for example, 'mars cruise'. KEYWORD may be
// used as a custom bid dimension. Keywords are always a targeting dimension,
// so may not be set as a target "ALL" dimension with TargetRestriction.
// "AUDIENCE" - Audience criteria, which include user list, user interest,
// custom affinity, and custom in market.
// "TOPIC" - Topic criteria for targeting categories of content, for example,
// 'category::Animals>Pets' Used for Display and Video targeting.
// "GENDER" - Criteria for targeting gender.
// "AGE_RANGE" - Criteria for targeting age ranges.
// "PLACEMENT" - Placement criteria, which include websites like
// 'www.flowers4sale.com', as well as mobile applications, mobile app
// categories, YouTube videos, and YouTube channels.
// "PARENTAL_STATUS" - Criteria for parental status targeting.
// "INCOME_RANGE" - Criteria for income range targeting.
TargetingDimension string `json:"targetingDimension,omitempty"`
// ForceSendFields is a list of field names (e.g. "BidOnly") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BidOnly") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__TargetRestriction) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__TargetRestriction
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__TargetRoas: An automated bidding strategy
// that helps you maximize revenue while averaging a specific target return on
// ad spend (ROAS).
type GoogleAdsSearchads360V0Common__TargetRoas struct {
// CpcBidCeilingMicros: Maximum bid limit that can be set by the bid strategy.
// The limit applies to all keywords managed by the strategy. This should only
// be set for portfolio bid strategies.
CpcBidCeilingMicros int64 `json:"cpcBidCeilingMicros,omitempty,string"`
// CpcBidFloorMicros: Minimum bid limit that can be set by the bid strategy.
// The limit applies to all keywords managed by the strategy. This should only
// be set for portfolio bid strategies.
CpcBidFloorMicros int64 `json:"cpcBidFloorMicros,omitempty,string"`
// TargetRoas: Required. The chosen revenue (based on conversion data) per unit
// of spend. Value must be between 0.01 and 1000.0, inclusive.
TargetRoas float64 `json:"targetRoas,omitempty"`
// ForceSendFields is a list of field names (e.g. "CpcBidCeilingMicros") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CpcBidCeilingMicros") to include
// in API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__TargetRoas) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__TargetRoas
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
func (s *GoogleAdsSearchads360V0Common__TargetRoas) UnmarshalJSON(data []byte) error {
type NoMethod GoogleAdsSearchads360V0Common__TargetRoas
var s1 struct {
TargetRoas gensupport.JSONFloat64 `json:"targetRoas"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.TargetRoas = float64(s1.TargetRoas)
return nil
}
// GoogleAdsSearchads360V0Common__TargetSpend: An automated bid strategy that
// sets your bids to help get as many clicks as possible within your budget.
type GoogleAdsSearchads360V0Common__TargetSpend struct {
// CpcBidCeilingMicros: Maximum bid limit that can be set by the bid strategy.
// The limit applies to all keywords managed by the strategy.
CpcBidCeilingMicros int64 `json:"cpcBidCeilingMicros,omitempty,string"`
// TargetSpendMicros: The spend target under which to maximize clicks. A
// TargetSpend bidder will attempt to spend the smaller of this value or the
// natural throttling spend amount. If not specified, the budget is used as the
// spend target. This field is deprecated and should no longer be used. See
// https://ads-developers.googleblog.com/2020/05/reminder-about-sunset-creation-of.html
// for details.
TargetSpendMicros int64 `json:"targetSpendMicros,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "CpcBidCeilingMicros") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CpcBidCeilingMicros") to include
// in API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__TargetSpend) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__TargetSpend
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__TargetingSetting: Settings for the
// targeting-related features, at the campaign and ad group levels. For more
// details about the targeting setting, visit
// https://support.google.com/google-ads/answer/7365594
type GoogleAdsSearchads360V0Common__TargetingSetting struct {
// TargetRestrictions: The per-targeting-dimension setting to restrict the
// reach of your campaign or ad group.
TargetRestrictions []*GoogleAdsSearchads360V0Common__TargetRestriction `json:"targetRestrictions,omitempty"`
// ForceSendFields is a list of field names (e.g. "TargetRestrictions") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "TargetRestrictions") to include
// in API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__TargetingSetting) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__TargetingSetting
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__TextAsset: A Text asset.
type GoogleAdsSearchads360V0Common__TextAsset struct {
// Text: Text content of the text asset.
Text string `json:"text,omitempty"`
// ForceSendFields is a list of field names (e.g. "Text") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Text") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__TextAsset) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__TextAsset
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__TextLabel: A type of label displaying text on
// a colored background.
type GoogleAdsSearchads360V0Common__TextLabel struct {
// BackgroundColor: Background color of the label in RGB format. This string
// must match the regular expression '^\#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$'.
// Note: The background color may not be visible for manager accounts.
BackgroundColor string `json:"backgroundColor,omitempty"`
// Description: A short description of the label. The length must be no more
// than 200 characters.
Description string `json:"description,omitempty"`
// ForceSendFields is a list of field names (e.g. "BackgroundColor") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BackgroundColor") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__TextLabel) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__TextLabel
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__UnifiedCallAsset: A unified call asset.
type GoogleAdsSearchads360V0Common__UnifiedCallAsset struct {
// AdScheduleTargets: List of non-overlapping schedules specifying all time
// intervals for which the asset may serve. There can be a maximum of 6
// schedules per day, 42 in total.
AdScheduleTargets []*GoogleAdsSearchads360V0Common__AdScheduleInfo `json:"adScheduleTargets,omitempty"`
// CallConversionAction: The conversion action to attribute a call conversion
// to. If not set, the default conversion action is used. This field only has
// effect if call_conversion_reporting_state is set to
// USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION.
CallConversionAction string `json:"callConversionAction,omitempty"`
// CallConversionReportingState: Output only. Indicates whether this CallAsset
// should use its own call conversion setting, follow the account level
// setting, or disable call conversion.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "DISABLED" - Call conversion action is disabled.
// "USE_ACCOUNT_LEVEL_CALL_CONVERSION_ACTION" - Call conversion action will
// use call conversion type set at the account level.
// "USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION" - Call conversion action will
// use call conversion type set at the resource (call only ads/call extensions)
// level.
CallConversionReportingState string `json:"callConversionReportingState,omitempty"`
// CallOnly: Whether the call only shows the phone number without a link to the
// website. Applies to Microsoft Ads.
CallOnly bool `json:"callOnly,omitempty"`
// CallTrackingEnabled: Whether the call should be enabled on call tracking.
// Applies to Microsoft Ads.
CallTrackingEnabled bool `json:"callTrackingEnabled,omitempty"`
// CountryCode: Two-letter country code of the phone number. Examples: 'US',
// 'us'.
CountryCode string `json:"countryCode,omitempty"`
// EndDate: Last date of when this asset is effective and still serving, in
// yyyy-MM-dd format.
EndDate string `json:"endDate,omitempty"`
// PhoneNumber: The advertiser's raw phone number. Examples: '1234567890',
// '(123)456-7890'
PhoneNumber string `json:"phoneNumber,omitempty"`
// StartDate: Start date of when this asset is effective and can begin serving,
// in yyyy-MM-dd format.
StartDate string `json:"startDate,omitempty"`
// UseSearcherTimeZone: Whether to show the call extension in search user's
// time zone. Applies to Microsoft Ads.
UseSearcherTimeZone bool `json:"useSearcherTimeZone,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdScheduleTargets") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdScheduleTargets") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__UnifiedCallAsset) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__UnifiedCallAsset
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__UnifiedCalloutAsset: A unified callout asset.
type GoogleAdsSearchads360V0Common__UnifiedCalloutAsset struct {
// AdScheduleTargets: List of non-overlapping schedules specifying all time
// intervals for which the asset may serve. There can be a maximum of 6
// schedules per day, 42 in total.
AdScheduleTargets []*GoogleAdsSearchads360V0Common__AdScheduleInfo `json:"adScheduleTargets,omitempty"`
// CalloutText: The callout text. The length of this string should be between 1
// and 25, inclusive.
CalloutText string `json:"calloutText,omitempty"`
// EndDate: Last date of when this asset is effective and still serving, in
// yyyy-MM-dd format.
EndDate string `json:"endDate,omitempty"`
// StartDate: Start date of when this asset is effective and can begin serving,
// in yyyy-MM-dd format.
StartDate string `json:"startDate,omitempty"`
// UseSearcherTimeZone: Whether to show the asset in search user's time zone.
// Applies to Microsoft Ads.
UseSearcherTimeZone bool `json:"useSearcherTimeZone,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdScheduleTargets") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdScheduleTargets") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__UnifiedCalloutAsset) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__UnifiedCalloutAsset
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__UnifiedLocationAsset: A unified location
// asset.
type GoogleAdsSearchads360V0Common__UnifiedLocationAsset struct {
// BusinessProfileLocations: The list of business locations for the customer.
// This will only be returned if the Location Asset is syncing from the
// Business Profile account. It is possible to have multiple Business Profile
// listings under the same account that point to the same Place ID.
BusinessProfileLocations []*GoogleAdsSearchads360V0Common__BusinessProfileLocation `json:"businessProfileLocations,omitempty"`
// LocationOwnershipType: The type of location ownership. If the type is
// BUSINESS_OWNER, it will be served as a location extension. If the type is
// AFFILIATE, it will be served as an affiliate location.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "BUSINESS_OWNER" - Business Owner of location(legacy location extension -
// LE).
// "AFFILIATE" - Affiliate location(Third party location extension - ALE).
LocationOwnershipType string `json:"locationOwnershipType,omitempty"`
// PlaceId: Place IDs uniquely identify a place in the Google Places database
// and on Google Maps. This field is unique for a given customer ID and asset
// type. See https://developers.google.com/places/web-service/place-id to learn
// more about Place ID.
PlaceId string `json:"placeId,omitempty"`
// ForceSendFields is a list of field names (e.g. "BusinessProfileLocations")
// to unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BusinessProfileLocations") to
// include in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__UnifiedLocationAsset) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__UnifiedLocationAsset
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__UnifiedPageFeedAsset: A Unified Page Feed
// asset.
type GoogleAdsSearchads360V0Common__UnifiedPageFeedAsset struct {
// Labels: Labels used to group the page urls.
Labels []string `json:"labels,omitempty"`
// PageUrl: The webpage that advertisers want to target.
PageUrl string `json:"pageUrl,omitempty"`
// ForceSendFields is a list of field names (e.g. "Labels") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Labels") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__UnifiedPageFeedAsset) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__UnifiedPageFeedAsset
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__UnifiedSitelinkAsset: A unified sitelink
// asset.
type GoogleAdsSearchads360V0Common__UnifiedSitelinkAsset struct {
// AdScheduleTargets: List of non-overlapping schedules specifying all time
// intervals for which the asset may serve. There can be a maximum of 6
// schedules per day, 42 in total.
AdScheduleTargets []*GoogleAdsSearchads360V0Common__AdScheduleInfo `json:"adScheduleTargets,omitempty"`
// Description1: First line of the description for the sitelink. If set, the
// length should be between 1 and 35, inclusive, and description2 must also be
// set.
Description1 string `json:"description1,omitempty"`
// Description2: Second line of the description for the sitelink. If set, the
// length should be between 1 and 35, inclusive, and description1 must also be
// set.
Description2 string `json:"description2,omitempty"`
// EndDate: Last date of when this asset is effective and still serving, in
// yyyy-MM-dd format.
EndDate string `json:"endDate,omitempty"`
// LinkText: URL display text for the sitelink. The length of this string
// should be between 1 and 25, inclusive.
LinkText string `json:"linkText,omitempty"`
// MobilePreferred: Whether the preference is for the sitelink asset to be
// displayed on mobile devices. Applies to Microsoft Ads.
MobilePreferred bool `json:"mobilePreferred,omitempty"`
// StartDate: Start date of when this asset is effective and can begin serving,
// in yyyy-MM-dd format.
StartDate string `json:"startDate,omitempty"`
// TrackingId: ID used for tracking clicks for the sitelink asset. This is a
// Yahoo! Japan only field.
TrackingId int64 `json:"trackingId,omitempty,string"`
// UseSearcherTimeZone: Whether to show the sitelink asset in search user's
// time zone. Applies to Microsoft Ads.
UseSearcherTimeZone bool `json:"useSearcherTimeZone,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdScheduleTargets") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdScheduleTargets") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__UnifiedSitelinkAsset) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__UnifiedSitelinkAsset
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__UserListInfo: A User List criterion.
// Represents a user list that is defined by the advertiser to be targeted.
type GoogleAdsSearchads360V0Common__UserListInfo struct {
// UserList: The User List resource name.
UserList string `json:"userList,omitempty"`
// ForceSendFields is a list of field names (e.g. "UserList") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "UserList") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__UserListInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__UserListInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__Value: A generic data container.
type GoogleAdsSearchads360V0Common__Value struct {
// BooleanValue: A boolean.
BooleanValue bool `json:"booleanValue,omitempty"`
// DoubleValue: A double.
DoubleValue float64 `json:"doubleValue,omitempty"`
// FloatValue: A float.
FloatValue float64 `json:"floatValue,omitempty"`
// Int64Value: An int64.
Int64Value int64 `json:"int64Value,omitempty,string"`
// StringValue: A string.
StringValue string `json:"stringValue,omitempty"`
// ForceSendFields is a list of field names (e.g. "BooleanValue") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BooleanValue") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__Value) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__Value
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
func (s *GoogleAdsSearchads360V0Common__Value) UnmarshalJSON(data []byte) error {
type NoMethod GoogleAdsSearchads360V0Common__Value
var s1 struct {
DoubleValue gensupport.JSONFloat64 `json:"doubleValue"`
FloatValue gensupport.JSONFloat64 `json:"floatValue"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.DoubleValue = float64(s1.DoubleValue)
s.FloatValue = float64(s1.FloatValue)
return nil
}
// GoogleAdsSearchads360V0Common__WebpageConditionInfo: Logical expression for
// targeting webpages of an advertiser's website.
type GoogleAdsSearchads360V0Common__WebpageConditionInfo struct {
// Argument: Argument of webpage targeting condition.
Argument string `json:"argument,omitempty"`
// Operand: Operand of webpage targeting condition.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "URL" - Operand denoting a webpage URL targeting condition.
// "CATEGORY" - Operand denoting a webpage category targeting condition.
// "PAGE_TITLE" - Operand denoting a webpage title targeting condition.
// "PAGE_CONTENT" - Operand denoting a webpage content targeting condition.
// "CUSTOM_LABEL" - Operand denoting a webpage custom label targeting
// condition.
Operand string `json:"operand,omitempty"`
// Operator: Operator of webpage targeting condition.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "EQUALS" - The argument web condition is equal to the compared web
// condition.
// "CONTAINS" - The argument web condition is part of the compared web
// condition.
Operator string `json:"operator,omitempty"`
// ForceSendFields is a list of field names (e.g. "Argument") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Argument") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__WebpageConditionInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__WebpageConditionInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Common__WebpageInfo: Represents a criterion for
// targeting webpages of an advertiser's website.
type GoogleAdsSearchads360V0Common__WebpageInfo struct {
// Conditions: Conditions, or logical expressions, for webpage targeting. The
// list of webpage targeting conditions are and-ed together when evaluated for
// targeting. An empty list of conditions indicates all pages of the campaign's
// website are targeted. This field is required for CREATE operations and is
// prohibited on UPDATE operations.
Conditions []*GoogleAdsSearchads360V0Common__WebpageConditionInfo `json:"conditions,omitempty"`
// CoveragePercentage: Website criteria coverage percentage. This is the
// computed percentage of website coverage based on the website target,
// negative website target and negative keywords in the ad group and campaign.
// For instance, when coverage returns as 1, it indicates it has 100% coverage.
// This field is read-only.
CoveragePercentage float64 `json:"coveragePercentage,omitempty"`
// CriterionName: The name of the criterion that is defined by this parameter.
// The name value will be used for identifying, sorting and filtering criteria
// with this type of parameters. This field is required for CREATE operations
// and is prohibited on UPDATE operations.
CriterionName string `json:"criterionName,omitempty"`
// ForceSendFields is a list of field names (e.g. "Conditions") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Conditions") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__WebpageInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__WebpageInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
func (s *GoogleAdsSearchads360V0Common__WebpageInfo) UnmarshalJSON(data []byte) error {
type NoMethod GoogleAdsSearchads360V0Common__WebpageInfo
var s1 struct {
CoveragePercentage gensupport.JSONFloat64 `json:"coveragePercentage"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.CoveragePercentage = float64(s1.CoveragePercentage)
return nil
}
// GoogleAdsSearchads360V0Common__YoutubeVideoAsset: A YouTube asset.
type GoogleAdsSearchads360V0Common__YoutubeVideoAsset struct {
// YoutubeVideoId: YouTube video id. This is the 11 character string value used
// in the YouTube video URL.
YoutubeVideoId string `json:"youtubeVideoId,omitempty"`
// YoutubeVideoTitle: YouTube video title.
YoutubeVideoTitle string `json:"youtubeVideoTitle,omitempty"`
// ForceSendFields is a list of field names (e.g. "YoutubeVideoId") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "YoutubeVideoId") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Common__YoutubeVideoAsset) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Common__YoutubeVideoAsset
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ErrorsErrorLocationFieldPathElement: A part of a
// field path.
type GoogleAdsSearchads360V0ErrorsErrorLocationFieldPathElement struct {
// FieldName: The name of a field or a oneof
FieldName string `json:"fieldName,omitempty"`
// Index: If field_name is a repeated field, this is the element that failed
Index int64 `json:"index,omitempty"`
// ForceSendFields is a list of field names (e.g. "FieldName") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FieldName") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ErrorsErrorLocationFieldPathElement) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ErrorsErrorLocationFieldPathElement
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Errors__ErrorCode: The error reason represented by
// type and enum.
type GoogleAdsSearchads360V0Errors__ErrorCode struct {
// AuthenticationError: Indicates failure to properly authenticate user.
//
// Possible values:
// "UNSPECIFIED" - Enum unspecified.
// "UNKNOWN" - The received error code is not known in this version.
// "AUTHENTICATION_ERROR" - Authentication of the request failed.
// "CLIENT_CUSTOMER_ID_INVALID" - Client customer ID is not a number.
// "CUSTOMER_NOT_FOUND" - No customer found for the provided customer ID.
// "GOOGLE_ACCOUNT_DELETED" - Client's Google account is deleted.
// "GOOGLE_ACCOUNT_COOKIE_INVALID" - Account login token in the cookie is
// invalid.
// "GOOGLE_ACCOUNT_AUTHENTICATION_FAILED" - A problem occurred during Google
// account authentication.
// "GOOGLE_ACCOUNT_USER_AND_ADS_USER_MISMATCH" - The user in the Google
// account login token does not match the user ID in the cookie.
// "LOGIN_COOKIE_REQUIRED" - Login cookie is required for authentication.
// "NOT_ADS_USER" - The Google account that generated the OAuth access token
// is not associated with a Search Ads 360 account. Create a new account, or
// add the Google account to an existing Search Ads 360 account.
// "OAUTH_TOKEN_INVALID" - OAuth token in the header is not valid.
// "OAUTH_TOKEN_EXPIRED" - OAuth token in the header has expired.
// "OAUTH_TOKEN_DISABLED" - OAuth token in the header has been disabled.
// "OAUTH_TOKEN_REVOKED" - OAuth token in the header has been revoked.
// "OAUTH_TOKEN_HEADER_INVALID" - OAuth token HTTP header is malformed.
// "LOGIN_COOKIE_INVALID" - Login cookie is not valid.
// "USER_ID_INVALID" - User ID in the header is not a valid ID.
// "TWO_STEP_VERIFICATION_NOT_ENROLLED" - An account administrator changed
// this account's authentication settings. To access this account, enable
// 2-Step Verification in your Google account at
// https://www.google.com/landing/2step.
// "ADVANCED_PROTECTION_NOT_ENROLLED" - An account administrator changed this
// account's authentication settings. To access this account, enable Advanced
// Protection in your Google account at
// https://landing.google.com/advancedprotection.
AuthenticationError string `json:"authenticationError,omitempty"`
// AuthorizationError: An error encountered when trying to authorize a user.
//
// Possible values:
// "UNSPECIFIED" - Enum unspecified.
// "UNKNOWN" - The received error code is not known in this version.
// "USER_PERMISSION_DENIED" - User doesn't have permission to access
// customer. Note: If you're accessing a client customer, the manager's
// customer ID must be set in the `login-customer-id` header. Learn more at
// https://developers.google.com/search-ads/reporting/concepts/call-structure#login_customer_id_header
// "PROJECT_DISABLED" - The Google Cloud project sent in the request does not
// have permission to access the api.
// "AUTHORIZATION_ERROR" - Authorization of the client failed.
// "ACTION_NOT_PERMITTED" - The user does not have permission to perform this
// action (for example, ADD, UPDATE, REMOVE) on the resource or call a method.
// "INCOMPLETE_SIGNUP" - Signup not complete.
// "CUSTOMER_NOT_ENABLED" - The customer account can't be accessed because it
// is not yet enabled or has been deactivated.
// "MISSING_TOS" - The developer must sign the terms of service. They can be
// found here: https://developers.google.com/terms
// "INVALID_LOGIN_CUSTOMER_ID_SERVING_CUSTOMER_ID_COMBINATION" - The login
// customer specified does not have access to the account specified, so the
// request is invalid.
// "SERVICE_ACCESS_DENIED" - The developer specified does not have access to
// the service.
// "ACCESS_DENIED_FOR_ACCOUNT_TYPE" - The customer (or login customer) isn't
// allowed in Search Ads 360 API. It belongs to another ads system.
// "METRIC_ACCESS_DENIED" - The developer does not have access to the metrics
// queried.
AuthorizationError string `json:"authorizationError,omitempty"`
// CustomColumnError: The reasons for the custom column error
//
// Possible values:
// "UNSPECIFIED" - Enum unspecified.
// "UNKNOWN" - The received error code is not known in this version.
// "CUSTOM_COLUMN_NOT_FOUND" - The custom column has not been found.
// "CUSTOM_COLUMN_NOT_AVAILABLE" - The custom column is not available.
CustomColumnError string `json:"customColumnError,omitempty"`
// DateError: The reasons for the date error
//
// Possible values:
// "UNSPECIFIED" - Enum unspecified.
// "UNKNOWN" - The received error code is not known in this version.
// "INVALID_FIELD_VALUES_IN_DATE" - Given field values do not correspond to a
// valid date.
// "INVALID_FIELD_VALUES_IN_DATE_TIME" - Given field values do not correspond
// to a valid date time.
// "INVALID_STRING_DATE" - The string date's format should be yyyy-mm-dd.
// "INVALID_STRING_DATE_TIME_MICROS" - The string date time's format should
// be yyyy-mm-dd hh:mm:ss.ssssss.
// "INVALID_STRING_DATE_TIME_SECONDS" - The string date time's format should
// be yyyy-mm-dd hh:mm:ss.
// "INVALID_STRING_DATE_TIME_SECONDS_WITH_OFFSET" - The string date time's
// format should be yyyy-mm-dd hh:mm:ss+|-hh:mm.
// "EARLIER_THAN_MINIMUM_DATE" - Date is before allowed minimum.
// "LATER_THAN_MAXIMUM_DATE" - Date is after allowed maximum.
// "DATE_RANGE_MINIMUM_DATE_LATER_THAN_MAXIMUM_DATE" - Date range bounds are
// not in order.
// "DATE_RANGE_MINIMUM_AND_MAXIMUM_DATES_BOTH_NULL" - Both dates in range are
// null.
DateError string `json:"dateError,omitempty"`
// DateRangeError: The reasons for the date range error
//
// Possible values:
// "UNSPECIFIED" - Enum unspecified.
// "UNKNOWN" - The received error code is not known in this version.
// "INVALID_DATE" - Invalid date.
// "START_DATE_AFTER_END_DATE" - The start date was after the end date.
// "CANNOT_SET_DATE_TO_PAST" - Cannot set date to past time
// "AFTER_MAXIMUM_ALLOWABLE_DATE" - A date was used that is past the system
// "last" date.
// "CANNOT_MODIFY_START_DATE_IF_ALREADY_STARTED" - Trying to change start
// date on a resource that has started.
DateRangeError string `json:"dateRangeError,omitempty"`
// DistinctError: The reasons for the distinct error
//
// Possible values:
// "UNSPECIFIED" - Enum unspecified.
// "UNKNOWN" - The received error code is not known in this version.
// "DUPLICATE_ELEMENT" - Duplicate element.
// "DUPLICATE_TYPE" - Duplicate type.
DistinctError string `json:"distinctError,omitempty"`
// HeaderError: The reasons for the header error.
//
// Possible values:
// "UNSPECIFIED" - Enum unspecified.
// "UNKNOWN" - The received error code is not known in this version.
// "INVALID_USER_SELECTED_CUSTOMER_ID" - The user selected customer ID could
// not be validated.
// "INVALID_LOGIN_CUSTOMER_ID" - The login customer ID could not be
// validated.
HeaderError string `json:"headerError,omitempty"`
// InternalError: An unexpected server-side error.
//
// Possible values:
// "UNSPECIFIED" - Enum unspecified.
// "UNKNOWN" - The received error code is not known in this version.
// "INTERNAL_ERROR" - API encountered unexpected internal error.
// "ERROR_CODE_NOT_PUBLISHED" - The intended error code doesn't exist in
// specified API version. It will be released in a future API version.
// "TRANSIENT_ERROR" - API encountered an unexpected transient error. The
// user should retry their request in these cases.
// "DEADLINE_EXCEEDED" - The request took longer than a deadline.
InternalError string `json:"internalError,omitempty"`
// InvalidParameterError: The reasons for invalid parameter errors.
//
// Possible values:
// "UNSPECIFIED" - Enum unspecified.
// "UNKNOWN" - The received error code is not known in this version.
// "INVALID_CURRENCY_CODE" - The specified currency code is invalid.
InvalidParameterError string `json:"invalidParameterError,omitempty"`
// QueryError: An error with the query
//
// Possible values:
// "UNSPECIFIED" - Name unspecified.
// "UNKNOWN" - The received error code is not known in this version.
// "QUERY_ERROR" - Returned if all other query error reasons are not
// applicable.
// "BAD_ENUM_CONSTANT" - A condition used in the query references an invalid
// enum constant.
// "BAD_ESCAPE_SEQUENCE" - Query contains an invalid escape sequence.
// "BAD_FIELD_NAME" - Field name is invalid.
// "BAD_LIMIT_VALUE" - Limit value is invalid (for example, not a number)
// "BAD_NUMBER" - Encountered number can not be parsed.
// "BAD_OPERATOR" - Invalid operator encountered.
// "BAD_PARAMETER_NAME" - Parameter unknown or not supported.
// "BAD_PARAMETER_VALUE" - Parameter have invalid value.
// "BAD_RESOURCE_TYPE_IN_FROM_CLAUSE" - Invalid resource type was specified
// in the FROM clause.
// "BAD_SYMBOL" - Non-ASCII symbol encountered outside of strings.
// "BAD_VALUE" - Value is invalid.
// "DATE_RANGE_TOO_WIDE" - Date filters fail to restrict date to a range
// smaller than 31 days. Applicable if the query is segmented by date.
// "DATE_RANGE_TOO_NARROW" - Filters on date/week/month/quarter have a start
// date after end date.
// "EXPECTED_AND" - Expected AND between values with BETWEEN operator.
// "EXPECTED_BY" - Expecting ORDER BY to have BY.
// "EXPECTED_DIMENSION_FIELD_IN_SELECT_CLAUSE" - There was no dimension field
// selected.
// "EXPECTED_FILTERS_ON_DATE_RANGE" - Missing filters on date related fields.
// "EXPECTED_FROM" - Missing FROM clause.
// "EXPECTED_LIST" - The operator used in the conditions requires the value
// to be a list.
// "EXPECTED_REFERENCED_FIELD_IN_SELECT_CLAUSE" - Fields used in WHERE or
// ORDER BY clauses are missing from the SELECT clause.
// "EXPECTED_SELECT" - SELECT is missing at the beginning of query.
// "EXPECTED_SINGLE_VALUE" - A list was passed as a value to a condition
// whose operator expects a single value.
// "EXPECTED_VALUE_WITH_BETWEEN_OPERATOR" - Missing one or both values with
// BETWEEN operator.
// "INVALID_DATE_FORMAT" - Invalid date format. Expected 'YYYY-MM-DD'.
// "MISALIGNED_DATE_FOR_FILTER" - Misaligned date value for the filter. The
// date should be the start of a week/month/quarter if the filtered field is
// segments.week/segments.month/segments.quarter.
// "INVALID_STRING_VALUE" - Value passed was not a string when it should have
// been. For example, it was a number or unquoted literal.
// "INVALID_VALUE_WITH_BETWEEN_OPERATOR" - A String value passed to the
// BETWEEN operator does not parse as a date.
// "INVALID_VALUE_WITH_DURING_OPERATOR" - The value passed to the DURING
// operator is not a Date range literal
// "INVALID_VALUE_WITH_LIKE_OPERATOR" - A value was passed to the LIKE
// operator.
// "OPERATOR_FIELD_MISMATCH" - An operator was provided that is inapplicable
// to the field being filtered.
// "PROHIBITED_EMPTY_LIST_IN_CONDITION" - A Condition was found with an empty
// list.
// "PROHIBITED_ENUM_CONSTANT" - A condition used in the query references an
// unsupported enum constant.
// "PROHIBITED_FIELD_COMBINATION_IN_SELECT_CLAUSE" - Fields that are not
// allowed to be selected together were included in the SELECT clause.
// "PROHIBITED_FIELD_IN_ORDER_BY_CLAUSE" - A field that is not orderable was
// included in the ORDER BY clause.
// "PROHIBITED_FIELD_IN_SELECT_CLAUSE" - A field that is not selectable was
// included in the SELECT clause.
// "PROHIBITED_FIELD_IN_WHERE_CLAUSE" - A field that is not filterable was
// included in the WHERE clause.
// "PROHIBITED_RESOURCE_TYPE_IN_FROM_CLAUSE" - Resource type specified in the
// FROM clause is not supported by this service.
// "PROHIBITED_RESOURCE_TYPE_IN_SELECT_CLAUSE" - A field that comes from an
// incompatible resource was included in the SELECT clause.
// "PROHIBITED_RESOURCE_TYPE_IN_WHERE_CLAUSE" - A field that comes from an
// incompatible resource was included in the WHERE clause.
// "PROHIBITED_METRIC_IN_SELECT_OR_WHERE_CLAUSE" - A metric incompatible with
// the main resource or other selected segmenting resources was included in the
// SELECT or WHERE clause.
// "PROHIBITED_SEGMENT_IN_SELECT_OR_WHERE_CLAUSE" - A segment incompatible
// with the main resource or other selected segmenting resources was included
// in the SELECT or WHERE clause.
// "PROHIBITED_SEGMENT_WITH_METRIC_IN_SELECT_OR_WHERE_CLAUSE" - A segment in
// the SELECT clause is incompatible with a metric in the SELECT or WHERE
// clause.
// "LIMIT_VALUE_TOO_LOW" - The value passed to the limit clause is too low.
// "PROHIBITED_NEWLINE_IN_STRING" - Query has a string containing a newline
// character.
// "PROHIBITED_VALUE_COMBINATION_IN_LIST" - List contains values of different
// types.
// "PROHIBITED_VALUE_COMBINATION_WITH_BETWEEN_OPERATOR" - The values passed
// to the BETWEEN operator are not of the same type.
// "STRING_NOT_TERMINATED" - Query contains unterminated string.
// "TOO_MANY_SEGMENTS" - Too many segments are specified in SELECT clause.
// "UNEXPECTED_END_OF_QUERY" - Query is incomplete and cannot be parsed.
// "UNEXPECTED_FROM_CLAUSE" - FROM clause cannot be specified in this query.
// "UNRECOGNIZED_FIELD" - Query contains one or more unrecognized fields.
// "UNEXPECTED_INPUT" - Query has an unexpected extra part.
// "REQUESTED_METRICS_FOR_MANAGER" - Metrics cannot be requested for a
// manager account. To retrieve metrics, issue separate requests against each
// client account under the manager account.
// "FILTER_HAS_TOO_MANY_VALUES" - The number of values (right-hand-side
// operands) in a filter exceeds the limit.
QueryError string `json:"queryError,omitempty"`
// QuotaError: An error with the amount of quota remaining.
//
// Possible values:
// "UNSPECIFIED" - Enum unspecified.
// "UNKNOWN" - The received error code is not known in this version.
// "RESOURCE_EXHAUSTED" - Too many requests.
// "RESOURCE_TEMPORARILY_EXHAUSTED" - Too many requests in a short amount of
// time.
QuotaError string `json:"quotaError,omitempty"`
// RequestError: An error caused by the request
//
// Possible values:
// "UNSPECIFIED" - Enum unspecified.
// "UNKNOWN" - The received error code is not known in this version.
// "RESOURCE_NAME_MISSING" - Resource name is required for this request.
// "RESOURCE_NAME_MALFORMED" - Resource name provided is malformed.
// "BAD_RESOURCE_ID" - Resource name provided is malformed.
// "INVALID_PRODUCT_NAME" - Product name is invalid.
// "INVALID_CUSTOMER_ID" - Customer ID is invalid.
// "OPERATION_REQUIRED" - Mutate operation should have either create, update,
// or remove specified.
// "RESOURCE_NOT_FOUND" - Requested resource not found.
// "INVALID_PAGE_TOKEN" - Next page token specified in user request is
// invalid.
// "EXPIRED_PAGE_TOKEN" - Next page token specified in user request has
// expired.
// "INVALID_PAGE_SIZE" - Page size specified in user request is invalid.
// "REQUIRED_FIELD_MISSING" - Required field is missing.
// "IMMUTABLE_FIELD" - The field cannot be modified because it's immutable.
// It's also possible that the field can be modified using 'create' operation
// but not 'update'.
// "TOO_MANY_MUTATE_OPERATIONS" - Received too many entries in request.
// "CANNOT_BE_EXECUTED_BY_MANAGER_ACCOUNT" - Request cannot be executed by a
// manager account.
// "CANNOT_MODIFY_FOREIGN_FIELD" - Mutate request was attempting to modify a
// readonly field. For instance, Budget fields can be requested for Ad Group,
// but are read-only for adGroups:mutate.
// "INVALID_ENUM_VALUE" - Enum value is not permitted.
// "LOGIN_CUSTOMER_ID_PARAMETER_MISSING" - The login-customer-id parameter is
// required for this request.
// "LOGIN_OR_LINKED_CUSTOMER_ID_PARAMETER_REQUIRED" - Either
// login-customer-id or linked-customer-id parameter is required for this
// request.
// "VALIDATE_ONLY_REQUEST_HAS_PAGE_TOKEN" - page_token is set in the validate
// only request
// "CANNOT_RETURN_SUMMARY_ROW_FOR_REQUEST_WITHOUT_METRICS" -
// return_summary_row cannot be enabled if request did not select any metrics
// field.
// "CANNOT_RETURN_SUMMARY_ROW_FOR_VALIDATE_ONLY_REQUESTS" -
// return_summary_row should not be enabled for validate only requests.
// "INCONSISTENT_RETURN_SUMMARY_ROW_VALUE" - return_summary_row parameter
// value should be the same between requests with page_token field set and
// their original request.
// "TOTAL_RESULTS_COUNT_NOT_ORIGINALLY_REQUESTED" - The total results count
// cannot be returned if it was not requested in the original request.
// "RPC_DEADLINE_TOO_SHORT" - Deadline specified by the client was too short.
// "PRODUCT_NOT_SUPPORTED" - The product associated with the request is not
// supported for the current request.
RequestError string `json:"requestError,omitempty"`
// SizeLimitError: The reasons for the size limit error
//
// Possible values:
// "UNSPECIFIED" - Enum unspecified.
// "UNKNOWN" - The received error code is not known in this version.
// "REQUEST_SIZE_LIMIT_EXCEEDED" - The number of entries in the request
// exceeds the system limit, or the contents of the operations exceed
// transaction limits due to their size or complexity. Try reducing the number
// of entries per request.
// "RESPONSE_SIZE_LIMIT_EXCEEDED" - The number of entries in the response
// exceeds the system limit.
SizeLimitError string `json:"sizeLimitError,omitempty"`
// ForceSendFields is a list of field names (e.g. "AuthenticationError") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AuthenticationError") to include
// in API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Errors__ErrorCode) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Errors__ErrorCode
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Errors__ErrorDetails: Additional error details.
type GoogleAdsSearchads360V0Errors__ErrorDetails struct {
// QuotaErrorDetails: Details on the quota error, including the scope (account
// or developer), the rate bucket name and the retry delay.
QuotaErrorDetails *GoogleAdsSearchads360V0Errors__QuotaErrorDetails `json:"quotaErrorDetails,omitempty"`
// UnpublishedErrorCode: The error code that should have been returned, but
// wasn't. This is used when the error code is not published in the client
// specified version.
UnpublishedErrorCode string `json:"unpublishedErrorCode,omitempty"`
// ForceSendFields is a list of field names (e.g. "QuotaErrorDetails") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "QuotaErrorDetails") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Errors__ErrorDetails) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Errors__ErrorDetails
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Errors__ErrorLocation: Describes the part of the
// request proto that caused the error.
type GoogleAdsSearchads360V0Errors__ErrorLocation struct {
// FieldPathElements: A field path that indicates which field was invalid in
// the request.
FieldPathElements []*GoogleAdsSearchads360V0ErrorsErrorLocationFieldPathElement `json:"fieldPathElements,omitempty"`
// ForceSendFields is a list of field names (e.g. "FieldPathElements") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FieldPathElements") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Errors__ErrorLocation) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Errors__ErrorLocation
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Errors__QuotaErrorDetails: Additional quota error
// details when there is QuotaError.
type GoogleAdsSearchads360V0Errors__QuotaErrorDetails struct {
// RateName: The high level description of the quota bucket. Examples are "Get
// requests for standard access" or "Requests per account".
RateName string `json:"rateName,omitempty"`
// RateScope: The rate scope of the quota limit.
//
// Possible values:
// "UNSPECIFIED" - Unspecified enum
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ACCOUNT" - Per customer account quota
// "DEVELOPER" - Per project quota
RateScope string `json:"rateScope,omitempty"`
// RetryDelay: Backoff period that customers should wait before sending next
// request.
RetryDelay string `json:"retryDelay,omitempty"`
// ForceSendFields is a list of field names (e.g. "RateName") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "RateName") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Errors__QuotaErrorDetails) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Errors__QuotaErrorDetails
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Errors__SearchAds360Error: SearchAds360-specific
// error.
type GoogleAdsSearchads360V0Errors__SearchAds360Error struct {
// Details: Additional error details, which are returned by certain error
// codes. Most error codes do not include details.
Details *GoogleAdsSearchads360V0Errors__ErrorDetails `json:"details,omitempty"`
// ErrorCode: An enum value that indicates which error occurred.
ErrorCode *GoogleAdsSearchads360V0Errors__ErrorCode `json:"errorCode,omitempty"`
// Location: Describes the part of the request proto that caused the error.
Location *GoogleAdsSearchads360V0Errors__ErrorLocation `json:"location,omitempty"`
// Message: A human-readable description of the error.
Message string `json:"message,omitempty"`
// Trigger: The value that triggered the error.
Trigger *GoogleAdsSearchads360V0Common__Value `json:"trigger,omitempty"`
// ForceSendFields is a list of field names (e.g. "Details") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Details") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Errors__SearchAds360Error) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Errors__SearchAds360Error
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Errors__SearchAds360Failure: Describes how a Search
// Ads 360 API call failed. It's returned inside google.rpc.Status.details when
// a call fails.
type GoogleAdsSearchads360V0Errors__SearchAds360Failure struct {
// Errors: The list of errors that occurred.
Errors []*GoogleAdsSearchads360V0Errors__SearchAds360Error `json:"errors,omitempty"`
// RequestId: The unique ID of the request that is used for debugging purposes.
RequestId string `json:"requestId,omitempty"`
// ForceSendFields is a list of field names (e.g. "Errors") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Errors") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Errors__SearchAds360Failure) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Errors__SearchAds360Failure
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyMaximizeConversionVa
// lue: An automated bidding strategy to help get the most conversion value for
// your campaigns while spending your budget.
type GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyMaximizeConversionValue struct {
// TargetRoas: Output only. The target return on ad spend (ROAS) option. If
// set, the bid strategy will maximize revenue while averaging the target
// return on ad spend. If the target ROAS is high, the bid strategy may not be
// able to spend the full budget. If the target ROAS is not set, the bid
// strategy will aim to achieve the highest possible ROAS for the budget.
TargetRoas float64 `json:"targetRoas,omitempty"`
// ForceSendFields is a list of field names (e.g. "TargetRoas") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "TargetRoas") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyMaximizeConversionValue) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyMaximizeConversionValue
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
func (s *GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyMaximizeConversionValue) UnmarshalJSON(data []byte) error {
type NoMethod GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyMaximizeConversionValue
var s1 struct {
TargetRoas gensupport.JSONFloat64 `json:"targetRoas"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.TargetRoas = float64(s1.TargetRoas)
return nil
}
// GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyMaximizeConversions:
//
// An automated bidding strategy to help get the most conversions for your
//
// campaigns while spending your budget.
type GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyMaximizeConversions struct {
// TargetCpa: Output only. The target cost per acquisition (CPA) option. This
// is the average amount that you would like to spend per acquisition.
TargetCpa int64 `json:"targetCpa,omitempty,string"`
// TargetCpaMicros: Output only. The target cost per acquisition (CPA) option.
// This is the average amount that you would like to spend per acquisition.
TargetCpaMicros int64 `json:"targetCpaMicros,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "TargetCpa") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "TargetCpa") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyMaximizeConversions) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyMaximizeConversions
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetCpa: An
// automated bid strategy that sets bids to help get as many conversions as
// possible at the target cost-per-acquisition (CPA) you set.
type GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetCpa struct {
// TargetCpaMicros: Output only. Average CPA target. This target should be
// greater than or equal to minimum billable unit based on the currency for the
// account.
TargetCpaMicros int64 `json:"targetCpaMicros,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "TargetCpaMicros") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "TargetCpaMicros") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetCpa) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetCpa
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetImpressionShar
// e: An automated bidding strategy that sets bids so that a certain percentage
// of search ads are shown at the top of the first page (or other targeted
// location).
type GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetImpressionShare struct {
// CpcBidCeilingMicros: Output only. The highest CPC bid the automated bidding
// system is permitted to specify. This is a required field entered by the
// advertiser that sets the ceiling and specified in local micros.
CpcBidCeilingMicros int64 `json:"cpcBidCeilingMicros,omitempty,string"`
// Location: Output only. The targeted location on the search results page.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ANYWHERE_ON_PAGE" - Any location on the web page.
// "TOP_OF_PAGE" - Top box of ads.
// "ABSOLUTE_TOP_OF_PAGE" - Top slot in the top box of ads.
Location string `json:"location,omitempty"`
// LocationFractionMicros: The chosen fraction of ads to be shown in the
// targeted location in micros. For example, 1% equals 10,000.
LocationFractionMicros int64 `json:"locationFractionMicros,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "CpcBidCeilingMicros") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CpcBidCeilingMicros") to include
// in API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetImpressionShare) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetImpressionShare
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetRoas: An
// automated bidding strategy that helps you maximize revenue while averaging a
// specific target return on ad spend (ROAS).
type GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetRoas struct {
// TargetRoas: Output only. The chosen revenue (based on conversion data) per
// unit of spend.
TargetRoas float64 `json:"targetRoas,omitempty"`
// ForceSendFields is a list of field names (e.g. "TargetRoas") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "TargetRoas") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetRoas) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetRoas
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
func (s *GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetRoas) UnmarshalJSON(data []byte) error {
type NoMethod GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetRoas
var s1 struct {
TargetRoas gensupport.JSONFloat64 `json:"targetRoas"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.TargetRoas = float64(s1.TargetRoas)
return nil
}
// GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetSpend: An
// automated bid strategy that sets your bids to help get as many clicks as
// possible within your budget.
type GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetSpend struct {
// CpcBidCeilingMicros: Output only. Maximum bid limit that can be set by the
// bid strategy. The limit applies to all keywords managed by the strategy.
CpcBidCeilingMicros int64 `json:"cpcBidCeilingMicros,omitempty,string"`
// TargetSpendMicros: Output only. The spend target under which to maximize
// clicks. A TargetSpend bidder will attempt to spend the smaller of this value
// or the natural throttling spend amount. If not specified, the budget is used
// as the spend target. This field is deprecated and should no longer be used.
// See
// https://ads-developers.googleblog.com/2020/05/reminder-about-sunset-creation-of.html
// for details.
TargetSpendMicros int64 `json:"targetSpendMicros,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "CpcBidCeilingMicros") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CpcBidCeilingMicros") to include
// in API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetSpend) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetSpend
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesAdGroupCriterionPositionEstimates: Estimates
// for criterion bids at various positions.
type GoogleAdsSearchads360V0ResourcesAdGroupCriterionPositionEstimates struct {
// TopOfPageCpcMicros: Output only. The estimate of the CPC bid required for ad
// to be displayed at the top of the first page of search results.
TopOfPageCpcMicros int64 `json:"topOfPageCpcMicros,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "TopOfPageCpcMicros") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "TopOfPageCpcMicros") to include
// in API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesAdGroupCriterionPositionEstimates) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesAdGroupCriterionPositionEstimates
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesAdGroupCriterionQualityInfo: A container for
// ad group criterion quality information.
type GoogleAdsSearchads360V0ResourcesAdGroupCriterionQualityInfo struct {
// QualityScore: Output only. The quality score. This field may not be
// populated if Google does not have enough information to determine a value.
QualityScore int64 `json:"qualityScore,omitempty"`
// ForceSendFields is a list of field names (e.g. "QualityScore") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "QualityScore") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesAdGroupCriterionQualityInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesAdGroupCriterionQualityInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesCampaignDynamicSearchAdsSetting: The setting
// for controlling Dynamic Search Ads (DSA).
type GoogleAdsSearchads360V0ResourcesCampaignDynamicSearchAdsSetting struct {
// DomainName: Required. The Internet domain name that this setting represents,
// for example, "google.com" or "www.google.com".
DomainName string `json:"domainName,omitempty"`
// LanguageCode: Required. The language code specifying the language of the
// domain, for example, "en".
LanguageCode string `json:"languageCode,omitempty"`
// UseSuppliedUrlsOnly: Whether the campaign uses advertiser supplied URLs
// exclusively.
UseSuppliedUrlsOnly bool `json:"useSuppliedUrlsOnly,omitempty"`
// ForceSendFields is a list of field names (e.g. "DomainName") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DomainName") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesCampaignDynamicSearchAdsSetting) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesCampaignDynamicSearchAdsSetting
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesCampaignGeoTargetTypeSetting: Represents a
// collection of settings related to ads geotargeting.
type GoogleAdsSearchads360V0ResourcesCampaignGeoTargetTypeSetting struct {
// NegativeGeoTargetType: The setting used for negative geotargeting in this
// particular campaign.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - The value is unknown in this version.
// "PRESENCE_OR_INTEREST" - Specifies that a user is excluded from seeing the
// ad if they are in, or show interest in, advertiser's excluded locations.
// "PRESENCE" - Specifies that a user is excluded from seeing the ad if they
// are in advertiser's excluded locations.
NegativeGeoTargetType string `json:"negativeGeoTargetType,omitempty"`
// PositiveGeoTargetType: The setting used for positive geotargeting in this
// particular campaign.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - The value is unknown in this version.
// "PRESENCE_OR_INTEREST" - Specifies that an ad is triggered if the user is
// in, or shows interest in, advertiser's targeted locations.
// "SEARCH_INTEREST" - Specifies that an ad is triggered if the user searches
// for advertiser's targeted locations. This can only be used with Search and
// standard Shopping campaigns.
// "PRESENCE" - Specifies that an ad is triggered if the user is in or
// regularly in advertiser's targeted locations.
PositiveGeoTargetType string `json:"positiveGeoTargetType,omitempty"`
// ForceSendFields is a list of field names (e.g. "NegativeGeoTargetType") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "NegativeGeoTargetType") to
// include in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesCampaignGeoTargetTypeSetting) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesCampaignGeoTargetTypeSetting
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesCampaignNetworkSettings: The network
// settings for the campaign.
type GoogleAdsSearchads360V0ResourcesCampaignNetworkSettings struct {
// TargetContentNetwork: Whether ads will be served on specified placements in
// the Google Display Network. Placements are specified using the Placement
// criterion.
TargetContentNetwork bool `json:"targetContentNetwork,omitempty"`
// TargetGoogleSearch: Whether ads will be served with google.com search
// results.
TargetGoogleSearch bool `json:"targetGoogleSearch,omitempty"`
// TargetPartnerSearchNetwork: Whether ads will be served on the Google Partner
// Network. This is available only to some select Google partner accounts.
TargetPartnerSearchNetwork bool `json:"targetPartnerSearchNetwork,omitempty"`
// TargetSearchNetwork: Whether ads will be served on partner sites in the
// Google Search Network (requires `target_google_search` to also be `true`).
TargetSearchNetwork bool `json:"targetSearchNetwork,omitempty"`
// ForceSendFields is a list of field names (e.g. "TargetContentNetwork") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "TargetContentNetwork") to include
// in API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesCampaignNetworkSettings) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesCampaignNetworkSettings
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesCampaignOptimizationGoalSetting:
// Optimization goal setting for this campaign, which includes a set of
// optimization goal types.
type GoogleAdsSearchads360V0ResourcesCampaignOptimizationGoalSetting struct {
// OptimizationGoalTypes: The list of optimization goal types.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used as a return value only. Represents value unknown in this
// version.
// "CALL_CLICKS" - Optimize for call clicks. Call click conversions are times
// people selected 'Call' to contact a store after viewing an ad.
// "DRIVING_DIRECTIONS" - Optimize for driving directions. Driving directions
// conversions are times people selected 'Get directions' to navigate to a
// store after viewing an ad.
// "APP_PRE_REGISTRATION" - Optimize for pre-registration. Pre-registration
// conversions are the number of pre-registration signups to receive a
// notification when the app is released.
OptimizationGoalTypes []string `json:"optimizationGoalTypes,omitempty"`
// ForceSendFields is a list of field names (e.g. "OptimizationGoalTypes") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "OptimizationGoalTypes") to
// include in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesCampaignOptimizationGoalSetting) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesCampaignOptimizationGoalSetting
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesCampaignSelectiveOptimization: Selective
// optimization setting for this campaign, which includes a set of conversion
// actions to optimize this campaign towards. This feature only applies to app
// campaigns that use MULTI_CHANNEL as AdvertisingChannelType and APP_CAMPAIGN
// or APP_CAMPAIGN_FOR_ENGAGEMENT as AdvertisingChannelSubType.
type GoogleAdsSearchads360V0ResourcesCampaignSelectiveOptimization struct {
// ConversionActions: The selected set of conversion actions for optimizing
// this campaign.
ConversionActions []string `json:"conversionActions,omitempty"`
// ForceSendFields is a list of field names (e.g. "ConversionActions") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ConversionActions") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesCampaignSelectiveOptimization) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesCampaignSelectiveOptimization
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesCampaignShoppingSetting: The setting for
// Shopping campaigns. Defines the universe of products that can be advertised
// by the campaign, and how this campaign interacts with other Shopping
// campaigns.
type GoogleAdsSearchads360V0ResourcesCampaignShoppingSetting struct {
// CampaignPriority: Priority of the campaign. Campaigns with numerically
// higher priorities take precedence over those with lower priorities. This
// field is required for Shopping campaigns, with values between 0 and 2,
// inclusive. This field is optional for Smart Shopping campaigns, but must be
// equal to 3 if set.
CampaignPriority int64 `json:"campaignPriority,omitempty"`
// EnableLocal: Whether to include local products.
EnableLocal bool `json:"enableLocal,omitempty"`
// FeedLabel: Feed label of products to include in the campaign. Only one of
// feed_label or sales_country can be set. If used instead of sales_country,
// the feed_label field accepts country codes in the same format for example:
// 'XX'. Otherwise can be any string used for feed label in Google Merchant
// Center.
FeedLabel string `json:"feedLabel,omitempty"`
// MerchantId: Immutable. ID of the Merchant Center account. This field is
// required for create operations. This field is immutable for Shopping
// campaigns.
MerchantId int64 `json:"merchantId,omitempty,string"`
// SalesCountry: Sales country of products to include in the campaign.
SalesCountry string `json:"salesCountry,omitempty"`
// UseVehicleInventory: Immutable. Whether to target Vehicle Listing inventory.
UseVehicleInventory bool `json:"useVehicleInventory,omitempty"`
// ForceSendFields is a list of field names (e.g. "CampaignPriority") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CampaignPriority") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesCampaignShoppingSetting) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesCampaignShoppingSetting
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesCampaignTrackingSetting: Campaign-level
// settings for tracking information.
type GoogleAdsSearchads360V0ResourcesCampaignTrackingSetting struct {
// TrackingUrl: Output only. The url used for dynamic tracking.
TrackingUrl string `json:"trackingUrl,omitempty"`
// ForceSendFields is a list of field names (e.g. "TrackingUrl") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "TrackingUrl") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesCampaignTrackingSetting) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesCampaignTrackingSetting
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesConversionActionAttributionModelSettings:
// Settings related to this conversion action's attribution model.
type GoogleAdsSearchads360V0ResourcesConversionActionAttributionModelSettings struct {
// AttributionModel: The attribution model type of this conversion action.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "EXTERNAL" - Uses external attribution.
// "GOOGLE_ADS_LAST_CLICK" - Attributes all credit for a conversion to its
// last click.
// "GOOGLE_SEARCH_ATTRIBUTION_FIRST_CLICK" - Attributes all credit for a
// conversion to its first click using Google Search attribution.
// "GOOGLE_SEARCH_ATTRIBUTION_LINEAR" - Attributes credit for a conversion
// equally across all of its clicks using Google Search attribution.
// "GOOGLE_SEARCH_ATTRIBUTION_TIME_DECAY" - Attributes exponentially more
// credit for a conversion to its more recent clicks using Google Search
// attribution (half-life is 1 week).
// "GOOGLE_SEARCH_ATTRIBUTION_POSITION_BASED" - Attributes 40% of the credit
// for a conversion to its first and last clicks. Remaining 20% is evenly
// distributed across all other clicks. This uses Google Search attribution.
// "GOOGLE_SEARCH_ATTRIBUTION_DATA_DRIVEN" - Flexible model that uses machine
// learning to determine the appropriate distribution of credit among clicks
// using Google Search attribution.
AttributionModel string `json:"attributionModel,omitempty"`
// DataDrivenModelStatus: Output only. The status of the data-driven
// attribution model for the conversion action.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "AVAILABLE" - The data driven model is available.
// "STALE" - The data driven model is stale. It hasn't been updated for at
// least 7 days. It is still being used, but will become expired if it does not
// get updated for 30 days.
// "EXPIRED" - The data driven model expired. It hasn't been updated for at
// least 30 days and cannot be used. Most commonly this is because there hasn't
// been the required number of events in a recent 30-day period.
// "NEVER_GENERATED" - The data driven model has never been generated. Most
// commonly this is because there has never been the required number of events
// in any 30-day period.
DataDrivenModelStatus string `json:"dataDrivenModelStatus,omitempty"`
// ForceSendFields is a list of field names (e.g. "AttributionModel") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AttributionModel") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesConversionActionAttributionModelSettings) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesConversionActionAttributionModelSettings
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesConversionActionFloodlightSettings: Settings
// related to a Floodlight conversion action.
type GoogleAdsSearchads360V0ResourcesConversionActionFloodlightSettings struct {
// ActivityGroupTag: Output only. String used to identify a Floodlight activity
// group when reporting conversions.
ActivityGroupTag string `json:"activityGroupTag,omitempty"`
// ActivityId: Output only. ID of the Floodlight activity in DoubleClick
// Campaign Manager (DCM).
ActivityId int64 `json:"activityId,omitempty,string"`
// ActivityTag: Output only. String used to identify a Floodlight activity when
// reporting conversions.
ActivityTag string `json:"activityTag,omitempty"`
// ForceSendFields is a list of field names (e.g. "ActivityGroupTag") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ActivityGroupTag") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesConversionActionFloodlightSettings) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesConversionActionFloodlightSettings
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesConversionActionValueSettings: Settings
// related to the value for conversion events associated with this conversion
// action.
type GoogleAdsSearchads360V0ResourcesConversionActionValueSettings struct {
// AlwaysUseDefaultValue: Controls whether the default value and default
// currency code are used in place of the value and currency code specified in
// conversion events for this conversion action.
AlwaysUseDefaultValue bool `json:"alwaysUseDefaultValue,omitempty"`
// DefaultCurrencyCode: The currency code to use when conversion events for
// this conversion action are sent with an invalid or missing currency code, or
// when this conversion action is configured to always use the default value.
DefaultCurrencyCode string `json:"defaultCurrencyCode,omitempty"`
// DefaultValue: The value to use when conversion events for this conversion
// action are sent with an invalid, disallowed or missing value, or when this
// conversion action is configured to always use the default value.
DefaultValue float64 `json:"defaultValue,omitempty"`
// ForceSendFields is a list of field names (e.g. "AlwaysUseDefaultValue") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AlwaysUseDefaultValue") to
// include in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesConversionActionValueSettings) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesConversionActionValueSettings
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
func (s *GoogleAdsSearchads360V0ResourcesConversionActionValueSettings) UnmarshalJSON(data []byte) error {
type NoMethod GoogleAdsSearchads360V0ResourcesConversionActionValueSettings
var s1 struct {
DefaultValue gensupport.JSONFloat64 `json:"defaultValue"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.DefaultValue = float64(s1.DefaultValue)
return nil
}
// GoogleAdsSearchads360V0ResourcesConversionCustomVariableFloodlightConversionC
// ustomVariableInfo: Information for Search Ads 360 Floodlight Conversion
// Custom Variables.
type GoogleAdsSearchads360V0ResourcesConversionCustomVariableFloodlightConversionCustomVariableInfo struct {
// FloodlightVariableDataType: Output only. Floodlight variable data type
// defined in Search Ads 360.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "NUMBER" - Represents a floodlight variable of "Number" type. This
// variable may be assigned to floodlight variables of DIMENSION or METRIC
// types.
// "STRING" - Represents a floodlight variable of "String" type. This
// variable may be assigned to floodlight variables of DIMENSION type.
FloodlightVariableDataType string `json:"floodlightVariableDataType,omitempty"`
// FloodlightVariableType: Output only. Floodlight variable type defined in
// Search Ads 360.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "DIMENSION" - Dimension floodlight variable type.
// "METRIC" - Metric floodlight variable type.
// "UNSET" - Floodlight variable type is unset.
FloodlightVariableType string `json:"floodlightVariableType,omitempty"`
// ForceSendFields is a list of field names (e.g. "FloodlightVariableDataType")
// to unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FloodlightVariableDataType") to
// include in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesConversionCustomVariableFloodlightConversionCustomVariableInfo) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesConversionCustomVariableFloodlightConversionCustomVariableInfo
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductBiddingCate
// gory: One element of a bidding category at a certain level. Top-level
// categories are at level 1, their children at level 2, and so on. We
// currently support up to 5 levels. The user must specify a dimension type
// that indicates the level of the category. All cases of the same subdivision
// must have the same dimension type (category level).
type GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductBiddingCategory struct {
// Id: ID of the product bidding category. This ID is equivalent to the
// google_product_category ID as described in this article:
// https://support.google.com/merchants/answer/6324436
Id int64 `json:"id,omitempty,string"`
// Level: Indicates the level of the category in the taxonomy.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "LEVEL1" - Level 1.
// "LEVEL2" - Level 2.
// "LEVEL3" - Level 3.
// "LEVEL4" - Level 4.
// "LEVEL5" - Level 5.
Level string `json:"level,omitempty"`
// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductBiddingCategory) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductBiddingCategory
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductBrand:
// Brand of the product.
type GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductBrand struct {
// Value: String value of the product brand.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Value") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Value") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductBrand) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductBrand
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductChannel:
// Locality of a product offer.
type GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductChannel struct {
// Channel: Value of the locality.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ONLINE" - The item is sold online.
// "LOCAL" - The item is sold in local stores.
Channel string `json:"channel,omitempty"`
// ForceSendFields is a list of field names (e.g. "Channel") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Channel") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductChannel) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductChannel
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductCondition:
// Condition of a product offer.
type GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductCondition struct {
// Condition: Value of the condition.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "NEW" - The product condition is new.
// "REFURBISHED" - The product condition is refurbished.
// "USED" - The product condition is used.
Condition string `json:"condition,omitempty"`
// ForceSendFields is a list of field names (e.g. "Condition") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Condition") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductCondition) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductCondition
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductCustomAttri
// bute: Custom attribute of a product offer.
type GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductCustomAttribute struct {
// Index: Indicates the index of the custom attribute.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "INDEX0" - First listing group filter custom attribute.
// "INDEX1" - Second listing group filter custom attribute.
// "INDEX2" - Third listing group filter custom attribute.
// "INDEX3" - Fourth listing group filter custom attribute.
// "INDEX4" - Fifth listing group filter custom attribute.
Index string `json:"index,omitempty"`
// Value: String value of the product custom attribute.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Index") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Index") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductCustomAttribute) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductCustomAttribute
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductItemId:
// Item id of a product offer.
type GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductItemId struct {
// Value: Value of the id.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Value") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Value") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductItemId) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductItemId
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductType: Type
// of a product offer.
type GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductType struct {
// Level: Level of the type.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "LEVEL1" - Level 1.
// "LEVEL2" - Level 2.
// "LEVEL3" - Level 3.
// "LEVEL4" - Level 4.
// "LEVEL5" - Level 5.
Level string `json:"level,omitempty"`
// Value: Value of the type.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Level") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Level") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductType) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductType
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AccessibleBiddingStrategy: Represents a
// view of BiddingStrategies owned by and shared with the customer. In contrast
// to BiddingStrategy, this resource includes strategies owned by managers of
// the customer and shared with this customer - in addition to strategies owned
// by this customer. This resource does not provide metrics and only exposes a
// limited subset of the BiddingStrategy attributes.
type GoogleAdsSearchads360V0Resources__AccessibleBiddingStrategy struct {
// Id: Output only. The ID of the bidding strategy.
Id int64 `json:"id,omitempty,string"`
// MaximizeConversionValue: Output only. An automated bidding strategy to help
// get the most conversion value for your campaigns while spending your budget.
MaximizeConversionValue *GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyMaximizeConversionValue `json:"maximizeConversionValue,omitempty"`
// MaximizeConversions: Output only. An automated bidding strategy to help get
// the most conversions for your campaigns while spending your budget.
MaximizeConversions *GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyMaximizeConversions `json:"maximizeConversions,omitempty"`
// Name: Output only. The name of the bidding strategy.
Name string `json:"name,omitempty"`
// OwnerCustomerId: Output only. The ID of the Customer which owns the bidding
// strategy.
OwnerCustomerId int64 `json:"ownerCustomerId,omitempty,string"`
// OwnerDescriptiveName: Output only. descriptive_name of the Customer which
// owns the bidding strategy.
OwnerDescriptiveName string `json:"ownerDescriptiveName,omitempty"`
// ResourceName: Output only. The resource name of the accessible bidding
// strategy. AccessibleBiddingStrategy resource names have the form:
// `customers/{customer_id}/accessibleBiddingStrategies/{bidding_strategy_id}`
ResourceName string `json:"resourceName,omitempty"`
// TargetCpa: Output only. A bidding strategy that sets bids to help get as
// many conversions as possible at the target cost-per-acquisition (CPA) you
// set.
TargetCpa *GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetCpa `json:"targetCpa,omitempty"`
// TargetImpressionShare: Output only. A bidding strategy that automatically
// optimizes towards a chosen percentage of impressions.
TargetImpressionShare *GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetImpressionShare `json:"targetImpressionShare,omitempty"`
// TargetRoas: Output only. A bidding strategy that helps you maximize revenue
// while averaging a specific target Return On Ad Spend (ROAS).
TargetRoas *GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetRoas `json:"targetRoas,omitempty"`
// TargetSpend: Output only. A bid strategy that sets your bids to help get as
// many clicks as possible within your budget.
TargetSpend *GoogleAdsSearchads360V0ResourcesAccessibleBiddingStrategyTargetSpend `json:"targetSpend,omitempty"`
// Type: Output only. The type of the bidding strategy.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "COMMISSION" - Commission is an automatic bidding strategy in which the
// advertiser pays a certain portion of the conversion value.
// "ENHANCED_CPC" - Enhanced CPC is a bidding strategy that raises bids for
// clicks that seem more likely to lead to a conversion and lowers them for
// clicks where they seem less likely.
// "INVALID" - Used for return value only. Indicates that a campaign does not
// have a bidding strategy. This prevents the campaign from serving. For
// example, a campaign may be attached to a manager bidding strategy and the
// serving account is subsequently unlinked from the manager account. In this
// case the campaign will automatically be detached from the now inaccessible
// manager bidding strategy and transition to the INVALID bidding strategy
// type.
// "MANUAL_CPA" - Manual bidding strategy that allows advertiser to set the
// bid per advertiser-specified action.
// "MANUAL_CPC" - Manual click based bidding where user pays per click.
// "MANUAL_CPM" - Manual impression based bidding where user pays per
// thousand impressions.
// "MANUAL_CPV" - A bidding strategy that pays a configurable amount per
// video view.
// "MAXIMIZE_CONVERSIONS" - A bidding strategy that automatically maximizes
// number of conversions given a daily budget.
// "MAXIMIZE_CONVERSION_VALUE" - An automated bidding strategy that
// automatically sets bids to maximize revenue while spending your budget.
// "PAGE_ONE_PROMOTED" - Page-One Promoted bidding scheme, which sets max cpc
// bids to target impressions on page one or page one promoted slots on
// google.com. This enum value is deprecated.
// "PERCENT_CPC" - Percent Cpc is bidding strategy where bids are a fraction
// of the advertised price for some good or service.
// "TARGET_CPA" - Target CPA is an automated bid strategy that sets bids to
// help get as many conversions as possible at the target cost-per-acquisition
// (CPA) you set.
// "TARGET_CPM" - Target CPM is an automated bid strategy that sets bids to
// help get as many impressions as possible at the target cost per one thousand
// impressions (CPM) you set.
// "TARGET_IMPRESSION_SHARE" - An automated bidding strategy that sets bids
// so that a certain percentage of search ads are shown at the top of the first
// page (or other targeted location).
// "TARGET_OUTRANK_SHARE" - Target Outrank Share is an automated bidding
// strategy that sets bids based on the target fraction of auctions where the
// advertiser should outrank a specific competitor. This enum value is
// deprecated.
// "TARGET_ROAS" - Target ROAS is an automated bidding strategy that helps
// you maximize revenue while averaging a specific target Return On Average
// Spend (ROAS).
// "TARGET_SPEND" - Target Spend is an automated bid strategy that sets your
// bids to help get as many clicks as possible within your budget.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AccessibleBiddingStrategy) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AccessibleBiddingStrategy
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__Ad: An ad.
type GoogleAdsSearchads360V0Resources__Ad struct {
// DisplayUrl: The URL that appears in the ad description for some ad formats.
DisplayUrl string `json:"displayUrl,omitempty"`
// ExpandedDynamicSearchAd: Immutable. Details pertaining to an expanded
// dynamic search ad.
ExpandedDynamicSearchAd *GoogleAdsSearchads360V0Common__SearchAds360ExpandedDynamicSearchAdInfo `json:"expandedDynamicSearchAd,omitempty"`
// ExpandedTextAd: Immutable. Details pertaining to an expanded text ad.
ExpandedTextAd *GoogleAdsSearchads360V0Common__SearchAds360ExpandedTextAdInfo `json:"expandedTextAd,omitempty"`
// FinalUrls: The list of possible final URLs after all cross-domain redirects
// for the ad.
FinalUrls []string `json:"finalUrls,omitempty"`
// Id: Output only. The ID of the ad.
Id int64 `json:"id,omitempty,string"`
// Name: Immutable. The name of the ad. This is only used to be able to
// identify the ad. It does not need to be unique and does not affect the
// served ad. The name field is currently only supported for DisplayUploadAd,
// ImageAd, ShoppingComparisonListingAd and VideoAd.
Name string `json:"name,omitempty"`
// ProductAd: Immutable. Details pertaining to a product ad.
ProductAd *GoogleAdsSearchads360V0Common__SearchAds360ProductAdInfo `json:"productAd,omitempty"`
// ResourceName: Immutable. The resource name of the ad. Ad resource names have
// the form: `customers/{customer_id}/ads/{ad_id}`
ResourceName string `json:"resourceName,omitempty"`
// ResponsiveSearchAd: Immutable. Details pertaining to a responsive search ad.
ResponsiveSearchAd *GoogleAdsSearchads360V0Common__SearchAds360ResponsiveSearchAdInfo `json:"responsiveSearchAd,omitempty"`
// TextAd: Immutable. Details pertaining to a text ad.
TextAd *GoogleAdsSearchads360V0Common__SearchAds360TextAdInfo `json:"textAd,omitempty"`
// Type: Output only. The type of ad.
//
// Possible values:
// "UNSPECIFIED" - No value has been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "TEXT_AD" - The ad is a text ad.
// "EXPANDED_TEXT_AD" - The ad is an expanded text ad.
// "CALL_ONLY_AD" - The ad is a call only ad.
// "EXPANDED_DYNAMIC_SEARCH_AD" - The ad is an expanded dynamic search ad.
// "HOTEL_AD" - The ad is a hotel ad.
// "SHOPPING_SMART_AD" - The ad is a Smart Shopping ad.
// "SHOPPING_PRODUCT_AD" - The ad is a standard Shopping ad.
// "VIDEO_AD" - The ad is a video ad.
// "GMAIL_AD" - This ad is a Gmail ad.
// "IMAGE_AD" - This ad is an Image ad.
// "RESPONSIVE_SEARCH_AD" - The ad is a responsive search ad.
// "LEGACY_RESPONSIVE_DISPLAY_AD" - The ad is a legacy responsive display ad.
// "APP_AD" - The ad is an app ad.
// "LEGACY_APP_INSTALL_AD" - The ad is a legacy app install ad.
// "RESPONSIVE_DISPLAY_AD" - The ad is a responsive display ad.
// "LOCAL_AD" - The ad is a local ad.
// "HTML5_UPLOAD_AD" - The ad is a display upload ad with the HTML5_UPLOAD_AD
// product type.
// "DYNAMIC_HTML5_AD" - The ad is a display upload ad with one of the
// DYNAMIC_HTML5_* product types.
// "APP_ENGAGEMENT_AD" - The ad is an app engagement ad.
// "SHOPPING_COMPARISON_LISTING_AD" - The ad is a Shopping Comparison Listing
// ad.
// "VIDEO_BUMPER_AD" - Video bumper ad.
// "VIDEO_NON_SKIPPABLE_IN_STREAM_AD" - Video non-skippable in-stream ad.
// "VIDEO_OUTSTREAM_AD" - Video outstream ad.
// "VIDEO_TRUEVIEW_DISCOVERY_AD" - Video TrueView in-display ad.
// "VIDEO_TRUEVIEW_IN_STREAM_AD" - Video TrueView in-stream ad.
// "VIDEO_RESPONSIVE_AD" - Video responsive ad.
// "SMART_CAMPAIGN_AD" - Smart campaign ad.
// "APP_PRE_REGISTRATION_AD" - Universal app pre-registration ad.
// "DISCOVERY_MULTI_ASSET_AD" - Discovery multi asset ad.
// "DISCOVERY_CAROUSEL_AD" - Discovery carousel ad.
// "TRAVEL_AD" - Travel ad.
// "DISCOVERY_VIDEO_RESPONSIVE_AD" - Discovery video responsive ad.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "DisplayUrl") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DisplayUrl") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__Ad) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__Ad
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AdGroup: An ad group.
type GoogleAdsSearchads360V0Resources__AdGroup struct {
// AdRotationMode: The ad rotation mode of the ad group.
//
// Possible values:
// "UNSPECIFIED" - The ad rotation mode has not been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "OPTIMIZE" - Optimize ad group ads based on clicks or conversions.
// "ROTATE_FOREVER" - Rotate evenly forever.
AdRotationMode string `json:"adRotationMode,omitempty"`
// CpcBidMicros: The maximum CPC (cost-per-click) bid.
CpcBidMicros int64 `json:"cpcBidMicros,omitempty,string"`
// CreationTime: Output only. The timestamp when this ad_group was created. The
// timestamp is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss"
// format.
CreationTime string `json:"creationTime,omitempty"`
// EndDate: Output only. Date when the ad group ends serving ads. By default,
// the ad group ends on the ad group's end date. If this field is set, then the
// ad group ends at the end of the specified date in the customer's time zone.
// This field is only available for Microsoft Advertising and Facebook gateway
// accounts. Format: YYYY-MM-DD Example: 2019-03-14
EndDate string `json:"endDate,omitempty"`
// EngineId: Output only. ID of the ad group in the external engine account.
// This field is for non-Google Ads account only, for example, Yahoo Japan,
// Microsoft, Baidu etc. For Google Ads entity, use "ad_group.id" instead.
EngineId string `json:"engineId,omitempty"`
// EngineStatus: Output only. The Engine Status for ad group.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "AD_GROUP_ELIGIBLE" - Deprecated. Do not use.
// "AD_GROUP_EXPIRED" - No ads are running for this ad group, because the ad
// group's end date has passed.
// "AD_GROUP_REMOVED" - The ad group has been deleted.
// "AD_GROUP_DRAFT" - No ads are running for this ad group because the
// associated ad group is still in draft form.
// "AD_GROUP_PAUSED" - The ad group has been paused.
// "AD_GROUP_SERVING" - The ad group is active and currently serving ads.
// "AD_GROUP_SUBMITTED" - The ad group has been submitted (Microsoft Bing Ads
// legacy status).
// "CAMPAIGN_PAUSED" - No ads are running for this ad group, because the
// campaign has been paused.
// "ACCOUNT_PAUSED" - No ads are running for this ad group, because the
// account has been paused.
EngineStatus string `json:"engineStatus,omitempty"`
// Id: Output only. The ID of the ad group.
Id int64 `json:"id,omitempty,string"`
// Labels: Output only. The resource names of labels attached to this ad group.
Labels []string `json:"labels,omitempty"`
// LanguageCode: Output only. The language of the ads and keywords in an ad
// group. This field is only available for Microsoft Advertising accounts. More
// details:
// https://docs.microsoft.com/en-us/advertising/guides/ad-languages?view=bingads-13#adlanguage
LanguageCode string `json:"languageCode,omitempty"`
// LastModifiedTime: Output only. The datetime when this ad group was last
// modified. The datetime is in the customer's time zone and in "yyyy-MM-dd
// HH:mm:ss.ssssss" format.
LastModifiedTime string `json:"lastModifiedTime,omitempty"`
// Name: The name of the ad group. This field is required and should not be
// empty when creating new ad groups. It must contain fewer than 255 UTF-8
// full-width characters. It must not contain any null (code point 0x0), NL
// line feed (code point 0xA) or carriage return (code point 0xD) characters.
Name string `json:"name,omitempty"`
// ResourceName: Immutable. The resource name of the ad group. Ad group
// resource names have the form:
// `customers/{customer_id}/adGroups/{ad_group_id}`
ResourceName string `json:"resourceName,omitempty"`
// StartDate: Output only. Date when this ad group starts serving ads. By
// default, the ad group starts now or the ad group's start date, whichever is
// later. If this field is set, then the ad group starts at the beginning of
// the specified date in the customer's time zone. This field is only available
// for Microsoft Advertising and Facebook gateway accounts. Format: YYYY-MM-DD
// Example: 2019-03-14
StartDate string `json:"startDate,omitempty"`
// Status: The status of the ad group.
//
// Possible values:
// "UNSPECIFIED" - The status has not been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "ENABLED" - The ad group is enabled.
// "PAUSED" - The ad group is paused.
// "REMOVED" - The ad group is removed.
Status string `json:"status,omitempty"`
// TargetingSetting: Setting for targeting related features.
TargetingSetting *GoogleAdsSearchads360V0Common__TargetingSetting `json:"targetingSetting,omitempty"`
// Type: Immutable. The type of the ad group.
//
// Possible values:
// "UNSPECIFIED" - The type has not been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "SEARCH_STANDARD" - The default ad group type for Search campaigns.
// "DISPLAY_STANDARD" - The default ad group type for Display campaigns.
// "SHOPPING_PRODUCT_ADS" - The ad group type for Shopping campaigns serving
// standard product ads.
// "SHOPPING_SHOWCASE_ADS" - The type for ad groups that are limited to
// serving Showcase or Merchant ads in Shopping results.
// "HOTEL_ADS" - The default ad group type for Hotel campaigns.
// "SHOPPING_SMART_ADS" - The type for ad groups in Smart Shopping campaigns.
// "VIDEO_BUMPER" - Short unskippable in-stream video ads.
// "VIDEO_TRUE_VIEW_IN_STREAM" - TrueView (skippable) in-stream video ads.
// "VIDEO_TRUE_VIEW_IN_DISPLAY" - TrueView in-display video ads.
// "VIDEO_NON_SKIPPABLE_IN_STREAM" - Unskippable in-stream video ads.
// "VIDEO_OUTSTREAM" - Outstream video ads.
// "SEARCH_DYNAMIC_ADS" - Ad group type for Dynamic Search Ads ad groups.
// "SHOPPING_COMPARISON_LISTING_ADS" - The type for ad groups in Shopping
// Comparison Listing campaigns.
// "PROMOTED_HOTEL_ADS" - The ad group type for Promoted Hotel ad groups.
// "VIDEO_RESPONSIVE" - Video responsive ad groups.
// "VIDEO_EFFICIENT_REACH" - Video efficient reach ad groups.
// "SMART_CAMPAIGN_ADS" - Ad group type for Smart campaigns.
// "TRAVEL_ADS" - Ad group type for Travel campaigns.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdRotationMode") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdRotationMode") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AdGroup) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AdGroup
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AdGroupAd: An ad group ad.
type GoogleAdsSearchads360V0Resources__AdGroupAd struct {
// Ad: Immutable. The ad.
Ad *GoogleAdsSearchads360V0Resources__Ad `json:"ad,omitempty"`
// CreationTime: Output only. The timestamp when this ad_group_ad was created.
// The datetime is in the customer's time zone and in "yyyy-MM-dd
// HH:mm:ss.ssssss" format.
CreationTime string `json:"creationTime,omitempty"`
// EngineId: Output only. ID of the ad in the external engine account. This
// field is for SearchAds 360 account only, for example, Yahoo Japan,
// Microsoft, Baidu etc. For non-SearchAds 360 entity, use "ad_group_ad.ad.id"
// instead.
EngineId string `json:"engineId,omitempty"`
// EngineStatus: Output only. Additional status of the ad in the external
// engine account. Possible statuses (depending on the type of external
// account) include active, eligible, pending review, etc.
//
// Possible values:
// "UNSPECIFIED" - No value has been specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "AD_GROUP_AD_ELIGIBLE" - Deprecated. Do not use.
// "AD_GROUP_AD_INAPPROPRIATE_FOR_CAMPAIGN" - Baidu: Creative was not
// approved.
// "AD_GROUP_AD_MOBILE_URL_UNDER_REVIEW" - Baidu: Mobile URL in process to be
// reviewed.
// "AD_GROUP_AD_PARTIALLY_INVALID" - Baidu: Creative is invalid on mobile
// device but valid on desktop.
// "AD_GROUP_AD_TO_BE_ACTIVATED" - Baidu: Creative is ready for activation.
// "AD_GROUP_AD_NOT_REVIEWED" - Baidu: Creative not reviewed.
// "AD_GROUP_AD_ON_HOLD" - Deprecated. Do not use. Previously used by Gemini
// "AD_GROUP_AD_PAUSED" - Creative has been paused.
// "AD_GROUP_AD_REMOVED" - Creative has been removed.
// "AD_GROUP_AD_PENDING_REVIEW" - Creative is pending review.
// "AD_GROUP_AD_UNDER_REVIEW" - Creative is under review.
// "AD_GROUP_AD_APPROVED" - Creative has been approved.
// "AD_GROUP_AD_DISAPPROVED" - Creative has been disapproved.
// "AD_GROUP_AD_SERVING" - Creative is serving.
// "AD_GROUP_AD_ACCOUNT_PAUSED" - Creative has been paused because the
// account is paused.
// "AD_GROUP_AD_CAMPAIGN_PAUSED" - Creative has been paused because the
// campaign is paused.
// "AD_GROUP_AD_AD_GROUP_PAUSED" - Creative has been paused because the ad
// group is paused.
EngineStatus string `json:"engineStatus,omitempty"`
// Labels: Output only. The resource names of labels attached to this ad group
// ad.
Labels []string `json:"labels,omitempty"`
// LastModifiedTime: Output only. The datetime when this ad group ad was last
// modified. The datetime is in the customer's time zone and in "yyyy-MM-dd
// HH:mm:ss.ssssss" format.
LastModifiedTime string `json:"lastModifiedTime,omitempty"`
// ResourceName: Immutable. The resource name of the ad. Ad group ad resource
// names have the form:
// `customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: The status of the ad.
//
// Possible values:
// "UNSPECIFIED" - No value has been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "ENABLED" - The ad group ad is enabled.
// "PAUSED" - The ad group ad is paused.
// "REMOVED" - The ad group ad is removed.
Status string `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "Ad") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Ad") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AdGroupAd) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AdGroupAd
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AdGroupAdLabel: A relationship between an
// ad group ad and a label.
type GoogleAdsSearchads360V0Resources__AdGroupAdLabel struct {
// AdGroupAd: Immutable. The ad group ad to which the label is attached.
AdGroupAd string `json:"adGroupAd,omitempty"`
// Label: Immutable. The label assigned to the ad group ad.
Label string `json:"label,omitempty"`
// ResourceName: Immutable. The resource name of the ad group ad label. Ad
// group ad label resource names have the form:
// `customers/{customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id}~{label_id}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdGroupAd") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdGroupAd") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AdGroupAdLabel) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AdGroupAdLabel
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AdGroupAsset: A link between an ad group
// and an asset.
type GoogleAdsSearchads360V0Resources__AdGroupAsset struct {
// AdGroup: Required. Immutable. The ad group to which the asset is linked.
AdGroup string `json:"adGroup,omitempty"`
// Asset: Required. Immutable. The asset which is linked to the ad group.
Asset string `json:"asset,omitempty"`
// ResourceName: Immutable. The resource name of the ad group asset.
// AdGroupAsset resource names have the form:
// `customers/{customer_id}/adGroupAssets/{ad_group_id}~{asset_id}~{field_type}`
ResourceName string `json:"resourceName,omitempty"`
// Status: Status of the ad group asset.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ENABLED" - Asset link is enabled.
// "REMOVED" - Asset link has been removed.
// "PAUSED" - Asset link is paused.
Status string `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdGroup") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdGroup") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AdGroupAsset) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AdGroupAsset
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AdGroupAssetSet: AdGroupAssetSet is the
// linkage between an ad group and an asset set. Creating an AdGroupAssetSet
// links an asset set with an ad group.
type GoogleAdsSearchads360V0Resources__AdGroupAssetSet struct {
// AdGroup: Immutable. The ad group to which this asset set is linked.
AdGroup string `json:"adGroup,omitempty"`
// AssetSet: Immutable. The asset set which is linked to the ad group.
AssetSet string `json:"assetSet,omitempty"`
// ResourceName: Immutable. The resource name of the ad group asset set. Ad
// group asset set resource names have the form:
// `customers/{customer_id}/adGroupAssetSets/{ad_group_id}~{asset_set_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: Output only. The status of the ad group asset set. Read-only.
//
// Possible values:
// "UNSPECIFIED" - The status has not been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "ENABLED" - The linkage between asset set and its container is enabled.
// "REMOVED" - The linkage between asset set and its container is removed.
Status string `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdGroup") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdGroup") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AdGroupAssetSet) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AdGroupAssetSet
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AdGroupAudienceView: An ad group audience
// view. Includes performance data from interests and remarketing lists for
// Display Network and YouTube Network ads, and remarketing lists for search
// ads (RLSA), aggregated at the audience level.
type GoogleAdsSearchads360V0Resources__AdGroupAudienceView struct {
// ResourceName: Output only. The resource name of the ad group audience view.
// Ad group audience view resource names have the form:
// `customers/{customer_id}/adGroupAudienceViews/{ad_group_id}~{criterion_id}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "ResourceName") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ResourceName") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AdGroupAudienceView) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AdGroupAudienceView
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AdGroupBidModifier: Represents an ad group
// bid modifier.
type GoogleAdsSearchads360V0Resources__AdGroupBidModifier struct {
// BidModifier: The modifier for the bid when the criterion matches. The
// modifier must be in the range: 0.1 - 10.0. The range is 1.0 - 6.0 for
// PreferredContent. Use 0 to opt out of a Device type.
BidModifier float64 `json:"bidModifier,omitempty"`
// Device: Immutable. A device criterion.
Device *GoogleAdsSearchads360V0Common__DeviceInfo `json:"device,omitempty"`
// ResourceName: Immutable. The resource name of the ad group bid modifier. Ad
// group bid modifier resource names have the form:
// `customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "BidModifier") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BidModifier") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AdGroupBidModifier) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AdGroupBidModifier
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
func (s *GoogleAdsSearchads360V0Resources__AdGroupBidModifier) UnmarshalJSON(data []byte) error {
type NoMethod GoogleAdsSearchads360V0Resources__AdGroupBidModifier
var s1 struct {
BidModifier gensupport.JSONFloat64 `json:"bidModifier"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.BidModifier = float64(s1.BidModifier)
return nil
}
// GoogleAdsSearchads360V0Resources__AdGroupCriterion: An ad group criterion.
// The ad_group_criterion report only returns criteria that were explicitly
// added to the ad group.
type GoogleAdsSearchads360V0Resources__AdGroupCriterion struct {
// AdGroup: Immutable. The ad group to which the criterion belongs.
AdGroup string `json:"adGroup,omitempty"`
// AgeRange: Immutable. Age range.
AgeRange *GoogleAdsSearchads360V0Common__AgeRangeInfo `json:"ageRange,omitempty"`
// BidModifier: The modifier for the bid when the criterion matches. The
// modifier must be in the range: 0.1 - 10.0. Most targetable criteria types
// support modifiers.
BidModifier float64 `json:"bidModifier,omitempty"`
// CpcBidMicros: The CPC (cost-per-click) bid.
CpcBidMicros int64 `json:"cpcBidMicros,omitempty,string"`
// CreationTime: Output only. The timestamp when this ad group criterion was
// created. The timestamp is in the customer's time zone and in "yyyy-MM-dd
// HH:mm:ss" format.
CreationTime string `json:"creationTime,omitempty"`
// CriterionId: Output only. The ID of the criterion.
CriterionId int64 `json:"criterionId,omitempty,string"`
// EffectiveCpcBidMicros: Output only. The effective CPC (cost-per-click) bid.
EffectiveCpcBidMicros int64 `json:"effectiveCpcBidMicros,omitempty,string"`
// EngineId: Output only. ID of the ad group criterion in the external engine
// account. This field is for non-Google Ads account only, for example, Yahoo
// Japan, Microsoft, Baidu etc. For Google Ads entity, use
// "ad_group_criterion.criterion_id" instead.
EngineId string `json:"engineId,omitempty"`
// EngineStatus: Output only. The Engine Status for ad group criterion.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "AD_GROUP_CRITERION_ELIGIBLE" - Deprecated. Do not use.
// "AD_GROUP_CRITERION_INAPPROPRIATE_FOR_CAMPAIGN" - Baidu: Bid or quality
// too low to be displayed.
// "AD_GROUP_CRITERION_INVALID_MOBILE_SEARCH" - Baidu: Bid or quality too low
// for mobile, but eligible to display for desktop.
// "AD_GROUP_CRITERION_INVALID_PC_SEARCH" - Baidu: Bid or quality too low for
// desktop, but eligible to display for mobile.
// "AD_GROUP_CRITERION_INVALID_SEARCH" - Baidu: Bid or quality too low to be
// displayed.
// "AD_GROUP_CRITERION_LOW_SEARCH_VOLUME" - Baidu: Paused by Baidu due to low
// search volume.
// "AD_GROUP_CRITERION_MOBILE_URL_UNDER_REVIEW" - Baidu: Mobile URL in
// process to be reviewed.
// "AD_GROUP_CRITERION_PARTIALLY_INVALID" - Baidu: The landing page for one
// device is invalid, while the landing page for the other device is valid.
// "AD_GROUP_CRITERION_TO_BE_ACTIVATED" - Baidu: Keyword has been created and
// paused by Baidu account management, and is now ready for you to activate it.
// "AD_GROUP_CRITERION_UNDER_REVIEW" - Baidu: In process to be reviewed by
// Baidu. Gemini: Criterion under review.
// "AD_GROUP_CRITERION_NOT_REVIEWED" - Baidu: Criterion to be reviewed.
// "AD_GROUP_CRITERION_ON_HOLD" - Deprecated. Do not use. Previously used by
// Gemini
// "AD_GROUP_CRITERION_PENDING_REVIEW" - Y!J : Criterion pending review
// "AD_GROUP_CRITERION_PAUSED" - Criterion has been paused.
// "AD_GROUP_CRITERION_REMOVED" - Criterion has been removed.
// "AD_GROUP_CRITERION_APPROVED" - Criterion has been approved.
// "AD_GROUP_CRITERION_DISAPPROVED" - Criterion has been disapproved.
// "AD_GROUP_CRITERION_SERVING" - Criterion is active and serving.
// "AD_GROUP_CRITERION_ACCOUNT_PAUSED" - Criterion has been paused since the
// account is paused.
EngineStatus string `json:"engineStatus,omitempty"`
// FinalUrlSuffix: URL template for appending params to final URL.
FinalUrlSuffix string `json:"finalUrlSuffix,omitempty"`
// FinalUrls: The list of possible final URLs after all cross-domain redirects
// for the ad.
FinalUrls []string `json:"finalUrls,omitempty"`
// Gender: Immutable. Gender.
Gender *GoogleAdsSearchads360V0Common__GenderInfo `json:"gender,omitempty"`
// Keyword: Immutable. Keyword.
Keyword *GoogleAdsSearchads360V0Common__KeywordInfo `json:"keyword,omitempty"`
// Labels: Output only. The resource names of labels attached to this ad group
// criterion.
Labels []string `json:"labels,omitempty"`
// LastModifiedTime: Output only. The datetime when this ad group criterion was
// last modified. The datetime is in the customer's time zone and in
// "yyyy-MM-dd HH:mm:ss.ssssss" format.
LastModifiedTime string `json:"lastModifiedTime,omitempty"`
// ListingGroup: Immutable. Listing group.
ListingGroup *GoogleAdsSearchads360V0Common__ListingGroupInfo `json:"listingGroup,omitempty"`
// Location: Immutable. Location.
Location *GoogleAdsSearchads360V0Common__LocationInfo `json:"location,omitempty"`
// Negative: Immutable. Whether to target (`false`) or exclude (`true`) the
// criterion. This field is immutable. To switch a criterion from positive to
// negative, remove then re-add it.
Negative bool `json:"negative,omitempty"`
// PositionEstimates: Output only. Estimates for criterion bids at various
// positions.
PositionEstimates *GoogleAdsSearchads360V0ResourcesAdGroupCriterionPositionEstimates `json:"positionEstimates,omitempty"`
// QualityInfo: Output only. Information regarding the quality of the
// criterion.
QualityInfo *GoogleAdsSearchads360V0ResourcesAdGroupCriterionQualityInfo `json:"qualityInfo,omitempty"`
// ResourceName: Immutable. The resource name of the ad group criterion. Ad
// group criterion resource names have the form:
// `customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: The status of the criterion. This is the status of the ad group
// criterion entity, set by the client. Note: UI reports may incorporate
// additional information that affects whether a criterion is eligible to run.
// In some cases a criterion that's REMOVED in the API can still show as
// enabled in the UI. For example, campaigns by default show to users of all
// age ranges unless excluded. The UI will show each age range as "enabled",
// since they're eligible to see the ads; but AdGroupCriterion.status will show
// "removed", since no positive criterion was added.
//
// Possible values:
// "UNSPECIFIED" - No value has been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "ENABLED" - The ad group criterion is enabled.
// "PAUSED" - The ad group criterion is paused.
// "REMOVED" - The ad group criterion is removed.
Status string `json:"status,omitempty"`
// TrackingUrlTemplate: The URL template for constructing a tracking URL.
TrackingUrlTemplate string `json:"trackingUrlTemplate,omitempty"`
// Type: Output only. The type of the criterion.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "KEYWORD" - Keyword, for example, 'mars cruise'.
// "PLACEMENT" - Placement, also known as Website, for example,
// 'www.flowers4sale.com'
// "MOBILE_APP_CATEGORY" - Mobile application categories to target.
// "MOBILE_APPLICATION" - Mobile applications to target.
// "DEVICE" - Devices to target.
// "LOCATION" - Locations to target.
// "LISTING_GROUP" - Listing groups to target.
// "AD_SCHEDULE" - Ad Schedule.
// "AGE_RANGE" - Age range.
// "GENDER" - Gender.
// "INCOME_RANGE" - Income Range.
// "PARENTAL_STATUS" - Parental status.
// "YOUTUBE_VIDEO" - YouTube Video.
// "YOUTUBE_CHANNEL" - YouTube Channel.
// "USER_LIST" - User list.
// "PROXIMITY" - Proximity.
// "TOPIC" - A topic target on the display network (for example, "Pets &
// Animals").
// "LISTING_SCOPE" - Listing scope to target.
// "LANGUAGE" - Language.
// "IP_BLOCK" - IpBlock.
// "CONTENT_LABEL" - Content Label for category exclusion.
// "CARRIER" - Carrier.
// "USER_INTEREST" - A category the user is interested in.
// "WEBPAGE" - Webpage criterion for dynamic search ads.
// "OPERATING_SYSTEM_VERSION" - Operating system version.
// "APP_PAYMENT_MODEL" - App payment model.
// "MOBILE_DEVICE" - Mobile device.
// "CUSTOM_AFFINITY" - Custom affinity.
// "CUSTOM_INTENT" - Custom intent.
// "LOCATION_GROUP" - Location group.
// "CUSTOM_AUDIENCE" - Custom audience
// "COMBINED_AUDIENCE" - Combined audience
// "KEYWORD_THEME" - Smart Campaign keyword theme
// "AUDIENCE" - Audience
// "LOCAL_SERVICE_ID" - Local Services Ads Service ID.
// "BRAND" - Brand
// "BRAND_LIST" - Brand List
// "LIFE_EVENT" - Life Event
Type string `json:"type,omitempty"`
// UserList: Immutable. User List.
UserList *GoogleAdsSearchads360V0Common__UserListInfo `json:"userList,omitempty"`
// Webpage: Immutable. Webpage
Webpage *GoogleAdsSearchads360V0Common__WebpageInfo `json:"webpage,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdGroup") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdGroup") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AdGroupCriterion) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AdGroupCriterion
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
func (s *GoogleAdsSearchads360V0Resources__AdGroupCriterion) UnmarshalJSON(data []byte) error {
type NoMethod GoogleAdsSearchads360V0Resources__AdGroupCriterion
var s1 struct {
BidModifier gensupport.JSONFloat64 `json:"bidModifier"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.BidModifier = float64(s1.BidModifier)
return nil
}
// GoogleAdsSearchads360V0Resources__AdGroupCriterionLabel: A relationship
// between an ad group criterion and a label.
type GoogleAdsSearchads360V0Resources__AdGroupCriterionLabel struct {
// AdGroupCriterion: Immutable. The ad group criterion to which the label is
// attached.
AdGroupCriterion string `json:"adGroupCriterion,omitempty"`
// Label: Immutable. The label assigned to the ad group criterion.
Label string `json:"label,omitempty"`
// ResourceName: Immutable. The resource name of the ad group criterion label.
// Ad group criterion label resource names have the form:
// `customers/{customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~
// {label_id}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdGroupCriterion") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdGroupCriterion") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AdGroupCriterionLabel) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AdGroupCriterionLabel
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AdGroupLabel: A relationship between an ad
// group and a label.
type GoogleAdsSearchads360V0Resources__AdGroupLabel struct {
// AdGroup: Immutable. The ad group to which the label is attached.
AdGroup string `json:"adGroup,omitempty"`
// Label: Immutable. The label assigned to the ad group.
Label string `json:"label,omitempty"`
// ResourceName: Immutable. The resource name of the ad group label. Ad group
// label resource names have the form:
// `customers/{customer_id}/adGroupLabels/{ad_group_id}~{label_id}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdGroup") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdGroup") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AdGroupLabel) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AdGroupLabel
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AgeRangeView: An age range view.
type GoogleAdsSearchads360V0Resources__AgeRangeView struct {
// ResourceName: Output only. The resource name of the age range view. Age
// range view resource names have the form:
// `customers/{customer_id}/ageRangeViews/{ad_group_id}~{criterion_id}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "ResourceName") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ResourceName") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AgeRangeView) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AgeRangeView
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__Asset: Asset is a part of an ad which can
// be shared across multiple ads. It can be an image (ImageAsset), a video
// (YoutubeVideoAsset), etc. Assets are immutable and cannot be removed. To
// stop an asset from serving, remove the asset from the entity that is using
// it.
type GoogleAdsSearchads360V0Resources__Asset struct {
// CallAsset: Output only. A unified call asset.
CallAsset *GoogleAdsSearchads360V0Common__UnifiedCallAsset `json:"callAsset,omitempty"`
// CallToActionAsset: Immutable. A call to action asset.
CallToActionAsset *GoogleAdsSearchads360V0Common__CallToActionAsset `json:"callToActionAsset,omitempty"`
// CalloutAsset: Output only. A unified callout asset.
CalloutAsset *GoogleAdsSearchads360V0Common__UnifiedCalloutAsset `json:"calloutAsset,omitempty"`
// CreationTime: Output only. The timestamp when this asset was created. The
// timestamp is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss"
// format.
CreationTime string `json:"creationTime,omitempty"`
// EngineStatus: Output only. The Engine Status for an asset.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "SERVING" - The asset is active.
// "SERVING_LIMITED" - The asset is active limited.
// "DISAPPROVED" - The asset is disapproved (not eligible).
// "DISABLED" - The asset is inactive (pending).
// "REMOVED" - The asset has been removed.
EngineStatus string `json:"engineStatus,omitempty"`
// FinalUrls: A list of possible final URLs after all cross domain redirects.
FinalUrls []string `json:"finalUrls,omitempty"`
// Id: Output only. The ID of the asset.
Id int64 `json:"id,omitempty,string"`
// ImageAsset: Output only. An image asset.
ImageAsset *GoogleAdsSearchads360V0Common__ImageAsset `json:"imageAsset,omitempty"`
// LastModifiedTime: Output only. The datetime when this asset was last
// modified. The datetime is in the customer's time zone and in "yyyy-MM-dd
// HH:mm:ss.ssssss" format.
LastModifiedTime string `json:"lastModifiedTime,omitempty"`
// LocationAsset: Output only. A unified location asset.
LocationAsset *GoogleAdsSearchads360V0Common__UnifiedLocationAsset `json:"locationAsset,omitempty"`
// MobileAppAsset: A mobile app asset.
MobileAppAsset *GoogleAdsSearchads360V0Common__MobileAppAsset `json:"mobileAppAsset,omitempty"`
// Name: Optional name of the asset.
Name string `json:"name,omitempty"`
// PageFeedAsset: Output only. A unified page feed asset.
PageFeedAsset *GoogleAdsSearchads360V0Common__UnifiedPageFeedAsset `json:"pageFeedAsset,omitempty"`
// ResourceName: Immutable. The resource name of the asset. Asset resource
// names have the form: `customers/{customer_id}/assets/{asset_id}`
ResourceName string `json:"resourceName,omitempty"`
// SitelinkAsset: Output only. A unified sitelink asset.
SitelinkAsset *GoogleAdsSearchads360V0Common__UnifiedSitelinkAsset `json:"sitelinkAsset,omitempty"`
// Status: Output only. The status of the asset.
//
// Possible values:
// "UNSPECIFIED" - The status has not been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "ENABLED" - The asset is enabled.
// "REMOVED" - The asset is removed.
// "ARCHIVED" - The asset is archived.
// "PENDING_SYSTEM_GENERATED" - The asset is system generated pending user
// review.
Status string `json:"status,omitempty"`
// TextAsset: Output only. A text asset.
TextAsset *GoogleAdsSearchads360V0Common__TextAsset `json:"textAsset,omitempty"`
// TrackingUrlTemplate: URL template for constructing a tracking URL.
TrackingUrlTemplate string `json:"trackingUrlTemplate,omitempty"`
// Type: Output only. Type of the asset.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "YOUTUBE_VIDEO" - YouTube video asset.
// "MEDIA_BUNDLE" - Media bundle asset.
// "IMAGE" - Image asset.
// "TEXT" - Text asset.
// "LEAD_FORM" - Lead form asset.
// "BOOK_ON_GOOGLE" - Book on Google asset.
// "PROMOTION" - Promotion asset.
// "CALLOUT" - Callout asset.
// "STRUCTURED_SNIPPET" - Structured Snippet asset.
// "SITELINK" - Sitelink asset.
// "PAGE_FEED" - Page Feed asset.
// "DYNAMIC_EDUCATION" - Dynamic Education asset.
// "MOBILE_APP" - Mobile app asset.
// "HOTEL_CALLOUT" - Hotel callout asset.
// "CALL" - Call asset.
// "PRICE" - Price asset.
// "CALL_TO_ACTION" - Call to action asset.
// "DYNAMIC_REAL_ESTATE" - Dynamic real estate asset.
// "DYNAMIC_CUSTOM" - Dynamic custom asset.
// "DYNAMIC_HOTELS_AND_RENTALS" - Dynamic hotels and rentals asset.
// "DYNAMIC_FLIGHTS" - Dynamic flights asset.
// "DISCOVERY_CAROUSEL_CARD" - Discovery Carousel Card asset.
// "DYNAMIC_TRAVEL" - Dynamic travel asset.
// "DYNAMIC_LOCAL" - Dynamic local asset.
// "DYNAMIC_JOBS" - Dynamic jobs asset.
// "LOCATION" - Location asset.
// "HOTEL_PROPERTY" - Hotel property asset.
Type string `json:"type,omitempty"`
// YoutubeVideoAsset: Immutable. A YouTube video asset.
YoutubeVideoAsset *GoogleAdsSearchads360V0Common__YoutubeVideoAsset `json:"youtubeVideoAsset,omitempty"`
// ForceSendFields is a list of field names (e.g. "CallAsset") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CallAsset") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__Asset) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__Asset
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AssetGroup: An asset group.
// AssetGroupAsset is used to link an asset to the asset group.
// AssetGroupSignal is used to associate a signal to an asset group.
type GoogleAdsSearchads360V0Resources__AssetGroup struct {
// AdStrength: Output only. Overall ad strength of this asset group.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "PENDING" - The ad strength is currently pending.
// "NO_ADS" - No ads could be generated.
// "POOR" - Poor strength.
// "AVERAGE" - Average strength.
// "GOOD" - Good strength.
// "EXCELLENT" - Excellent strength.
AdStrength string `json:"adStrength,omitempty"`
// Campaign: Immutable. The campaign with which this asset group is associated.
// The asset which is linked to the asset group.
Campaign string `json:"campaign,omitempty"`
// FinalMobileUrls: A list of final mobile URLs after all cross domain
// redirects. In performance max, by default, the urls are eligible for
// expansion unless opted out.
FinalMobileUrls []string `json:"finalMobileUrls,omitempty"`
// FinalUrls: A list of final URLs after all cross domain redirects. In
// performance max, by default, the urls are eligible for expansion unless
// opted out.
FinalUrls []string `json:"finalUrls,omitempty"`
// Id: Output only. The ID of the asset group.
Id int64 `json:"id,omitempty,string"`
// Name: Required. Name of the asset group. Required. It must have a minimum
// length of 1 and maximum length of 128. It must be unique under a campaign.
Name string `json:"name,omitempty"`
// Path1: First part of text that may appear appended to the url displayed in
// the ad.
Path1 string `json:"path1,omitempty"`
// Path2: Second part of text that may appear appended to the url displayed in
// the ad. This field can only be set when path1 is set.
Path2 string `json:"path2,omitempty"`
// ResourceName: Immutable. The resource name of the asset group. Asset group
// resource names have the form:
// `customers/{customer_id}/assetGroups/{asset_group_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: The status of the asset group.
//
// Possible values:
// "UNSPECIFIED" - The status has not been specified.
// "UNKNOWN" - The received value is not known in this version.
// "ENABLED" - The asset group is enabled.
// "PAUSED" - The asset group is paused.
// "REMOVED" - The asset group is removed.
Status string `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdStrength") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdStrength") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AssetGroup) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AssetGroup
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AssetGroupAsset: AssetGroupAsset is the
// link between an asset and an asset group. Adding an AssetGroupAsset links an
// asset with an asset group.
type GoogleAdsSearchads360V0Resources__AssetGroupAsset struct {
// Asset: Immutable. The asset which this asset group asset is linking.
Asset string `json:"asset,omitempty"`
// AssetGroup: Immutable. The asset group which this asset group asset is
// linking.
AssetGroup string `json:"assetGroup,omitempty"`
// FieldType: The description of the placement of the asset within the asset
// group. For example: HEADLINE, YOUTUBE_VIDEO etc
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "HEADLINE" - The asset is linked for use as a headline.
// "DESCRIPTION" - The asset is linked for use as a description.
// "MANDATORY_AD_TEXT" - The asset is linked for use as mandatory ad text.
// "MARKETING_IMAGE" - The asset is linked for use as a marketing image.
// "MEDIA_BUNDLE" - The asset is linked for use as a media bundle.
// "YOUTUBE_VIDEO" - The asset is linked for use as a YouTube video.
// "BOOK_ON_GOOGLE" - The asset is linked to indicate that a hotels campaign
// is "Book on Google" enabled.
// "LEAD_FORM" - The asset is linked for use as a Lead Form extension.
// "PROMOTION" - The asset is linked for use as a Promotion extension.
// "CALLOUT" - The asset is linked for use as a Callout extension.
// "STRUCTURED_SNIPPET" - The asset is linked for use as a Structured Snippet
// extension.
// "SITELINK" - The asset is linked for use as a Sitelink.
// "MOBILE_APP" - The asset is linked for use as a Mobile App extension.
// "HOTEL_CALLOUT" - The asset is linked for use as a Hotel Callout
// extension.
// "CALL" - The asset is linked for use as a Call extension.
// "PRICE" - The asset is linked for use as a Price extension.
// "LONG_HEADLINE" - The asset is linked for use as a long headline.
// "BUSINESS_NAME" - The asset is linked for use as a business name.
// "SQUARE_MARKETING_IMAGE" - The asset is linked for use as a square
// marketing image.
// "PORTRAIT_MARKETING_IMAGE" - The asset is linked for use as a portrait
// marketing image.
// "LOGO" - The asset is linked for use as a logo.
// "LANDSCAPE_LOGO" - The asset is linked for use as a landscape logo.
// "VIDEO" - The asset is linked for use as a non YouTube logo.
// "CALL_TO_ACTION_SELECTION" - The asset is linked for use to select a
// call-to-action.
// "AD_IMAGE" - The asset is linked for use to select an ad image.
// "BUSINESS_LOGO" - The asset is linked for use as a business logo.
// "HOTEL_PROPERTY" - The asset is linked for use as a hotel property in a
// Performance Max for travel goals campaign.
// "DISCOVERY_CAROUSEL_CARD" - The asset is linked for use as a discovery
// carousel card.
FieldType string `json:"fieldType,omitempty"`
// ResourceName: Immutable. The resource name of the asset group asset. Asset
// group asset resource name have the form:
// `customers/{customer_id}/assetGroupAssets/{asset_group_id}~{asset_id}~{field_
// type}`
ResourceName string `json:"resourceName,omitempty"`
// Status: The status of the link between an asset and asset group.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ENABLED" - Asset link is enabled.
// "REMOVED" - Asset link has been removed.
// "PAUSED" - Asset link is paused.
Status string `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "Asset") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Asset") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AssetGroupAsset) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AssetGroupAsset
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AssetGroupAssetCombinationData: Asset
// group asset combination data
type GoogleAdsSearchads360V0Resources__AssetGroupAssetCombinationData struct {
// AssetCombinationServedAssets: Output only. Served assets.
AssetCombinationServedAssets []*GoogleAdsSearchads360V0Common__AssetUsage `json:"assetCombinationServedAssets,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "AssetCombinationServedAssets") to unconditionally include in API requests.
// By default, fields with empty or default values are omitted from API
// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
// for more details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AssetCombinationServedAssets") to
// include in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AssetGroupAssetCombinationData) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AssetGroupAssetCombinationData
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AssetGroupListingGroupFilter:
// AssetGroupListingGroupFilter represents a listing group filter tree node in
// an asset group.
type GoogleAdsSearchads360V0Resources__AssetGroupListingGroupFilter struct {
// AssetGroup: Immutable. The asset group which this asset group listing group
// filter is part of.
AssetGroup string `json:"assetGroup,omitempty"`
// CaseValue: Dimension value with which this listing group is refining its
// parent. Undefined for the root group.
CaseValue *GoogleAdsSearchads360V0Resources__ListingGroupFilterDimension `json:"caseValue,omitempty"`
// Id: Output only. The ID of the ListingGroupFilter.
Id int64 `json:"id,omitempty,string"`
// ParentListingGroupFilter: Immutable. Resource name of the parent listing
// group subdivision. Null for the root listing group filter node.
ParentListingGroupFilter string `json:"parentListingGroupFilter,omitempty"`
// Path: Output only. The path of dimensions defining this listing group
// filter.
Path *GoogleAdsSearchads360V0Resources__ListingGroupFilterDimensionPath `json:"path,omitempty"`
// ResourceName: Immutable. The resource name of the asset group listing group
// filter. Asset group listing group filter resource name have the form:
// `customers/{customer_id}/assetGroupListingGroupFilters/{asset_group_id}~{list
// ing_group_filter_id}`
ResourceName string `json:"resourceName,omitempty"`
// Type: Immutable. Type of a listing group filter node.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "SUBDIVISION" - Subdivision of products along some listing dimensions.
// "UNIT_INCLUDED" - An included listing group filter leaf node.
// "UNIT_EXCLUDED" - An excluded listing group filter leaf node.
Type string `json:"type,omitempty"`
// Vertical: Immutable. The vertical the current node tree represents. All
// nodes in the same tree must belong to the same vertical.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "SHOPPING" - Represents the shopping vertical. The vertical is allowed
// only in Performance Max for Retail campaigns.
Vertical string `json:"vertical,omitempty"`
// ForceSendFields is a list of field names (e.g. "AssetGroup") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AssetGroup") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AssetGroupListingGroupFilter) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AssetGroupListingGroupFilter
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AssetGroupSignal: AssetGroupSignal
// represents a signal in an asset group. The existence of a signal tells the
// performance max campaign who's most likely to convert. Performance Max uses
// the signal to look for new people with similar or stronger intent to find
// conversions across Search, Display, Video, and more.
type GoogleAdsSearchads360V0Resources__AssetGroupSignal struct {
// AssetGroup: Immutable. The asset group which this asset group signal belongs
// to.
AssetGroup string `json:"assetGroup,omitempty"`
// Audience: Immutable. The audience signal to be used by the performance max
// campaign.
Audience *GoogleAdsSearchads360V0Common__AudienceInfo `json:"audience,omitempty"`
// ResourceName: Immutable. The resource name of the asset group signal. Asset
// group signal resource name have the form:
// `customers/{customer_id}/assetGroupSignals/{asset_group_id}~{signal_id}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "AssetGroup") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AssetGroup") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AssetGroupSignal) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AssetGroupSignal
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AssetGroupTopCombinationView: A view on
// the usage of ad group ad asset combination.
type GoogleAdsSearchads360V0Resources__AssetGroupTopCombinationView struct {
// AssetGroupTopCombinations: Output only. The top combinations of assets that
// served together.
AssetGroupTopCombinations []*GoogleAdsSearchads360V0Resources__AssetGroupAssetCombinationData `json:"assetGroupTopCombinations,omitempty"`
// ResourceName: Output only. The resource name of the asset group top
// combination view. AssetGroup Top Combination view resource names have the
// form:
// "customers/{customer_id}/assetGroupTopCombinationViews/{asset_group_id}~{ass
// et_combination_category}"
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "AssetGroupTopCombinations")
// to unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AssetGroupTopCombinations") to
// include in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AssetGroupTopCombinationView) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AssetGroupTopCombinationView
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AssetSet: An asset set representing a
// collection of assets. Use AssetSetAsset to link an asset to the asset set.
type GoogleAdsSearchads360V0Resources__AssetSet struct {
// Id: Output only. The ID of the asset set.
Id int64 `json:"id,omitempty,string"`
// ResourceName: Immutable. The resource name of the asset set. Asset set
// resource names have the form:
// `customers/{customer_id}/assetSets/{asset_set_id}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AssetSet) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AssetSet
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__AssetSetAsset: AssetSetAsset is the link
// between an asset and an asset set. Adding an AssetSetAsset links an asset
// with an asset set.
type GoogleAdsSearchads360V0Resources__AssetSetAsset struct {
// Asset: Immutable. The asset which this asset set asset is linking to.
Asset string `json:"asset,omitempty"`
// AssetSet: Immutable. The asset set which this asset set asset is linking to.
AssetSet string `json:"assetSet,omitempty"`
// ResourceName: Immutable. The resource name of the asset set asset. Asset set
// asset resource names have the form:
// `customers/{customer_id}/assetSetAssets/{asset_set_id}~{asset_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: Output only. The status of the asset set asset. Read-only.
//
// Possible values:
// "UNSPECIFIED" - The status has not been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "ENABLED" - The asset set asset is enabled.
// "REMOVED" - The asset set asset is removed.
Status string `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "Asset") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Asset") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__AssetSetAsset) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__AssetSetAsset
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__Audience: Audience is an effective
// targeting option that lets you intersect different segment attributes, such
// as detailed demographics and affinities, to create audiences that represent
// sections of your target segments.
type GoogleAdsSearchads360V0Resources__Audience struct {
// Description: Description of this audience.
Description string `json:"description,omitempty"`
// Id: Output only. ID of the audience.
Id int64 `json:"id,omitempty,string"`
// Name: Required. Name of the audience. It should be unique across all
// audiences. It must have a minimum length of 1 and maximum length of 255.
Name string `json:"name,omitempty"`
// ResourceName: Immutable. The resource name of the audience. Audience names
// have the form: `customers/{customer_id}/audiences/{audience_id}`
ResourceName string `json:"resourceName,omitempty"`
// 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. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
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. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__Audience) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__Audience
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__BiddingStrategy: A bidding strategy.
type GoogleAdsSearchads360V0Resources__BiddingStrategy struct {
// CampaignCount: Output only. The number of campaigns attached to this bidding
// strategy. This field is read-only.
CampaignCount int64 `json:"campaignCount,omitempty,string"`
// CurrencyCode: Immutable. The currency used by the bidding strategy (ISO 4217
// three-letter code). For bidding strategies in manager customers, this
// currency can be set on creation and defaults to the manager customer's
// currency. For serving customers, this field cannot be set; all strategies in
// a serving customer implicitly use the serving customer's currency. In all
// cases the effective_currency_code field returns the currency used by the
// strategy.
CurrencyCode string `json:"currencyCode,omitempty"`
// EffectiveCurrencyCode: Output only. The currency used by the bidding
// strategy (ISO 4217 three-letter code). For bidding strategies in manager
// customers, this is the currency set by the advertiser when creating the
// strategy. For serving customers, this is the customer's currency_code.
// Bidding strategy metrics are reported in this currency. This field is
// read-only.
EffectiveCurrencyCode string `json:"effectiveCurrencyCode,omitempty"`
// EnhancedCpc: A bidding strategy that raises bids for clicks that seem more
// likely to lead to a conversion and lowers them for clicks where they seem
// less likely.
EnhancedCpc *GoogleAdsSearchads360V0Common__EnhancedCpc `json:"enhancedCpc,omitempty"`
// Id: Output only. The ID of the bidding strategy.
Id int64 `json:"id,omitempty,string"`
// MaximizeConversionValue: An automated bidding strategy to help get the most
// conversion value for your campaigns while spending your budget.
MaximizeConversionValue *GoogleAdsSearchads360V0Common__MaximizeConversionValue `json:"maximizeConversionValue,omitempty"`
// MaximizeConversions: An automated bidding strategy to help get the most
// conversions for your campaigns while spending your budget.
MaximizeConversions *GoogleAdsSearchads360V0Common__MaximizeConversions `json:"maximizeConversions,omitempty"`
// Name: The name of the bidding strategy. All bidding strategies within an
// account must be named distinctly. The length of this string should be
// between 1 and 255, inclusive, in UTF-8 bytes, (trimmed).
Name string `json:"name,omitempty"`
// NonRemovedCampaignCount: Output only. The number of non-removed campaigns
// attached to this bidding strategy. This field is read-only.
NonRemovedCampaignCount int64 `json:"nonRemovedCampaignCount,omitempty,string"`
// ResourceName: Immutable. The resource name of the bidding strategy. Bidding
// strategy resource names have the form:
// `customers/{customer_id}/biddingStrategies/{bidding_strategy_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: Output only. The status of the bidding strategy. This field is
// read-only.
//
// Possible values:
// "UNSPECIFIED" - No value has been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "ENABLED" - The bidding strategy is enabled.
// "REMOVED" - The bidding strategy is removed.
Status string `json:"status,omitempty"`
// TargetCpa: A bidding strategy that sets bids to help get as many conversions
// as possible at the target cost-per-acquisition (CPA) you set.
TargetCpa *GoogleAdsSearchads360V0Common__TargetCpa `json:"targetCpa,omitempty"`
// TargetImpressionShare: A bidding strategy that automatically optimizes
// towards a chosen percentage of impressions.
TargetImpressionShare *GoogleAdsSearchads360V0Common__TargetImpressionShare `json:"targetImpressionShare,omitempty"`
// TargetOutrankShare: A bidding strategy that sets bids based on the target
// fraction of auctions where the advertiser should outrank a specific
// competitor. This field is deprecated. Creating a new bidding strategy with
// this field or attaching bidding strategies with this field to a campaign
// will fail. Mutates to strategies that already have this scheme populated are
// allowed.
TargetOutrankShare *GoogleAdsSearchads360V0Common__TargetOutrankShare `json:"targetOutrankShare,omitempty"`
// TargetRoas: A bidding strategy that helps you maximize revenue while
// averaging a specific target Return On Ad Spend (ROAS).
TargetRoas *GoogleAdsSearchads360V0Common__TargetRoas `json:"targetRoas,omitempty"`
// TargetSpend: A bid strategy that sets your bids to help get as many clicks
// as possible within your budget.
TargetSpend *GoogleAdsSearchads360V0Common__TargetSpend `json:"targetSpend,omitempty"`
// Type: Output only. The type of the bidding strategy. Create a bidding
// strategy by setting the bidding scheme. This field is read-only.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "COMMISSION" - Commission is an automatic bidding strategy in which the
// advertiser pays a certain portion of the conversion value.
// "ENHANCED_CPC" - Enhanced CPC is a bidding strategy that raises bids for
// clicks that seem more likely to lead to a conversion and lowers them for
// clicks where they seem less likely.
// "INVALID" - Used for return value only. Indicates that a campaign does not
// have a bidding strategy. This prevents the campaign from serving. For
// example, a campaign may be attached to a manager bidding strategy and the
// serving account is subsequently unlinked from the manager account. In this
// case the campaign will automatically be detached from the now inaccessible
// manager bidding strategy and transition to the INVALID bidding strategy
// type.
// "MANUAL_CPA" - Manual bidding strategy that allows advertiser to set the
// bid per advertiser-specified action.
// "MANUAL_CPC" - Manual click based bidding where user pays per click.
// "MANUAL_CPM" - Manual impression based bidding where user pays per
// thousand impressions.
// "MANUAL_CPV" - A bidding strategy that pays a configurable amount per
// video view.
// "MAXIMIZE_CONVERSIONS" - A bidding strategy that automatically maximizes
// number of conversions given a daily budget.
// "MAXIMIZE_CONVERSION_VALUE" - An automated bidding strategy that
// automatically sets bids to maximize revenue while spending your budget.
// "PAGE_ONE_PROMOTED" - Page-One Promoted bidding scheme, which sets max cpc
// bids to target impressions on page one or page one promoted slots on
// google.com. This enum value is deprecated.
// "PERCENT_CPC" - Percent Cpc is bidding strategy where bids are a fraction
// of the advertised price for some good or service.
// "TARGET_CPA" - Target CPA is an automated bid strategy that sets bids to
// help get as many conversions as possible at the target cost-per-acquisition
// (CPA) you set.
// "TARGET_CPM" - Target CPM is an automated bid strategy that sets bids to
// help get as many impressions as possible at the target cost per one thousand
// impressions (CPM) you set.
// "TARGET_IMPRESSION_SHARE" - An automated bidding strategy that sets bids
// so that a certain percentage of search ads are shown at the top of the first
// page (or other targeted location).
// "TARGET_OUTRANK_SHARE" - Target Outrank Share is an automated bidding
// strategy that sets bids based on the target fraction of auctions where the
// advertiser should outrank a specific competitor. This enum value is
// deprecated.
// "TARGET_ROAS" - Target ROAS is an automated bidding strategy that helps
// you maximize revenue while averaging a specific target Return On Average
// Spend (ROAS).
// "TARGET_SPEND" - Target Spend is an automated bid strategy that sets your
// bids to help get as many clicks as possible within your budget.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "CampaignCount") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CampaignCount") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__BiddingStrategy) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__BiddingStrategy
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__Campaign: A campaign.
type GoogleAdsSearchads360V0Resources__Campaign struct {
// AccessibleBiddingStrategy: Output only. Resource name of
// AccessibleBiddingStrategy, a read-only view of the unrestricted attributes
// of the attached portfolio bidding strategy identified by 'bidding_strategy'.
// Empty, if the campaign does not use a portfolio strategy. Unrestricted
// strategy attributes are available to all customers with whom the strategy is
// shared and are read from the AccessibleBiddingStrategy resource. In
// contrast, restricted attributes are only available to the owner customer of
// the strategy and their managers. Restricted attributes can only be read from
// the BiddingStrategy resource.
AccessibleBiddingStrategy string `json:"accessibleBiddingStrategy,omitempty"`
// AdServingOptimizationStatus: The ad serving optimization status of the
// campaign.
//
// Possible values:
// "UNSPECIFIED" - No value has been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "OPTIMIZE" - Ad serving is optimized based on CTR for the campaign.
// "CONVERSION_OPTIMIZE" - Ad serving is optimized based on CTR * Conversion
// for the campaign. If the campaign is not in the conversion optimizer bidding
// strategy, it will default to OPTIMIZED.
// "ROTATE" - Ads are rotated evenly for 90 days, then optimized for clicks.
// "ROTATE_INDEFINITELY" - Show lower performing ads more evenly with higher
// performing ads, and do not optimize.
// "UNAVAILABLE" - Ad serving optimization status is not available.
AdServingOptimizationStatus string `json:"adServingOptimizationStatus,omitempty"`
// AdvertisingChannelSubType: Immutable. Optional refinement to
// `advertising_channel_type`. Must be a valid sub-type of the parent channel
// type. Can be set only when creating campaigns. After campaign is created,
// the field can not be changed.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used as a return value only. Represents value unknown in this
// version.
// "SEARCH_MOBILE_APP" - Mobile app campaigns for Search.
// "DISPLAY_MOBILE_APP" - Mobile app campaigns for Display.
// "SEARCH_EXPRESS" - AdWords express campaigns for search.
// "DISPLAY_EXPRESS" - AdWords Express campaigns for display.
// "SHOPPING_SMART_ADS" - Smart Shopping campaigns.
// "DISPLAY_GMAIL_AD" - Gmail Ad campaigns.
// "DISPLAY_SMART_CAMPAIGN" - Smart display campaigns. New campaigns of this
// sub type cannot be created.
// "VIDEO_OUTSTREAM" - Video Outstream campaigns.
// "VIDEO_ACTION" - Video TrueView for Action campaigns.
// "VIDEO_NON_SKIPPABLE" - Video campaigns with non-skippable video ads.
// "APP_CAMPAIGN" - App Campaign that lets you easily promote your Android or
// iOS app across Google's top properties including Search, Play, YouTube, and
// the Google Display Network.
// "APP_CAMPAIGN_FOR_ENGAGEMENT" - App Campaign for engagement, focused on
// driving re-engagement with the app across several of Google's top properties
// including Search, YouTube, and the Google Display Network.
// "LOCAL_CAMPAIGN" - Campaigns specialized for local advertising.
// "SHOPPING_COMPARISON_LISTING_ADS" - Shopping Comparison Listing campaigns.
// "SMART_CAMPAIGN" - Standard Smart campaigns.
// "VIDEO_SEQUENCE" - Video campaigns with sequence video ads.
// "APP_CAMPAIGN_FOR_PRE_REGISTRATION" - App Campaign for pre registration,
// specialized for advertising mobile app pre-registration, that targets
// multiple advertising channels across Google Play, YouTube and Display
// Network.
// "VIDEO_REACH_TARGET_FREQUENCY" - Video reach campaign with Target
// Frequency bidding strategy.
// "TRAVEL_ACTIVITIES" - Travel Activities campaigns.
AdvertisingChannelSubType string `json:"advertisingChannelSubType,omitempty"`
// AdvertisingChannelType: Immutable. The primary serving target for ads within
// the campaign. The targeting options can be refined in `network_settings`.
// This field is required and should not be empty when creating new campaigns.
// Can be set only when creating campaigns. After the campaign is created, the
// field can not be changed.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "SEARCH" - Search Network. Includes display bundled, and Search+
// campaigns.
// "DISPLAY" - Google Display Network only.
// "SHOPPING" - Shopping campaigns serve on the shopping property and on
// google.com search results.
// "HOTEL" - Hotel Ads campaigns.
// "VIDEO" - Video campaigns.
// "MULTI_CHANNEL" - App Campaigns, and App Campaigns for Engagement, that
// run across multiple channels.
// "LOCAL" - Local ads campaigns.
// "SMART" - Smart campaigns.
// "PERFORMANCE_MAX" - Performance Max campaigns.
// "LOCAL_SERVICES" - Local services campaigns.
// "DISCOVERY" - Discovery campaigns.
// "TRAVEL" - Travel campaigns.
AdvertisingChannelType string `json:"advertisingChannelType,omitempty"`
// BiddingStrategy: Portfolio bidding strategy used by campaign.
BiddingStrategy string `json:"biddingStrategy,omitempty"`
// BiddingStrategySystemStatus: Output only. The system status of the
// campaign's bidding strategy.
//
// Possible values:
// "UNSPECIFIED" - Signals that an unexpected error occurred, for example, no
// bidding strategy type was found, or no status information was found.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ENABLED" - The bid strategy is active, and AdWords cannot find any
// specific issues with the strategy.
// "LEARNING_NEW" - The bid strategy is learning because it has been recently
// created or recently reactivated.
// "LEARNING_SETTING_CHANGE" - The bid strategy is learning because of a
// recent setting change.
// "LEARNING_BUDGET_CHANGE" - The bid strategy is learning because of a
// recent budget change.
// "LEARNING_COMPOSITION_CHANGE" - The bid strategy is learning because of
// recent change in number of campaigns, ad groups or keywords attached to it.
// "LEARNING_CONVERSION_TYPE_CHANGE" - The bid strategy depends on conversion
// reporting and the customer recently modified conversion types that were
// relevant to the bid strategy.
// "LEARNING_CONVERSION_SETTING_CHANGE" - The bid strategy depends on
// conversion reporting and the customer recently changed their conversion
// settings.
// "LIMITED_BY_CPC_BID_CEILING" - The bid strategy is limited by its bid
// ceiling.
// "LIMITED_BY_CPC_BID_FLOOR" - The bid strategy is limited by its bid floor.
// "LIMITED_BY_DATA" - The bid strategy is limited because there was not
// enough conversion traffic over the past weeks.
// "LIMITED_BY_BUDGET" - A significant fraction of keywords in this bid
// strategy are limited by budget.
// "LIMITED_BY_LOW_PRIORITY_SPEND" - The bid strategy cannot reach its target
// spend because its spend has been de-prioritized.
// "LIMITED_BY_LOW_QUALITY" - A significant fraction of keywords in this bid
// strategy have a low Quality Score.
// "LIMITED_BY_INVENTORY" - The bid strategy cannot fully spend its budget
// because of narrow targeting.
// "MISCONFIGURED_ZERO_ELIGIBILITY" - Missing conversion tracking (no pings
// present) and/or remarketing lists for SSC.
// "MISCONFIGURED_CONVERSION_TYPES" - The bid strategy depends on conversion
// reporting and the customer is lacking conversion types that might be
// reported against this strategy.
// "MISCONFIGURED_CONVERSION_SETTINGS" - The bid strategy depends on
// conversion reporting and the customer's conversion settings are
// misconfigured.
// "MISCONFIGURED_SHARED_BUDGET" - There are campaigns outside the bid
// strategy that share budgets with campaigns included in the strategy.
// "MISCONFIGURED_STRATEGY_TYPE" - The campaign has an invalid strategy type
// and is not serving.
// "PAUSED" - The bid strategy is not active. Either there are no active
// campaigns, ad groups or keywords attached to the bid strategy. Or there are
// no active budgets connected to the bid strategy.
// "UNAVAILABLE" - This bid strategy currently does not support status
// reporting.
// "MULTIPLE_LEARNING" - There were multiple LEARNING_* system statuses for
// this bid strategy during the time in question.
// "MULTIPLE_LIMITED" - There were multiple LIMITED_* system statuses for
// this bid strategy during the time in question.
// "MULTIPLE_MISCONFIGURED" - There were multiple MISCONFIGURED_* system
// statuses for this bid strategy during the time in question.
// "MULTIPLE" - There were multiple system statuses for this bid strategy
// during the time in question.
BiddingStrategySystemStatus string `json:"biddingStrategySystemStatus,omitempty"`
// BiddingStrategyType: Output only. The type of bidding strategy. A bidding
// strategy can be created by setting either the bidding scheme to create a
// standard bidding strategy or the `bidding_strategy` field to create a
// portfolio bidding strategy. This field is read-only.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "COMMISSION" - Commission is an automatic bidding strategy in which the
// advertiser pays a certain portion of the conversion value.
// "ENHANCED_CPC" - Enhanced CPC is a bidding strategy that raises bids for
// clicks that seem more likely to lead to a conversion and lowers them for
// clicks where they seem less likely.
// "INVALID" - Used for return value only. Indicates that a campaign does not
// have a bidding strategy. This prevents the campaign from serving. For
// example, a campaign may be attached to a manager bidding strategy and the
// serving account is subsequently unlinked from the manager account. In this
// case the campaign will automatically be detached from the now inaccessible
// manager bidding strategy and transition to the INVALID bidding strategy
// type.
// "MANUAL_CPA" - Manual bidding strategy that allows advertiser to set the
// bid per advertiser-specified action.
// "MANUAL_CPC" - Manual click based bidding where user pays per click.
// "MANUAL_CPM" - Manual impression based bidding where user pays per
// thousand impressions.
// "MANUAL_CPV" - A bidding strategy that pays a configurable amount per
// video view.
// "MAXIMIZE_CONVERSIONS" - A bidding strategy that automatically maximizes
// number of conversions given a daily budget.
// "MAXIMIZE_CONVERSION_VALUE" - An automated bidding strategy that
// automatically sets bids to maximize revenue while spending your budget.
// "PAGE_ONE_PROMOTED" - Page-One Promoted bidding scheme, which sets max cpc
// bids to target impressions on page one or page one promoted slots on
// google.com. This enum value is deprecated.
// "PERCENT_CPC" - Percent Cpc is bidding strategy where bids are a fraction
// of the advertised price for some good or service.
// "TARGET_CPA" - Target CPA is an automated bid strategy that sets bids to
// help get as many conversions as possible at the target cost-per-acquisition
// (CPA) you set.
// "TARGET_CPM" - Target CPM is an automated bid strategy that sets bids to
// help get as many impressions as possible at the target cost per one thousand
// impressions (CPM) you set.
// "TARGET_IMPRESSION_SHARE" - An automated bidding strategy that sets bids
// so that a certain percentage of search ads are shown at the top of the first
// page (or other targeted location).
// "TARGET_OUTRANK_SHARE" - Target Outrank Share is an automated bidding
// strategy that sets bids based on the target fraction of auctions where the
// advertiser should outrank a specific competitor. This enum value is
// deprecated.
// "TARGET_ROAS" - Target ROAS is an automated bidding strategy that helps
// you maximize revenue while averaging a specific target Return On Average
// Spend (ROAS).
// "TARGET_SPEND" - Target Spend is an automated bid strategy that sets your
// bids to help get as many clicks as possible within your budget.
BiddingStrategyType string `json:"biddingStrategyType,omitempty"`
// CampaignBudget: The budget of the campaign.
CampaignBudget string `json:"campaignBudget,omitempty"`
// CreateTime: Output only. The timestamp when this campaign was created. The
// timestamp is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss"
// format. create_time will be deprecated in v1. Use creation_time instead.
CreateTime string `json:"createTime,omitempty"`
// CreationTime: Output only. The timestamp when this campaign was created. The
// timestamp is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss"
// format.
CreationTime string `json:"creationTime,omitempty"`
// DynamicSearchAdsSetting: The setting for controlling Dynamic Search Ads
// (DSA).
DynamicSearchAdsSetting *GoogleAdsSearchads360V0ResourcesCampaignDynamicSearchAdsSetting `json:"dynamicSearchAdsSetting,omitempty"`
// EndDate: The last day of the campaign in serving customer's timezone in
// YYYY-MM-DD format. On create, defaults to 2037-12-30, which means the
// campaign will run indefinitely. To set an existing campaign to run
// indefinitely, set this field to 2037-12-30.
EndDate string `json:"endDate,omitempty"`
// EngineId: Output only. ID of the campaign in the external engine account.
// This field is for non-Google Ads account only, for example, Yahoo Japan,
// Microsoft, Baidu etc. For Google Ads entity, use "campaign.id" instead.
EngineId string `json:"engineId,omitempty"`
// ExcludedParentAssetFieldTypes: The asset field types that should be excluded
// from this campaign. Asset links with these field types will not be inherited
// by this campaign from the upper level.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "HEADLINE" - The asset is linked for use as a headline.
// "DESCRIPTION" - The asset is linked for use as a description.
// "MANDATORY_AD_TEXT" - The asset is linked for use as mandatory ad text.
// "MARKETING_IMAGE" - The asset is linked for use as a marketing image.
// "MEDIA_BUNDLE" - The asset is linked for use as a media bundle.
// "YOUTUBE_VIDEO" - The asset is linked for use as a YouTube video.
// "BOOK_ON_GOOGLE" - The asset is linked to indicate that a hotels campaign
// is "Book on Google" enabled.
// "LEAD_FORM" - The asset is linked for use as a Lead Form extension.
// "PROMOTION" - The asset is linked for use as a Promotion extension.
// "CALLOUT" - The asset is linked for use as a Callout extension.
// "STRUCTURED_SNIPPET" - The asset is linked for use as a Structured Snippet
// extension.
// "SITELINK" - The asset is linked for use as a Sitelink.
// "MOBILE_APP" - The asset is linked for use as a Mobile App extension.
// "HOTEL_CALLOUT" - The asset is linked for use as a Hotel Callout
// extension.
// "CALL" - The asset is linked for use as a Call extension.
// "PRICE" - The asset is linked for use as a Price extension.
// "LONG_HEADLINE" - The asset is linked for use as a long headline.
// "BUSINESS_NAME" - The asset is linked for use as a business name.
// "SQUARE_MARKETING_IMAGE" - The asset is linked for use as a square
// marketing image.
// "PORTRAIT_MARKETING_IMAGE" - The asset is linked for use as a portrait
// marketing image.
// "LOGO" - The asset is linked for use as a logo.
// "LANDSCAPE_LOGO" - The asset is linked for use as a landscape logo.
// "VIDEO" - The asset is linked for use as a non YouTube logo.
// "CALL_TO_ACTION_SELECTION" - The asset is linked for use to select a
// call-to-action.
// "AD_IMAGE" - The asset is linked for use to select an ad image.
// "BUSINESS_LOGO" - The asset is linked for use as a business logo.
// "HOTEL_PROPERTY" - The asset is linked for use as a hotel property in a
// Performance Max for travel goals campaign.
// "DISCOVERY_CAROUSEL_CARD" - The asset is linked for use as a discovery
// carousel card.
ExcludedParentAssetFieldTypes []string `json:"excludedParentAssetFieldTypes,omitempty"`
// FinalUrlSuffix: Suffix used to append query parameters to landing pages that
// are served with parallel tracking.
FinalUrlSuffix string `json:"finalUrlSuffix,omitempty"`
// FrequencyCaps: A list that limits how often each user will see this
// campaign's ads.
FrequencyCaps []*GoogleAdsSearchads360V0Common__FrequencyCapEntry `json:"frequencyCaps,omitempty"`
// GeoTargetTypeSetting: The setting for ads geotargeting.
GeoTargetTypeSetting *GoogleAdsSearchads360V0ResourcesCampaignGeoTargetTypeSetting `json:"geoTargetTypeSetting,omitempty"`
// Id: Output only. The ID of the campaign.
Id int64 `json:"id,omitempty,string"`
// Labels: Output only. The resource names of labels attached to this campaign.
Labels []string `json:"labels,omitempty"`
// LastModifiedTime: Output only. The datetime when this campaign was last
// modified. The datetime is in the customer's time zone and in "yyyy-MM-dd
// HH:mm:ss.ssssss" format.
LastModifiedTime string `json:"lastModifiedTime,omitempty"`
// ManualCpa: Standard Manual CPA bidding strategy. Manual bidding strategy
// that allows advertiser to set the bid per advertiser-specified action.
// Supported only for Local Services campaigns.
ManualCpa *GoogleAdsSearchads360V0Common__ManualCpa `json:"manualCpa,omitempty"`
// ManualCpc: Standard Manual CPC bidding strategy. Manual click-based bidding
// where user pays per click.
ManualCpc *GoogleAdsSearchads360V0Common__ManualCpc `json:"manualCpc,omitempty"`
// ManualCpm: Standard Manual CPM bidding strategy. Manual impression-based
// bidding where user pays per thousand impressions.
ManualCpm *GoogleAdsSearchads360V0Common__ManualCpm `json:"manualCpm,omitempty"`
// MaximizeConversionValue: Standard Maximize Conversion Value bidding strategy
// that automatically sets bids to maximize revenue while spending your budget.
MaximizeConversionValue *GoogleAdsSearchads360V0Common__MaximizeConversionValue `json:"maximizeConversionValue,omitempty"`
// MaximizeConversions: Standard Maximize Conversions bidding strategy that
// automatically maximizes number of conversions while spending your budget.
MaximizeConversions *GoogleAdsSearchads360V0Common__MaximizeConversions `json:"maximizeConversions,omitempty"`
// Name: The name of the campaign. This field is required and should not be
// empty when creating new campaigns. It must not contain any null (code point
// 0x0), NL line feed (code point 0xA) or carriage return (code point 0xD)
// characters.
Name string `json:"name,omitempty"`
// NetworkSettings: The network settings for the campaign.
NetworkSettings *GoogleAdsSearchads360V0ResourcesCampaignNetworkSettings `json:"networkSettings,omitempty"`
// OptimizationGoalSetting: Optimization goal setting for this campaign, which
// includes a set of optimization goal types.
OptimizationGoalSetting *GoogleAdsSearchads360V0ResourcesCampaignOptimizationGoalSetting `json:"optimizationGoalSetting,omitempty"`
// PercentCpc: Standard Percent Cpc bidding strategy where bids are a fraction
// of the advertised price for some good or service.
PercentCpc *GoogleAdsSearchads360V0Common__PercentCpc `json:"percentCpc,omitempty"`
// RealTimeBiddingSetting: Settings for Real-Time Bidding, a feature only
// available for campaigns targeting the Ad Exchange network.
RealTimeBiddingSetting *GoogleAdsSearchads360V0Common__RealTimeBiddingSetting `json:"realTimeBiddingSetting,omitempty"`
// ResourceName: Immutable. The resource name of the campaign. Campaign
// resource names have the form:
// `customers/{customer_id}/campaigns/{campaign_id}`
ResourceName string `json:"resourceName,omitempty"`
// SelectiveOptimization: Selective optimization setting for this campaign,
// which includes a set of conversion actions to optimize this campaign
// towards. This feature only applies to app campaigns that use MULTI_CHANNEL
// as AdvertisingChannelType and APP_CAMPAIGN or APP_CAMPAIGN_FOR_ENGAGEMENT as
// AdvertisingChannelSubType.
SelectiveOptimization *GoogleAdsSearchads360V0ResourcesCampaignSelectiveOptimization `json:"selectiveOptimization,omitempty"`
// ServingStatus: Output only. The ad serving status of the campaign.
//
// Possible values:
// "UNSPECIFIED" - No value has been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "SERVING" - Serving.
// "NONE" - None.
// "ENDED" - Ended.
// "PENDING" - Pending.
// "SUSPENDED" - Suspended.
ServingStatus string `json:"servingStatus,omitempty"`
// ShoppingSetting: The setting for controlling Shopping campaigns.
ShoppingSetting *GoogleAdsSearchads360V0ResourcesCampaignShoppingSetting `json:"shoppingSetting,omitempty"`
// StartDate: The date when campaign started in serving customer's timezone in
// YYYY-MM-DD format.
StartDate string `json:"startDate,omitempty"`
// Status: The status of the campaign. When a new campaign is added, the status
// defaults to ENABLED.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ENABLED" - Campaign is active and can show ads.
// "PAUSED" - Campaign has been paused by the user.
// "REMOVED" - Campaign has been removed.
Status string `json:"status,omitempty"`
// TargetCpa: Standard Target CPA bidding strategy that automatically sets bids
// to help get as many conversions as possible at the target
// cost-per-acquisition (CPA) you set.
TargetCpa *GoogleAdsSearchads360V0Common__TargetCpa `json:"targetCpa,omitempty"`
// TargetCpm: A bidding strategy that automatically optimizes cost per thousand
// impressions.
TargetCpm *GoogleAdsSearchads360V0Common__TargetCpm `json:"targetCpm,omitempty"`
// TargetImpressionShare: Target Impression Share bidding strategy. An
// automated bidding strategy that sets bids to achieve a chosen percentage of
// impressions.
TargetImpressionShare *GoogleAdsSearchads360V0Common__TargetImpressionShare `json:"targetImpressionShare,omitempty"`
// TargetRoas: Standard Target ROAS bidding strategy that automatically
// maximizes revenue while averaging a specific target return on ad spend
// (ROAS).
TargetRoas *GoogleAdsSearchads360V0Common__TargetRoas `json:"targetRoas,omitempty"`
// TargetSpend: Standard Target Spend bidding strategy that automatically sets
// your bids to help get as many clicks as possible within your budget.
TargetSpend *GoogleAdsSearchads360V0Common__TargetSpend `json:"targetSpend,omitempty"`
// TrackingSetting: Output only. Campaign-level settings for tracking
// information.
TrackingSetting *GoogleAdsSearchads360V0ResourcesCampaignTrackingSetting `json:"trackingSetting,omitempty"`
// TrackingUrlTemplate: The URL template for constructing a tracking URL.
TrackingUrlTemplate string `json:"trackingUrlTemplate,omitempty"`
// UrlCustomParameters: The list of mappings used to substitute custom
// parameter tags in a `tracking_url_template`, `final_urls`, or
// `mobile_final_urls`.
UrlCustomParameters []*GoogleAdsSearchads360V0Common__CustomParameter `json:"urlCustomParameters,omitempty"`
// UrlExpansionOptOut: Represents opting out of URL expansion to more targeted
// URLs. If opted out (true), only the final URLs in the asset group or URLs
// specified in the advertiser's Google Merchant Center or business data feeds
// are targeted. If opted in (false), the entire domain will be targeted. This
// field can only be set for Performance Max campaigns, where the default value
// is false.
UrlExpansionOptOut bool `json:"urlExpansionOptOut,omitempty"`
// ForceSendFields is a list of field names (e.g. "AccessibleBiddingStrategy")
// to unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AccessibleBiddingStrategy") to
// include in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__Campaign) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__Campaign
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__CampaignAsset: A link between a Campaign
// and an Asset.
type GoogleAdsSearchads360V0Resources__CampaignAsset struct {
// Asset: Immutable. The asset which is linked to the campaign.
Asset string `json:"asset,omitempty"`
// Campaign: Immutable. The campaign to which the asset is linked.
Campaign string `json:"campaign,omitempty"`
// ResourceName: Immutable. The resource name of the campaign asset.
// CampaignAsset resource names have the form:
// `customers/{customer_id}/campaignAssets/{campaign_id}~{asset_id}~{field_type}
// `
ResourceName string `json:"resourceName,omitempty"`
// Status: Output only. Status of the campaign asset.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ENABLED" - Asset link is enabled.
// "REMOVED" - Asset link has been removed.
// "PAUSED" - Asset link is paused.
Status string `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "Asset") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Asset") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__CampaignAsset) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__CampaignAsset
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__CampaignAssetSet: CampaignAssetSet is the
// linkage between a campaign and an asset set. Adding a CampaignAssetSet links
// an asset set with a campaign.
type GoogleAdsSearchads360V0Resources__CampaignAssetSet struct {
// AssetSet: Immutable. The asset set which is linked to the campaign.
AssetSet string `json:"assetSet,omitempty"`
// Campaign: Immutable. The campaign to which this asset set is linked.
Campaign string `json:"campaign,omitempty"`
// ResourceName: Immutable. The resource name of the campaign asset set. Asset
// set asset resource names have the form:
// `customers/{customer_id}/campaignAssetSets/{campaign_id}~{asset_set_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: Output only. The status of the campaign asset set asset. Read-only.
//
// Possible values:
// "UNSPECIFIED" - The status has not been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "ENABLED" - The linkage between asset set and its container is enabled.
// "REMOVED" - The linkage between asset set and its container is removed.
Status string `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "AssetSet") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AssetSet") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__CampaignAssetSet) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__CampaignAssetSet
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__CampaignAudienceView: A campaign audience
// view. Includes performance data from interests and remarketing lists for
// Display Network and YouTube Network ads, and remarketing lists for search
// ads (RLSA), aggregated by campaign and audience criterion. This view only
// includes audiences attached at the campaign level.
type GoogleAdsSearchads360V0Resources__CampaignAudienceView struct {
// ResourceName: Output only. The resource name of the campaign audience view.
// Campaign audience view resource names have the form:
// `customers/{customer_id}/campaignAudienceViews/{campaign_id}~{criterion_id}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "ResourceName") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ResourceName") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__CampaignAudienceView) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__CampaignAudienceView
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__CampaignBudget: A campaign budget.
type GoogleAdsSearchads360V0Resources__CampaignBudget struct {
// AmountMicros: The amount of the budget, in the local currency for the
// account. Amount is specified in micros, where one million is equivalent to
// one currency unit. Monthly spend is capped at 30.4 times this amount.
AmountMicros int64 `json:"amountMicros,omitempty,string"`
// DeliveryMethod: The delivery method that determines the rate at which the
// campaign budget is spent. Defaults to STANDARD if unspecified in a create
// operation.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "STANDARD" - The budget server will throttle serving evenly across the
// entire time period.
// "ACCELERATED" - The budget server will not throttle serving, and ads will
// serve as fast as possible.
DeliveryMethod string `json:"deliveryMethod,omitempty"`
// Period: Immutable. Period over which to spend the budget. Defaults to DAILY
// if not specified.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "DAILY" - Daily budget.
// "FIXED_DAILY" - Fixed daily budget.
// "CUSTOM_PERIOD" - Custom budget can be used with total_amount to specify
// lifetime budget limit.
Period string `json:"period,omitempty"`
// ResourceName: Immutable. The resource name of the campaign budget. Campaign
// budget resource names have the form:
// `customers/{customer_id}/campaignBudgets/{campaign_budget_id}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "AmountMicros") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AmountMicros") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__CampaignBudget) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__CampaignBudget
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__CampaignCriterion: A campaign criterion.
type GoogleAdsSearchads360V0Resources__CampaignCriterion struct {
// AgeRange: Immutable. Age range.
AgeRange *GoogleAdsSearchads360V0Common__AgeRangeInfo `json:"ageRange,omitempty"`
// BidModifier: The modifier for the bids when the criterion matches. The
// modifier must be in the range: 0.1 - 10.0. Most targetable criteria types
// support modifiers. Use 0 to opt out of a Device type.
BidModifier float64 `json:"bidModifier,omitempty"`
// CriterionId: Output only. The ID of the criterion. This field is ignored
// during mutate.
CriterionId int64 `json:"criterionId,omitempty,string"`
// Device: Immutable. Device.
Device *GoogleAdsSearchads360V0Common__DeviceInfo `json:"device,omitempty"`
// DisplayName: Output only. The display name of the criterion. This field is
// ignored for mutates.
DisplayName string `json:"displayName,omitempty"`
// Gender: Immutable. Gender.
Gender *GoogleAdsSearchads360V0Common__GenderInfo `json:"gender,omitempty"`
// Keyword: Immutable. Keyword.
Keyword *GoogleAdsSearchads360V0Common__KeywordInfo `json:"keyword,omitempty"`
// Language: Immutable. Language.
Language *GoogleAdsSearchads360V0Common__LanguageInfo `json:"language,omitempty"`
// LastModifiedTime: Output only. The datetime when this campaign criterion was
// last modified. The datetime is in the customer's time zone and in
// "yyyy-MM-dd HH:mm:ss.ssssss" format.
LastModifiedTime string `json:"lastModifiedTime,omitempty"`
// Location: Immutable. Location.
Location *GoogleAdsSearchads360V0Common__LocationInfo `json:"location,omitempty"`
// LocationGroup: Immutable. Location Group
LocationGroup *GoogleAdsSearchads360V0Common__LocationGroupInfo `json:"locationGroup,omitempty"`
// Negative: Immutable. Whether to target (`false`) or exclude (`true`) the
// criterion.
Negative bool `json:"negative,omitempty"`
// ResourceName: Immutable. The resource name of the campaign criterion.
// Campaign criterion resource names have the form:
// `customers/{customer_id}/campaignCriteria/{campaign_id}~{criterion_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: The status of the criterion.
//
// Possible values:
// "UNSPECIFIED" - No value has been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "ENABLED" - The campaign criterion is enabled.
// "PAUSED" - The campaign criterion is paused.
// "REMOVED" - The campaign criterion is removed.
Status string `json:"status,omitempty"`
// Type: Output only. The type of the criterion.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "KEYWORD" - Keyword, for example, 'mars cruise'.
// "PLACEMENT" - Placement, also known as Website, for example,
// 'www.flowers4sale.com'
// "MOBILE_APP_CATEGORY" - Mobile application categories to target.
// "MOBILE_APPLICATION" - Mobile applications to target.
// "DEVICE" - Devices to target.
// "LOCATION" - Locations to target.
// "LISTING_GROUP" - Listing groups to target.
// "AD_SCHEDULE" - Ad Schedule.
// "AGE_RANGE" - Age range.
// "GENDER" - Gender.
// "INCOME_RANGE" - Income Range.
// "PARENTAL_STATUS" - Parental status.
// "YOUTUBE_VIDEO" - YouTube Video.
// "YOUTUBE_CHANNEL" - YouTube Channel.
// "USER_LIST" - User list.
// "PROXIMITY" - Proximity.
// "TOPIC" - A topic target on the display network (for example, "Pets &
// Animals").
// "LISTING_SCOPE" - Listing scope to target.
// "LANGUAGE" - Language.
// "IP_BLOCK" - IpBlock.
// "CONTENT_LABEL" - Content Label for category exclusion.
// "CARRIER" - Carrier.
// "USER_INTEREST" - A category the user is interested in.
// "WEBPAGE" - Webpage criterion for dynamic search ads.
// "OPERATING_SYSTEM_VERSION" - Operating system version.
// "APP_PAYMENT_MODEL" - App payment model.
// "MOBILE_DEVICE" - Mobile device.
// "CUSTOM_AFFINITY" - Custom affinity.
// "CUSTOM_INTENT" - Custom intent.
// "LOCATION_GROUP" - Location group.
// "CUSTOM_AUDIENCE" - Custom audience
// "COMBINED_AUDIENCE" - Combined audience
// "KEYWORD_THEME" - Smart Campaign keyword theme
// "AUDIENCE" - Audience
// "LOCAL_SERVICE_ID" - Local Services Ads Service ID.
// "BRAND" - Brand
// "BRAND_LIST" - Brand List
// "LIFE_EVENT" - Life Event
Type string `json:"type,omitempty"`
// UserList: Immutable. User List.
UserList *GoogleAdsSearchads360V0Common__UserListInfo `json:"userList,omitempty"`
// Webpage: Immutable. Webpage.
Webpage *GoogleAdsSearchads360V0Common__WebpageInfo `json:"webpage,omitempty"`
// ForceSendFields is a list of field names (e.g. "AgeRange") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AgeRange") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__CampaignCriterion) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__CampaignCriterion
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
func (s *GoogleAdsSearchads360V0Resources__CampaignCriterion) UnmarshalJSON(data []byte) error {
type NoMethod GoogleAdsSearchads360V0Resources__CampaignCriterion
var s1 struct {
BidModifier gensupport.JSONFloat64 `json:"bidModifier"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.BidModifier = float64(s1.BidModifier)
return nil
}
// GoogleAdsSearchads360V0Resources__CampaignLabel: Represents a relationship
// between a campaign and a label.
type GoogleAdsSearchads360V0Resources__CampaignLabel struct {
// Campaign: Immutable. The campaign to which the label is attached.
Campaign string `json:"campaign,omitempty"`
// Label: Immutable. The label assigned to the campaign.
Label string `json:"label,omitempty"`
// ResourceName: Immutable. Name of the resource. Campaign label resource names
// have the form:
// `customers/{customer_id}/campaignLabels/{campaign_id}~{label_id}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "Campaign") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Campaign") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__CampaignLabel) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__CampaignLabel
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__CartDataSalesView: Cart data sales view.
type GoogleAdsSearchads360V0Resources__CartDataSalesView struct {
// ResourceName: Output only. The resource name of the Cart data sales view.
// Cart data sales view resource names have the form:
// `customers/{customer_id}/cartDataSalesView`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "ResourceName") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ResourceName") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__CartDataSalesView) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__CartDataSalesView
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__Conversion: A conversion.
type GoogleAdsSearchads360V0Resources__Conversion struct {
// AdId: Output only. Ad ID. A value of 0 indicates that the ad is
// unattributed.
AdId int64 `json:"adId,omitempty,string"`
// AdvertiserConversionId: Output only. For offline conversions, this is an ID
// provided by advertisers. If an advertiser doesn't specify such an ID, Search
// Ads 360 generates one. For online conversions, this is equal to the id
// column or the floodlight_order_id column depending on the advertiser's
// Floodlight instructions.
AdvertiserConversionId string `json:"advertiserConversionId,omitempty"`
// AssetFieldType: Output only. Asset field type of the conversion event.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "HEADLINE" - The asset is linked for use as a headline.
// "DESCRIPTION" - The asset is linked for use as a description.
// "MANDATORY_AD_TEXT" - The asset is linked for use as mandatory ad text.
// "MARKETING_IMAGE" - The asset is linked for use as a marketing image.
// "MEDIA_BUNDLE" - The asset is linked for use as a media bundle.
// "YOUTUBE_VIDEO" - The asset is linked for use as a YouTube video.
// "BOOK_ON_GOOGLE" - The asset is linked to indicate that a hotels campaign
// is "Book on Google" enabled.
// "LEAD_FORM" - The asset is linked for use as a Lead Form extension.
// "PROMOTION" - The asset is linked for use as a Promotion extension.
// "CALLOUT" - The asset is linked for use as a Callout extension.
// "STRUCTURED_SNIPPET" - The asset is linked for use as a Structured Snippet
// extension.
// "SITELINK" - The asset is linked for use as a Sitelink.
// "MOBILE_APP" - The asset is linked for use as a Mobile App extension.
// "HOTEL_CALLOUT" - The asset is linked for use as a Hotel Callout
// extension.
// "CALL" - The asset is linked for use as a Call extension.
// "PRICE" - The asset is linked for use as a Price extension.
// "LONG_HEADLINE" - The asset is linked for use as a long headline.
// "BUSINESS_NAME" - The asset is linked for use as a business name.
// "SQUARE_MARKETING_IMAGE" - The asset is linked for use as a square
// marketing image.
// "PORTRAIT_MARKETING_IMAGE" - The asset is linked for use as a portrait
// marketing image.
// "LOGO" - The asset is linked for use as a logo.
// "LANDSCAPE_LOGO" - The asset is linked for use as a landscape logo.
// "VIDEO" - The asset is linked for use as a non YouTube logo.
// "CALL_TO_ACTION_SELECTION" - The asset is linked for use to select a
// call-to-action.
// "AD_IMAGE" - The asset is linked for use to select an ad image.
// "BUSINESS_LOGO" - The asset is linked for use as a business logo.
// "HOTEL_PROPERTY" - The asset is linked for use as a hotel property in a
// Performance Max for travel goals campaign.
// "DISCOVERY_CAROUSEL_CARD" - The asset is linked for use as a discovery
// carousel card.
AssetFieldType string `json:"assetFieldType,omitempty"`
// AssetId: Output only. ID of the asset which was interacted with during the
// conversion event.
AssetId int64 `json:"assetId,omitempty,string"`
// AttributionType: Output only. What the conversion is attributed to: Visit or
// Keyword+Ad.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "VISIT" - The conversion is attributed to a visit.
// "CRITERION_AD" - The conversion is attributed to a criterion and ad pair.
AttributionType string `json:"attributionType,omitempty"`
// ClickId: Output only. A unique string, for the visit that the conversion is
// attributed to, that is passed to the landing page as the click id URL
// parameter.
ClickId string `json:"clickId,omitempty"`
// ConversionDateTime: Output only. The timestamp of the conversion event.
ConversionDateTime string `json:"conversionDateTime,omitempty"`
// ConversionLastModifiedDateTime: Output only. The timestamp of the last time
// the conversion was modified.
ConversionLastModifiedDateTime string `json:"conversionLastModifiedDateTime,omitempty"`
// ConversionQuantity: Output only. The quantity of items recorded by the
// conversion, as determined by the qty url parameter. The advertiser is
// responsible for dynamically populating the parameter (such as number of
// items sold in the conversion), otherwise it defaults to 1.
ConversionQuantity int64 `json:"conversionQuantity,omitempty,string"`
// ConversionRevenueMicros: Output only. The adjusted revenue in micros for the
// conversion event. This will always be in the currency of the serving
// account.
ConversionRevenueMicros int64 `json:"conversionRevenueMicros,omitempty,string"`
// ConversionVisitDateTime: Output only. The timestamp of the visit that the
// conversion is attributed to.
ConversionVisitDateTime string `json:"conversionVisitDateTime,omitempty"`
// CriterionId: Output only. Search Ads 360 criterion ID. A value of 0
// indicates that the criterion is unattributed.
CriterionId int64 `json:"criterionId,omitempty,string"`
// FloodlightOrderId: Output only. The Floodlight order ID provided by the
// advertiser for the conversion.
FloodlightOrderId string `json:"floodlightOrderId,omitempty"`
// FloodlightOriginalRevenue: Output only. The original, unchanged revenue
// associated with the Floodlight event (in the currency of the current
// report), before Floodlight currency instruction modifications.
FloodlightOriginalRevenue int64 `json:"floodlightOriginalRevenue,omitempty,string"`
// Id: Output only. The ID of the conversion
Id int64 `json:"id,omitempty,string"`
// MerchantId: Output only. The SearchAds360 inventory account ID containing
// the product that was clicked on. SearchAds360 generates this ID when you
// link an inventory account in SearchAds360.
MerchantId int64 `json:"merchantId,omitempty,string"`
// ProductChannel: Output only. The sales channel of the product that was
// clicked on: Online or Local.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ONLINE" - The item is sold online.
// "LOCAL" - The item is sold in local stores.
ProductChannel string `json:"productChannel,omitempty"`
// ProductCountryCode: Output only. The country (ISO-3166-format) registered
// for the inventory feed that contains the product clicked on.
ProductCountryCode string `json:"productCountryCode,omitempty"`
// ProductId: Output only. The ID of the product clicked on.
ProductId string `json:"productId,omitempty"`
// ProductLanguageCode: Output only. The language (ISO-639-1) that has been set
// for the Merchant Center feed containing data about the product.
ProductLanguageCode string `json:"productLanguageCode,omitempty"`
// ProductStoreId: Output only. The store in the Local Inventory Ad that was
// clicked on. This should match the store IDs used in your local products
// feed.
ProductStoreId string `json:"productStoreId,omitempty"`
// ResourceName: Output only. The resource name of the conversion. Conversion
// resource names have the form:
// `customers/{customer_id}/conversions/{ad_group_id}~{criterion_id}~{ds_convers
// ion_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: Output only. The status of the conversion, either ENABLED or
// REMOVED..
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ENABLED" - The conversion is enabled.
// "REMOVED" - The conversion has been removed.
Status string `json:"status,omitempty"`
// VisitId: Output only. The SearchAds360 visit ID that the conversion is
// attributed to.
VisitId int64 `json:"visitId,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "AdId") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdId") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__Conversion) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__Conversion
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__ConversionAction: A conversion action.
type GoogleAdsSearchads360V0Resources__ConversionAction struct {
// AppId: App ID for an app conversion action.
AppId string `json:"appId,omitempty"`
// AttributionModelSettings: Settings related to this conversion action's
// attribution model.
AttributionModelSettings *GoogleAdsSearchads360V0ResourcesConversionActionAttributionModelSettings `json:"attributionModelSettings,omitempty"`
// Category: The category of conversions reported for this conversion action.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "DEFAULT" - Default category.
// "PAGE_VIEW" - User visiting a page.
// "PURCHASE" - Purchase, sales, or "order placed" event.
// "SIGNUP" - Signup user action.
// "LEAD" - Lead-generating action.
// "DOWNLOAD" - Software download action (as for an app).
// "ADD_TO_CART" - The addition of items to a shopping cart or bag on an
// advertiser site.
// "BEGIN_CHECKOUT" - When someone enters the checkout flow on an advertiser
// site.
// "SUBSCRIBE_PAID" - The start of a paid subscription for a product or
// service.
// "PHONE_CALL_LEAD" - A call to indicate interest in an advertiser's
// offering.
// "IMPORTED_LEAD" - A lead conversion imported from an external source into
// Google Ads.
// "SUBMIT_LEAD_FORM" - A submission of a form on an advertiser site
// indicating business interest.
// "BOOK_APPOINTMENT" - A booking of an appointment with an advertiser's
// business.
// "REQUEST_QUOTE" - A quote or price estimate request.
// "GET_DIRECTIONS" - A search for an advertiser's business location with
// intention to visit.
// "OUTBOUND_CLICK" - A click to an advertiser's partner's site.
// "CONTACT" - A call, SMS, email, chat or other type of contact to an
// advertiser.
// "ENGAGEMENT" - A website engagement event such as long site time or a
// Google Analytics (GA) Smart Goal. Intended to be used for GA, Firebase, GA
// Gold goal imports.
// "STORE_VISIT" - A visit to a physical store location.
// "STORE_SALE" - A sale occurring in a physical store.
// "QUALIFIED_LEAD" - A lead conversion imported from an external source into
// Google Ads, that has been further qualified by the advertiser
// (marketing/sales team). In the lead-to-sale journey, advertisers get leads,
// then act on them by reaching out to the consumer. If the consumer is
// interested and may end up buying their product, the advertiser marks such
// leads as "qualified leads".
// "CONVERTED_LEAD" - A lead conversion imported from an external source into
// Google Ads, that has further completed a chosen stage as defined by the lead
// gen advertiser.
Category string `json:"category,omitempty"`
// ClickThroughLookbackWindowDays: The maximum number of days that may elapse
// between an interaction (for example, a click) and a conversion event.
ClickThroughLookbackWindowDays int64 `json:"clickThroughLookbackWindowDays,omitempty,string"`
// CreationTime: Output only. Timestamp of the Floodlight activity's creation,
// formatted in ISO 8601.
CreationTime string `json:"creationTime,omitempty"`
// FloodlightSettings: Output only. Floodlight settings for Floodlight
// conversion types.
FloodlightSettings *GoogleAdsSearchads360V0ResourcesConversionActionFloodlightSettings `json:"floodlightSettings,omitempty"`
// Id: Output only. The ID of the conversion action.
Id int64 `json:"id,omitempty,string"`
// IncludeInClientAccountConversionsMetric: Whether this conversion action
// should be included in the "client_account_conversions" metric.
IncludeInClientAccountConversionsMetric bool `json:"includeInClientAccountConversionsMetric,omitempty"`
// IncludeInConversionsMetric: Output only. Whether this conversion action
// should be included in the "conversions" metric.
IncludeInConversionsMetric bool `json:"includeInConversionsMetric,omitempty"`
// Name: The name of the conversion action. This field is required and should
// not be empty when creating new conversion actions.
Name string `json:"name,omitempty"`
// OwnerCustomer: Output only. The resource name of the conversion action owner
// customer, or null if this is a system-defined conversion action.
OwnerCustomer string `json:"ownerCustomer,omitempty"`
// PrimaryForGoal: If a conversion action's primary_for_goal bit is false, the
// conversion action is non-biddable for all campaigns regardless of their
// customer conversion goal or campaign conversion goal. However, custom
// conversion goals do not respect primary_for_goal, so if a campaign has a
// custom conversion goal configured with a primary_for_goal = false conversion
// action, that conversion action is still biddable. By default,
// primary_for_goal will be true if not set. In V9, primary_for_goal can only
// be set to false after creation through an 'update' operation because it's
// not declared as optional.
PrimaryForGoal bool `json:"primaryForGoal,omitempty"`
// ResourceName: Immutable. The resource name of the conversion action.
// Conversion action resource names have the form:
// `customers/{customer_id}/conversionActions/{conversion_action_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: The status of this conversion action for conversion event accrual.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ENABLED" - Conversions will be recorded.
// "REMOVED" - Conversions will not be recorded.
// "HIDDEN" - Conversions will not be recorded and the conversion action will
// not appear in the UI.
Status string `json:"status,omitempty"`
// Type: Immutable. The type of this conversion action.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "AD_CALL" - Conversions that occur when a user clicks on an ad's call
// extension.
// "CLICK_TO_CALL" - Conversions that occur when a user on a mobile device
// clicks a phone number.
// "GOOGLE_PLAY_DOWNLOAD" - Conversions that occur when a user downloads a
// mobile app from the Google Play Store.
// "GOOGLE_PLAY_IN_APP_PURCHASE" - Conversions that occur when a user makes a
// purchase in an app through Android billing.
// "UPLOAD_CALLS" - Call conversions that are tracked by the advertiser and
// uploaded.
// "UPLOAD_CLICKS" - Conversions that are tracked by the advertiser and
// uploaded with attributed clicks.
// "WEBPAGE" - Conversions that occur on a webpage.
// "WEBSITE_CALL" - Conversions that occur when a user calls a
// dynamically-generated phone number from an advertiser's website.
// "STORE_SALES_DIRECT_UPLOAD" - Store Sales conversion based on first-party
// or third-party merchant data uploads. Only customers on the allowlist can
// use store sales direct upload types.
// "STORE_SALES" - Store Sales conversion based on first-party or third-party
// merchant data uploads and/or from in-store purchases using cards from
// payment networks. Only customers on the allowlist can use store sales types.
// Read only.
// "FIREBASE_ANDROID_FIRST_OPEN" - Android app first open conversions tracked
// through Firebase.
// "FIREBASE_ANDROID_IN_APP_PURCHASE" - Android app in app purchase
// conversions tracked through Firebase.
// "FIREBASE_ANDROID_CUSTOM" - Android app custom conversions tracked through
// Firebase.
// "FIREBASE_IOS_FIRST_OPEN" - iOS app first open conversions tracked through
// Firebase.
// "FIREBASE_IOS_IN_APP_PURCHASE" - iOS app in app purchase conversions
// tracked through Firebase.
// "FIREBASE_IOS_CUSTOM" - iOS app custom conversions tracked through
// Firebase.
// "THIRD_PARTY_APP_ANALYTICS_ANDROID_FIRST_OPEN" - Android app first open
// conversions tracked through Third Party App Analytics.
// "THIRD_PARTY_APP_ANALYTICS_ANDROID_IN_APP_PURCHASE" - Android app in app
// purchase conversions tracked through Third Party App Analytics.
// "THIRD_PARTY_APP_ANALYTICS_ANDROID_CUSTOM" - Android app custom
// conversions tracked through Third Party App Analytics.
// "THIRD_PARTY_APP_ANALYTICS_IOS_FIRST_OPEN" - iOS app first open
// conversions tracked through Third Party App Analytics.
// "THIRD_PARTY_APP_ANALYTICS_IOS_IN_APP_PURCHASE" - iOS app in app purchase
// conversions tracked through Third Party App Analytics.
// "THIRD_PARTY_APP_ANALYTICS_IOS_CUSTOM" - iOS app custom conversions
// tracked through Third Party App Analytics.
// "ANDROID_APP_PRE_REGISTRATION" - Conversions that occur when a user
// pre-registers a mobile app from the Google Play Store. Read only.
// "ANDROID_INSTALLS_ALL_OTHER_APPS" - Conversions that track all Google Play
// downloads which aren't tracked by an app-specific type. Read only.
// "FLOODLIGHT_ACTION" - Floodlight activity that counts the number of times
// that users have visited a particular webpage after seeing or clicking on one
// of an advertiser's ads. Read only.
// "FLOODLIGHT_TRANSACTION" - Floodlight activity that tracks the number of
// sales made or the number of items purchased. Can also capture the total
// value of each sale. Read only.
// "GOOGLE_HOSTED" - Conversions that track local actions from Google's
// products and services after interacting with an ad. Read only.
// "LEAD_FORM_SUBMIT" - Conversions reported when a user submits a lead form.
// Read only.
// "SALESFORCE" - Conversions that come from Salesforce. Read only.
// "SEARCH_ADS_360" - Conversions imported from Search Ads 360 Floodlight
// data. Read only.
// "SMART_CAMPAIGN_AD_CLICKS_TO_CALL" - Call conversions that occur on Smart
// campaign Ads without call tracking setup, using Smart campaign custom
// criteria. Read only.
// "SMART_CAMPAIGN_MAP_CLICKS_TO_CALL" - The user clicks on a call element
// within Google Maps. Smart campaign only. Read only.
// "SMART_CAMPAIGN_MAP_DIRECTIONS" - The user requests directions to a
// business location within Google Maps. Smart campaign only. Read only.
// "SMART_CAMPAIGN_TRACKED_CALLS" - Call conversions that occur on Smart
// campaign Ads with call tracking setup, using Smart campaign custom criteria.
// Read only.
// "STORE_VISITS" - Conversions that occur when a user visits an advertiser's
// retail store. Read only.
// "WEBPAGE_CODELESS" - Conversions created from website events (such as form
// submissions or page loads), that don't use individually coded event
// snippets. Read only.
// "UNIVERSAL_ANALYTICS_GOAL" - Conversions that come from linked Universal
// Analytics goals.
// "UNIVERSAL_ANALYTICS_TRANSACTION" - Conversions that come from linked
// Universal Analytics transactions.
// "GOOGLE_ANALYTICS_4_CUSTOM" - Conversions that come from linked Google
// Analytics 4 custom event conversions.
// "GOOGLE_ANALYTICS_4_PURCHASE" - Conversions that come from linked Google
// Analytics 4 purchase conversions.
Type string `json:"type,omitempty"`
// ValueSettings: Settings related to the value for conversion events
// associated with this conversion action.
ValueSettings *GoogleAdsSearchads360V0ResourcesConversionActionValueSettings `json:"valueSettings,omitempty"`
// ForceSendFields is a list of field names (e.g. "AppId") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AppId") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__ConversionAction) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__ConversionAction
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__ConversionCustomVariable: A conversion
// custom variable. See "About custom Floodlight metrics and dimensions in the
// new Search Ads 360" at https://support.google.com/sa360/answer/13567857
type GoogleAdsSearchads360V0Resources__ConversionCustomVariable struct {
// Cardinality: Output only. Cardinality of the conversion custom variable.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "BELOW_ALL_LIMITS" - The conversion custom variable has cardinality below
// all limits. The variable can be used for segmentation, and stats can accrue
// for new values if the variable is enabled.
// "EXCEEDS_SEGMENTATION_LIMIT_BUT_NOT_STATS_LIMIT" - The conversion custom
// variable has cardinality that exceeds the segmentation limit, but does not
// exceed the stats limit. Segmentation will be disabled, but stats can accrue
// for new values if the variable is enabled.
// "APPROACHES_STATS_LIMIT" - The conversion custom variable has exceeded the
// segmentation limits, and is approaching the stats limits (> 90%).
// Segmentation will be disabled, but stats can accrue for new values if the
// variable is enabled.
// "EXCEEDS_STATS_LIMIT" - The conversion custom variable has exceeded both
// the segmentation limits and stats limits. Segmentation will be disabled, and
// stats for enabled variables can accrue only if the existing values do not
// increase the cardinality of the variable any further.
Cardinality string `json:"cardinality,omitempty"`
// CustomColumnIds: Output only. The IDs of custom columns that use this
// conversion custom variable.
CustomColumnIds googleapi.Int64s `json:"customColumnIds,omitempty"`
// Family: Output only. Family of the conversion custom variable.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "STANDARD" - The standard conversion custom variable. Customers are
// required to activate before use.
// "FLOODLIGHT" - The conversion custom variable imported from a custom
// floodlight variable.
Family string `json:"family,omitempty"`
// FloodlightConversionCustomVariableInfo: Output only. Fields for Search Ads
// 360 floodlight conversion custom variables.
FloodlightConversionCustomVariableInfo *GoogleAdsSearchads360V0ResourcesConversionCustomVariableFloodlightConversionCustomVariableInfo `json:"floodlightConversionCustomVariableInfo,omitempty"`
// Id: Output only. The ID of the conversion custom variable.
Id int64 `json:"id,omitempty,string"`
// Name: Required. The name of the conversion custom variable. Name should be
// unique. The maximum length of name is 100 characters. There should not be
// any extra spaces before and after.
Name string `json:"name,omitempty"`
// OwnerCustomer: Output only. The resource name of the customer that owns the
// conversion custom variable.
OwnerCustomer string `json:"ownerCustomer,omitempty"`
// ResourceName: Immutable. The resource name of the conversion custom
// variable. Conversion custom variable resource names have the form:
// `customers/{customer_id}/conversionCustomVariables/{conversion_custom_variabl
// e_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: The status of the conversion custom variable for conversion event
// accrual.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ACTIVATION_NEEDED" - The conversion custom variable is pending activation
// and will not accrue stats until set to ENABLED. This status can't be used in
// CREATE and UPDATE requests.
// "ENABLED" - The conversion custom variable is enabled and will accrue
// stats.
// "PAUSED" - The conversion custom variable is paused and will not accrue
// stats until set to ENABLED again.
Status string `json:"status,omitempty"`
// Tag: Required. Immutable. The tag of the conversion custom variable. Tag
// should be unique and consist of a "u" character directly followed with a
// number less than ormequal to 100. For example: "u4".
Tag string `json:"tag,omitempty"`
// ForceSendFields is a list of field names (e.g. "Cardinality") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Cardinality") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__ConversionCustomVariable) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__ConversionCustomVariable
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__ConversionTrackingSetting: A collection of
// customer-wide settings related to Search Ads 360 Conversion Tracking.
type GoogleAdsSearchads360V0Resources__ConversionTrackingSetting struct {
// AcceptedCustomerDataTerms: Output only. Whether the customer has accepted
// customer data terms. If using cross-account conversion tracking, this value
// is inherited from the manager. This field is read-only. For more
// information, see https://support.google.com/adspolicy/answer/7475709.
AcceptedCustomerDataTerms bool `json:"acceptedCustomerDataTerms,omitempty"`
// ConversionTrackingId: Output only. The conversion tracking id used for this
// account. This id doesn't indicate whether the customer uses conversion
// tracking (conversion_tracking_status does). This field is read-only.
ConversionTrackingId int64 `json:"conversionTrackingId,omitempty,string"`
// ConversionTrackingStatus: Output only. Conversion tracking status. It
// indicates whether the customer is using conversion tracking, and who is the
// conversion tracking owner of this customer. If this customer is using
// cross-account conversion tracking, the value returned will differ based on
// the `login-customer-id` of the request.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "NOT_CONVERSION_TRACKED" - Customer does not use any conversion tracking.
// "CONVERSION_TRACKING_MANAGED_BY_SELF" - The conversion actions are created
// and managed by this customer.
// "CONVERSION_TRACKING_MANAGED_BY_THIS_MANAGER" - The conversion actions are
// created and managed by the manager specified in the request's
// `login-customer-id`.
// "CONVERSION_TRACKING_MANAGED_BY_ANOTHER_MANAGER" - The conversion actions
// are created and managed by a manager different from the customer or manager
// specified in the request's `login-customer-id`.
ConversionTrackingStatus string `json:"conversionTrackingStatus,omitempty"`
// CrossAccountConversionTrackingId: Output only. The conversion tracking id of
// the customer's manager. This is set when the customer is opted into
// cross-account conversion tracking, and it overrides conversion_tracking_id.
CrossAccountConversionTrackingId int64 `json:"crossAccountConversionTrackingId,omitempty,string"`
// EnhancedConversionsForLeadsEnabled: Output only. Whether the customer is
// opted-in for enhanced conversions for leads. If using cross-account
// conversion tracking, this value is inherited from the manager. This field is
// read-only.
EnhancedConversionsForLeadsEnabled bool `json:"enhancedConversionsForLeadsEnabled,omitempty"`
// GoogleAdsConversionCustomer: Output only. The resource name of the customer
// where conversions are created and managed. This field is read-only.
GoogleAdsConversionCustomer string `json:"googleAdsConversionCustomer,omitempty"`
// GoogleAdsCrossAccountConversionTrackingId: Output only. The conversion
// tracking id of the customer's manager. This is set when the customer is
// opted into conversion tracking, and it overrides conversion_tracking_id.
// This field can only be managed through the Google Ads UI. This field is
// read-only.
GoogleAdsCrossAccountConversionTrackingId int64 `json:"googleAdsCrossAccountConversionTrackingId,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "AcceptedCustomerDataTerms")
// to unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AcceptedCustomerDataTerms") to
// include in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__ConversionTrackingSetting) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__ConversionTrackingSetting
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__CustomColumn: A custom column. See Search
// Ads 360 custom column at https://support.google.com/sa360/answer/9633916
type GoogleAdsSearchads360V0Resources__CustomColumn struct {
// Description: Output only. User-defined description of the custom column.
Description string `json:"description,omitempty"`
// Id: Output only. ID of the custom column.
Id int64 `json:"id,omitempty,string"`
// Name: Output only. User-defined name of the custom column.
Name string `json:"name,omitempty"`
// Queryable: Output only. True when the custom column is available to be used
// in the query of SearchAds360Service.Search and
// SearchAds360Service.SearchStream.
Queryable bool `json:"queryable,omitempty"`
// ReferencedSystemColumns: Output only. The list of the referenced system
// columns of this custom column. For example, A custom column "sum of
// impressions and clicks" has referenced system columns of {"metrics.clicks",
// "metrics.impressions"}.
ReferencedSystemColumns []string `json:"referencedSystemColumns,omitempty"`
// ReferencesAttributes: Output only. True when the custom column is referring
// to one or more attributes.
ReferencesAttributes bool `json:"referencesAttributes,omitempty"`
// ReferencesMetrics: Output only. True when the custom column is referring to
// one or more metrics.
ReferencesMetrics bool `json:"referencesMetrics,omitempty"`
// ResourceName: Immutable. The resource name of the custom column. Custom
// column resource names have the form:
// `customers/{customer_id}/customColumns/{custom_column_id}`
ResourceName string `json:"resourceName,omitempty"`
// ValueType: Output only. The type of the result value of the custom column.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Unknown.
// "STRING" - The custom column value is a string.
// "INT64" - The custom column value is an int64 number.
// "DOUBLE" - The custom column value is a double number.
// "BOOLEAN" - The custom column value is a boolean.
ValueType string `json:"valueType,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. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
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. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__CustomColumn) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__CustomColumn
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__Customer: A customer.
type GoogleAdsSearchads360V0Resources__Customer struct {
// AccountStatus: Output only. Account status, for example, Enabled, Paused,
// Removed, etc.
//
// Possible values:
// "UNSPECIFIED" - Default value.
// "UNKNOWN" - Unknown value.
// "ENABLED" - Account is able to serve ads.
// "PAUSED" - Account is deactivated by the user.
// "SUSPENDED" - Account is deactivated by an internal process.
// "REMOVED" - Account is irrevocably deactivated.
// "DRAFT" - Account is still in the process of setup, not ENABLED yet.
AccountStatus string `json:"accountStatus,omitempty"`
// AccountType: Output only. Engine account type, for example, Google Ads,
// Microsoft Advertising, Yahoo Japan, Baidu, Facebook, Engine Track, etc.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "BAIDU" - Baidu account.
// "ENGINE_TRACK" - Engine track account.
// "FACEBOOK" - Facebook account.
// "FACEBOOK_GATEWAY" - Facebook account managed through gateway.
// "GOOGLE_ADS" - Google Ads account.
// "MICROSOFT" - Microsoft Advertising account.
// "SEARCH_ADS_360" - Search Ads 360 manager account.
// "YAHOO_JAPAN" - Yahoo Japan account.
AccountType string `json:"accountType,omitempty"`
// AutoTaggingEnabled: Whether auto-tagging is enabled for the customer.
AutoTaggingEnabled bool `json:"autoTaggingEnabled,omitempty"`
// ConversionTrackingSetting: Output only. Conversion tracking setting for a
// customer.
ConversionTrackingSetting *GoogleAdsSearchads360V0Resources__ConversionTrackingSetting `json:"conversionTrackingSetting,omitempty"`
// CreationTime: Output only. The timestamp when this customer was created. The
// timestamp is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss"
// format.
CreationTime string `json:"creationTime,omitempty"`
// CurrencyCode: Immutable. The currency in which the account operates. A
// subset of the currency codes from the ISO 4217 standard is supported.
CurrencyCode string `json:"currencyCode,omitempty"`
// DescriptiveName: Optional, non-unique descriptive name of the customer.
DescriptiveName string `json:"descriptiveName,omitempty"`
// DoubleClickCampaignManagerSetting: Output only. DoubleClick Campaign Manager
// (DCM) setting for a manager customer.
DoubleClickCampaignManagerSetting *GoogleAdsSearchads360V0Resources__DoubleClickCampaignManagerSetting `json:"doubleClickCampaignManagerSetting,omitempty"`
// EngineId: Output only. ID of the account in the external engine account.
EngineId string `json:"engineId,omitempty"`
// FinalUrlSuffix: The URL template for appending params to the final URL.
FinalUrlSuffix string `json:"finalUrlSuffix,omitempty"`
// Id: Output only. The ID of the customer.
Id int64 `json:"id,omitempty,string"`
// LastModifiedTime: Output only. The datetime when this customer was last
// modified. The datetime is in the customer's time zone and in "yyyy-MM-dd
// HH:mm:ss.ssssss" format.
LastModifiedTime string `json:"lastModifiedTime,omitempty"`
// Manager: Output only. Whether the customer is a manager.
Manager bool `json:"manager,omitempty"`
// ResourceName: Immutable. The resource name of the customer. Customer
// resource names have the form: `customers/{customer_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: Output only. The status of the customer.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ENABLED" - Indicates an active account able to serve ads.
// "CANCELED" - Indicates a canceled account unable to serve ads. Can be
// reactivated by an admin user.
// "SUSPENDED" - Indicates a suspended account unable to serve ads. May only
// be activated by Google support.
// "CLOSED" - Indicates a closed account unable to serve ads. Test account
// will also have CLOSED status. Status is permanent and may not be reopened.
Status string `json:"status,omitempty"`
// TimeZone: Immutable. The local timezone ID of the customer.
TimeZone string `json:"timeZone,omitempty"`
// TrackingUrlTemplate: The URL template for constructing a tracking URL out of
// parameters.
TrackingUrlTemplate string `json:"trackingUrlTemplate,omitempty"`
// ForceSendFields is a list of field names (e.g. "AccountStatus") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AccountStatus") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__Customer) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__Customer
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__CustomerAsset: A link between a customer
// and an asset.
type GoogleAdsSearchads360V0Resources__CustomerAsset struct {
// Asset: Required. Immutable. The asset which is linked to the customer.
Asset string `json:"asset,omitempty"`
// ResourceName: Immutable. The resource name of the customer asset.
// CustomerAsset resource names have the form:
// `customers/{customer_id}/customerAssets/{asset_id}~{field_type}`
ResourceName string `json:"resourceName,omitempty"`
// Status: Status of the customer asset.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ENABLED" - Asset link is enabled.
// "REMOVED" - Asset link has been removed.
// "PAUSED" - Asset link is paused.
Status string `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "Asset") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Asset") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__CustomerAsset) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__CustomerAsset
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__CustomerAssetSet: CustomerAssetSet is the
// linkage between a customer and an asset set. Adding a CustomerAssetSet links
// an asset set with a customer.
type GoogleAdsSearchads360V0Resources__CustomerAssetSet struct {
// AssetSet: Immutable. The asset set which is linked to the customer.
AssetSet string `json:"assetSet,omitempty"`
// Customer: Immutable. The customer to which this asset set is linked.
Customer string `json:"customer,omitempty"`
// ResourceName: Immutable. The resource name of the customer asset set. Asset
// set asset resource names have the form:
// `customers/{customer_id}/customerAssetSets/{asset_set_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: Output only. The status of the customer asset set asset. Read-only.
//
// Possible values:
// "UNSPECIFIED" - The status has not been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "ENABLED" - The linkage between asset set and its container is enabled.
// "REMOVED" - The linkage between asset set and its container is removed.
Status string `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "AssetSet") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AssetSet") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__CustomerAssetSet) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__CustomerAssetSet
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__CustomerClient: A link between the given
// customer and a client customer. CustomerClients only exist for manager
// customers. All direct and indirect client customers are included, as well as
// the manager itself.
type GoogleAdsSearchads360V0Resources__CustomerClient struct {
// AppliedLabels: Output only. The resource names of the labels owned by the
// requesting customer that are applied to the client customer. Label resource
// names have the form: `customers/{customer_id}/labels/{label_id}`
AppliedLabels []string `json:"appliedLabels,omitempty"`
// ClientCustomer: Output only. The resource name of the client-customer which
// is linked to the given customer. Read only.
ClientCustomer string `json:"clientCustomer,omitempty"`
// CurrencyCode: Output only. Currency code (for example, 'USD', 'EUR') for the
// client. Read only.
CurrencyCode string `json:"currencyCode,omitempty"`
// DescriptiveName: Output only. Descriptive name for the client. Read only.
DescriptiveName string `json:"descriptiveName,omitempty"`
// Hidden: Output only. Specifies whether this is a hidden account. Read only.
Hidden bool `json:"hidden,omitempty"`
// Id: Output only. The ID of the client customer. Read only.
Id int64 `json:"id,omitempty,string"`
// Level: Output only. Distance between given customer and client. For self
// link, the level value will be 0. Read only.
Level int64 `json:"level,omitempty,string"`
// Manager: Output only. Identifies if the client is a manager. Read only.
Manager bool `json:"manager,omitempty"`
// ResourceName: Output only. The resource name of the customer client.
// CustomerClient resource names have the form:
// `customers/{customer_id}/customerClients/{client_customer_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: Output only. The status of the client customer. Read only.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ENABLED" - Indicates an active account able to serve ads.
// "CANCELED" - Indicates a canceled account unable to serve ads. Can be
// reactivated by an admin user.
// "SUSPENDED" - Indicates a suspended account unable to serve ads. May only
// be activated by Google support.
// "CLOSED" - Indicates a closed account unable to serve ads. Test account
// will also have CLOSED status. Status is permanent and may not be reopened.
Status string `json:"status,omitempty"`
// TestAccount: Output only. Identifies if the client is a test account. Read
// only.
TestAccount bool `json:"testAccount,omitempty"`
// TimeZone: Output only. Common Locale Data Repository (CLDR) string
// representation of the time zone of the client, for example,
// America/Los_Angeles. Read only.
TimeZone string `json:"timeZone,omitempty"`
// ForceSendFields is a list of field names (e.g. "AppliedLabels") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AppliedLabels") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__CustomerClient) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__CustomerClient
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__CustomerManagerLink: Represents
// customer-manager link relationship.
type GoogleAdsSearchads360V0Resources__CustomerManagerLink struct {
// ManagerCustomer: Output only. The manager customer linked to the customer.
ManagerCustomer string `json:"managerCustomer,omitempty"`
// ManagerLinkId: Output only. ID of the customer-manager link. This field is
// read only.
ManagerLinkId int64 `json:"managerLinkId,omitempty,string"`
// ResourceName: Immutable. Name of the resource. CustomerManagerLink resource
// names have the form:
// `customers/{customer_id}/customerManagerLinks/{manager_customer_id}~{manager_
// link_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: Status of the link between the customer and the manager.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ACTIVE" - Indicates current in-effect relationship
// "INACTIVE" - Indicates terminated relationship
// "PENDING" - Indicates relationship has been requested by manager, but the
// client hasn't accepted yet.
// "REFUSED" - Relationship was requested by the manager, but the client has
// refused.
// "CANCELED" - Indicates relationship has been requested by manager, but
// manager canceled it.
Status string `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "ManagerCustomer") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ManagerCustomer") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__CustomerManagerLink) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__CustomerManagerLink
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__DoubleClickCampaignManagerSetting:
// DoubleClick Campaign Manager (DCM) setting for a manager customer.
type GoogleAdsSearchads360V0Resources__DoubleClickCampaignManagerSetting struct {
// AdvertiserId: Output only. ID of the Campaign Manager advertiser associated
// with this customer.
AdvertiserId int64 `json:"advertiserId,omitempty,string"`
// NetworkId: Output only. ID of the Campaign Manager network associated with
// this customer.
NetworkId int64 `json:"networkId,omitempty,string"`
// TimeZone: Output only. Time zone of the Campaign Manager network associated
// with this customer in IANA Time Zone Database format, such as
// America/New_York.
TimeZone string `json:"timeZone,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdvertiserId") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdvertiserId") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__DoubleClickCampaignManagerSetting) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__DoubleClickCampaignManagerSetting
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__DynamicSearchAdsSearchTermView: A dynamic
// search ads search term view.
type GoogleAdsSearchads360V0Resources__DynamicSearchAdsSearchTermView struct {
// LandingPage: Output only. The dynamically selected landing page URL of the
// impression. This field is read-only.
LandingPage string `json:"landingPage,omitempty"`
// ResourceName: Output only. The resource name of the dynamic search ads
// search term view. Dynamic search ads search term view resource names have
// the form:
// `customers/{customer_id}/dynamicSearchAdsSearchTermViews/{ad_group_id}~{searc
// h_term_fingerprint}~{headline_fingerprint}~{landing_page_fingerprint}~{page_u
// rl_fingerprint}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "LandingPage") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "LandingPage") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__DynamicSearchAdsSearchTermView) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__DynamicSearchAdsSearchTermView
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__GenderView: A gender view. The gender_view
// resource reflects the effective serving state, rather than what criteria
// were added. An ad group without gender criteria by default shows to all
// genders, so all genders appear in gender_view with stats.
type GoogleAdsSearchads360V0Resources__GenderView struct {
// ResourceName: Output only. The resource name of the gender view. Gender view
// resource names have the form:
// `customers/{customer_id}/genderViews/{ad_group_id}~{criterion_id}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "ResourceName") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ResourceName") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__GenderView) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__GenderView
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__GeoTargetConstant: A geo target constant.
type GoogleAdsSearchads360V0Resources__GeoTargetConstant struct {
// CanonicalName: Output only. The fully qualified English name, consisting of
// the target's name and that of its parent and country.
CanonicalName string `json:"canonicalName,omitempty"`
// CountryCode: Output only. The ISO-3166-1 alpha-2 country code that is
// associated with the target.
CountryCode string `json:"countryCode,omitempty"`
// Id: Output only. The ID of the geo target constant.
Id int64 `json:"id,omitempty,string"`
// Name: Output only. Geo target constant English name.
Name string `json:"name,omitempty"`
// ParentGeoTarget: Output only. The resource name of the parent geo target
// constant. Geo target constant resource names have the form:
// `geoTargetConstants/{parent_geo_target_constant_id}`
ParentGeoTarget string `json:"parentGeoTarget,omitempty"`
// ResourceName: Output only. The resource name of the geo target constant. Geo
// target constant resource names have the form:
// `geoTargetConstants/{geo_target_constant_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: Output only. Geo target constant status.
//
// Possible values:
// "UNSPECIFIED" - No value has been specified.
// "UNKNOWN" - The received value is not known in this version. This is a
// response-only value.
// "ENABLED" - The geo target constant is valid.
// "REMOVAL_PLANNED" - The geo target constant is obsolete and will be
// removed.
Status string `json:"status,omitempty"`
// TargetType: Output only. Geo target constant target type.
TargetType string `json:"targetType,omitempty"`
// ForceSendFields is a list of field names (e.g. "CanonicalName") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CanonicalName") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__GeoTargetConstant) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__GeoTargetConstant
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__KeywordView: A keyword view.
type GoogleAdsSearchads360V0Resources__KeywordView struct {
// ResourceName: Output only. The resource name of the keyword view. Keyword
// view resource names have the form:
// `customers/{customer_id}/keywordViews/{ad_group_id}~{criterion_id}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "ResourceName") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ResourceName") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__KeywordView) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__KeywordView
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__Label: A label.
type GoogleAdsSearchads360V0Resources__Label struct {
// Id: Output only. ID of the label. Read only.
Id int64 `json:"id,omitempty,string"`
// Name: The name of the label. This field is required and should not be empty
// when creating a new label. The length of this string should be between 1 and
// 80, inclusive.
Name string `json:"name,omitempty"`
// ResourceName: Immutable. Name of the resource. Label resource names have the
// form: `customers/{customer_id}/labels/{label_id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: Output only. Status of the label. Read only.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ENABLED" - Label is enabled.
// "REMOVED" - Label is removed.
Status string `json:"status,omitempty"`
// TextLabel: A type of label displaying text on a colored background.
TextLabel *GoogleAdsSearchads360V0Common__TextLabel `json:"textLabel,omitempty"`
// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__Label) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__Label
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__LanguageConstant: A language.
type GoogleAdsSearchads360V0Resources__LanguageConstant struct {
// Code: Output only. The language code, for example, "en_US", "en_AU", "es",
// "fr", etc.
Code string `json:"code,omitempty"`
// Id: Output only. The ID of the language constant.
Id int64 `json:"id,omitempty,string"`
// Name: Output only. The full name of the language in English, for example,
// "English (US)", "Spanish", etc.
Name string `json:"name,omitempty"`
// ResourceName: Output only. The resource name of the language constant.
// Language constant resource names have the form:
// `languageConstants/{criterion_id}`
ResourceName string `json:"resourceName,omitempty"`
// Targetable: Output only. Whether the language is targetable.
Targetable bool `json:"targetable,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__LanguageConstant) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__LanguageConstant
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__ListingGroupFilterDimension: Listing
// dimensions for the asset group listing group filter.
type GoogleAdsSearchads360V0Resources__ListingGroupFilterDimension struct {
// ProductBiddingCategory: Bidding category of a product offer.
ProductBiddingCategory *GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductBiddingCategory `json:"productBiddingCategory,omitempty"`
// ProductBrand: Brand of a product offer.
ProductBrand *GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductBrand `json:"productBrand,omitempty"`
// ProductChannel: Locality of a product offer.
ProductChannel *GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductChannel `json:"productChannel,omitempty"`
// ProductCondition: Condition of a product offer.
ProductCondition *GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductCondition `json:"productCondition,omitempty"`
// ProductCustomAttribute: Custom attribute of a product offer.
ProductCustomAttribute *GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductCustomAttribute `json:"productCustomAttribute,omitempty"`
// ProductItemId: Item id of a product offer.
ProductItemId *GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductItemId `json:"productItemId,omitempty"`
// ProductType: Type of a product offer.
ProductType *GoogleAdsSearchads360V0ResourcesListingGroupFilterDimensionProductType `json:"productType,omitempty"`
// ForceSendFields is a list of field names (e.g. "ProductBiddingCategory") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ProductBiddingCategory") to
// include in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__ListingGroupFilterDimension) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__ListingGroupFilterDimension
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__ListingGroupFilterDimensionPath: The path
// defining of dimensions defining a listing group filter.
type GoogleAdsSearchads360V0Resources__ListingGroupFilterDimensionPath struct {
// Dimensions: Output only. The complete path of dimensions through the listing
// group filter hierarchy (excluding the root node) to this listing group
// filter.
Dimensions []*GoogleAdsSearchads360V0Resources__ListingGroupFilterDimension `json:"dimensions,omitempty"`
// ForceSendFields is a list of field names (e.g. "Dimensions") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Dimensions") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__ListingGroupFilterDimensionPath) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__ListingGroupFilterDimensionPath
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__LocationView: A location view summarizes
// the performance of campaigns by a Location criterion.
type GoogleAdsSearchads360V0Resources__LocationView struct {
// ResourceName: Output only. The resource name of the location view. Location
// view resource names have the form:
// `customers/{customer_id}/locationViews/{campaign_id}~{criterion_id}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "ResourceName") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ResourceName") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__LocationView) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__LocationView
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__ProductBiddingCategoryConstant: A Product
// Bidding Category.
type GoogleAdsSearchads360V0Resources__ProductBiddingCategoryConstant struct {
// CountryCode: Output only. Two-letter upper-case country code of the product
// bidding category.
CountryCode string `json:"countryCode,omitempty"`
// Id: Output only. ID of the product bidding category. This ID is equivalent
// to the google_product_category ID as described in this article:
// https://support.google.com/merchants/answer/6324436.
Id int64 `json:"id,omitempty,string"`
// LanguageCode: Output only. Language code of the product bidding category.
LanguageCode string `json:"languageCode,omitempty"`
// Level: Output only. Level of the product bidding category.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "LEVEL1" - Level 1.
// "LEVEL2" - Level 2.
// "LEVEL3" - Level 3.
// "LEVEL4" - Level 4.
// "LEVEL5" - Level 5.
Level string `json:"level,omitempty"`
// LocalizedName: Output only. Display value of the product bidding category
// localized according to language_code.
LocalizedName string `json:"localizedName,omitempty"`
// ProductBiddingCategoryConstantParent: Output only. Resource name of the
// parent product bidding category.
ProductBiddingCategoryConstantParent string `json:"productBiddingCategoryConstantParent,omitempty"`
// ResourceName: Output only. The resource name of the product bidding
// category. Product bidding category resource names have the form:
// `productBiddingCategoryConstants/{country_code}~{level}~{id}`
ResourceName string `json:"resourceName,omitempty"`
// Status: Output only. Status of the product bidding category.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ACTIVE" - The category is active and can be used for bidding.
// "OBSOLETE" - The category is obsolete. Used only for reporting purposes.
Status string `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "CountryCode") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CountryCode") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__ProductBiddingCategoryConstant) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__ProductBiddingCategoryConstant
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__ProductGroupView: A product group view.
type GoogleAdsSearchads360V0Resources__ProductGroupView struct {
// ResourceName: Output only. The resource name of the product group view.
// Product group view resource names have the form:
// `customers/{customer_id}/productGroupViews/{ad_group_id}~{criterion_id}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "ResourceName") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ResourceName") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__ProductGroupView) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__ProductGroupView
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__SearchAds360Field: A field or resource
// (artifact) used by SearchAds360Service.
type GoogleAdsSearchads360V0Resources__SearchAds360Field struct {
// AttributeResources: Output only. The names of all resources that are
// selectable with the described artifact. Fields from these resources do not
// segment metrics when included in search queries. This field is only set for
// artifacts whose category is RESOURCE.
AttributeResources []string `json:"attributeResources,omitempty"`
// Category: Output only. The category of the artifact.
//
// Possible values:
// "UNSPECIFIED" - Unspecified
// "UNKNOWN" - Unknown
// "RESOURCE" - The described artifact is a resource.
// "ATTRIBUTE" - The described artifact is a field and is an attribute of a
// resource. Including a resource attribute field in a query may segment the
// query if the resource to which it is attributed segments the resource found
// in the FROM clause.
// "SEGMENT" - The described artifact is a field and always segments search
// queries.
// "METRIC" - The described artifact is a field and is a metric. It never
// segments search queries.
Category string `json:"category,omitempty"`
// DataType: Output only. This field determines the operators that can be used
// with the artifact in WHERE clauses.
//
// Possible values:
// "UNSPECIFIED" - Unspecified
// "UNKNOWN" - Unknown
// "BOOLEAN" - Maps to google.protobuf.BoolValue Applicable operators: =, !=
// "DATE" - Maps to google.protobuf.StringValue. It can be compared using the
// set of operators specific to dates however. Applicable operators: =, <, >,
// <=, >=, BETWEEN, DURING, and IN
// "DOUBLE" - Maps to google.protobuf.DoubleValue Applicable operators: =,
// !=, <, >, IN, NOT IN
// "ENUM" - Maps to an enum. It's specific definition can be found at
// type_url. Applicable operators: =, !=, IN, NOT IN
// "FLOAT" - Maps to google.protobuf.FloatValue Applicable operators: =, !=,
// <, >, IN, NOT IN
// "INT32" - Maps to google.protobuf.Int32Value Applicable operators: =, !=,
// <, >, <=, >=, BETWEEN, IN, NOT IN
// "INT64" - Maps to google.protobuf.Int64Value Applicable operators: =, !=,
// <, >, <=, >=, BETWEEN, IN, NOT IN
// "MESSAGE" - Maps to a protocol buffer message type. The data type's
// details can be found in type_url. No operators work with MESSAGE fields.
// "RESOURCE_NAME" - Maps to google.protobuf.StringValue. Represents the
// resource name (unique id) of a resource or one of its foreign keys. No
// operators work with RESOURCE_NAME fields.
// "STRING" - Maps to google.protobuf.StringValue. Applicable operators: =,
// !=, LIKE, NOT LIKE, IN, NOT IN
// "UINT64" - Maps to google.protobuf.UInt64Value Applicable operators: =,
// !=, <, >, <=, >=, BETWEEN, IN, NOT IN
DataType string `json:"dataType,omitempty"`
// EnumValues: Output only. Values the artifact can assume if it is a field of
// type ENUM. This field is only set for artifacts of category SEGMENT or
// ATTRIBUTE.
EnumValues []string `json:"enumValues,omitempty"`
// Filterable: Output only. Whether the artifact can be used in a WHERE clause
// in search queries.
Filterable bool `json:"filterable,omitempty"`
// IsRepeated: Output only. Whether the field artifact is repeated.
IsRepeated bool `json:"isRepeated,omitempty"`
// Metrics: Output only. This field lists the names of all metrics that are
// selectable with the described artifact when it is used in the FROM clause.
// It is only set for artifacts whose category is RESOURCE.
Metrics []string `json:"metrics,omitempty"`
// Name: Output only. The name of the artifact.
Name string `json:"name,omitempty"`
// ResourceName: Output only. The resource name of the artifact. Artifact
// resource names have the form: `SearchAds360Fields/{name}`
ResourceName string `json:"resourceName,omitempty"`
// Segments: Output only. This field lists the names of all artifacts, whether
// a segment or another resource, that segment metrics when included in search
// queries and when the described artifact is used in the FROM clause. It is
// only set for artifacts whose category is RESOURCE.
Segments []string `json:"segments,omitempty"`
// Selectable: Output only. Whether the artifact can be used in a SELECT clause
// in search queries.
Selectable bool `json:"selectable,omitempty"`
// SelectableWith: Output only. The names of all resources, segments, and
// metrics that are selectable with the described artifact.
SelectableWith []string `json:"selectableWith,omitempty"`
// Sortable: Output only. Whether the artifact can be used in a ORDER BY clause
// in search queries.
Sortable bool `json:"sortable,omitempty"`
// TypeUrl: Output only. The URL of proto describing the artifact's data type.
TypeUrl string `json:"typeUrl,omitempty"`
// ServerResponse contains the HTTP response code and headers from the server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "AttributeResources") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AttributeResources") to include
// in API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__SearchAds360Field) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__SearchAds360Field
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__ShoppingPerformanceView: Shopping
// performance view. Provides Shopping campaign statistics aggregated at
// several product dimension levels. Product dimension values from Merchant
// Center such as brand, category, custom attributes, product condition and
// product type will reflect the state of each dimension as of the date and
// time when the corresponding event was recorded.
type GoogleAdsSearchads360V0Resources__ShoppingPerformanceView struct {
// ResourceName: Output only. The resource name of the Shopping performance
// view. Shopping performance view resource names have the form:
// `customers/{customer_id}/shoppingPerformanceView`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "ResourceName") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ResourceName") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__ShoppingPerformanceView) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__ShoppingPerformanceView
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__UserList: A user list. This is a list of
// users a customer may target.
type GoogleAdsSearchads360V0Resources__UserList struct {
// Id: Output only. Id of the user list.
Id int64 `json:"id,omitempty,string"`
// Name: Name of this user list. Depending on its access_reason, the user list
// name may not be unique (for example, if access_reason=SHARED)
Name string `json:"name,omitempty"`
// ResourceName: Immutable. The resource name of the user list. User list
// resource names have the form:
// `customers/{customer_id}/userLists/{user_list_id}`
ResourceName string `json:"resourceName,omitempty"`
// Type: Output only. Type of this list. This field is read-only.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "REMARKETING" - UserList represented as a collection of conversion types.
// "LOGICAL" - UserList represented as a combination of other user
// lists/interests.
// "EXTERNAL_REMARKETING" - UserList created in the Google Ad Manager
// platform.
// "RULE_BASED" - UserList associated with a rule.
// "SIMILAR" - UserList with users similar to users of another UserList.
// "CRM_BASED" - UserList of first-party CRM data provided by advertiser in
// the form of emails or other formats.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__UserList) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__UserList
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__Visit: A visit.
type GoogleAdsSearchads360V0Resources__Visit struct {
// AdId: Output only. Ad ID. A value of 0 indicates that the ad is
// unattributed.
AdId int64 `json:"adId,omitempty,string"`
// AssetFieldType: Output only. Asset field type of the visit event.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "HEADLINE" - The asset is linked for use as a headline.
// "DESCRIPTION" - The asset is linked for use as a description.
// "MANDATORY_AD_TEXT" - The asset is linked for use as mandatory ad text.
// "MARKETING_IMAGE" - The asset is linked for use as a marketing image.
// "MEDIA_BUNDLE" - The asset is linked for use as a media bundle.
// "YOUTUBE_VIDEO" - The asset is linked for use as a YouTube video.
// "BOOK_ON_GOOGLE" - The asset is linked to indicate that a hotels campaign
// is "Book on Google" enabled.
// "LEAD_FORM" - The asset is linked for use as a Lead Form extension.
// "PROMOTION" - The asset is linked for use as a Promotion extension.
// "CALLOUT" - The asset is linked for use as a Callout extension.
// "STRUCTURED_SNIPPET" - The asset is linked for use as a Structured Snippet
// extension.
// "SITELINK" - The asset is linked for use as a Sitelink.
// "MOBILE_APP" - The asset is linked for use as a Mobile App extension.
// "HOTEL_CALLOUT" - The asset is linked for use as a Hotel Callout
// extension.
// "CALL" - The asset is linked for use as a Call extension.
// "PRICE" - The asset is linked for use as a Price extension.
// "LONG_HEADLINE" - The asset is linked for use as a long headline.
// "BUSINESS_NAME" - The asset is linked for use as a business name.
// "SQUARE_MARKETING_IMAGE" - The asset is linked for use as a square
// marketing image.
// "PORTRAIT_MARKETING_IMAGE" - The asset is linked for use as a portrait
// marketing image.
// "LOGO" - The asset is linked for use as a logo.
// "LANDSCAPE_LOGO" - The asset is linked for use as a landscape logo.
// "VIDEO" - The asset is linked for use as a non YouTube logo.
// "CALL_TO_ACTION_SELECTION" - The asset is linked for use to select a
// call-to-action.
// "AD_IMAGE" - The asset is linked for use to select an ad image.
// "BUSINESS_LOGO" - The asset is linked for use as a business logo.
// "HOTEL_PROPERTY" - The asset is linked for use as a hotel property in a
// Performance Max for travel goals campaign.
// "DISCOVERY_CAROUSEL_CARD" - The asset is linked for use as a discovery
// carousel card.
AssetFieldType string `json:"assetFieldType,omitempty"`
// AssetId: Output only. ID of the asset which was interacted with during the
// visit event.
AssetId int64 `json:"assetId,omitempty,string"`
// ClickId: Output only. A unique string for each visit that is passed to the
// landing page as the click id URL parameter.
ClickId string `json:"clickId,omitempty"`
// CriterionId: Output only. Search Ads 360 keyword ID. A value of 0 indicates
// that the keyword is unattributed.
CriterionId int64 `json:"criterionId,omitempty,string"`
// Id: Output only. The ID of the visit.
Id int64 `json:"id,omitempty,string"`
// MerchantId: Output only. The Search Ads 360 inventory account ID containing
// the product that was clicked on. Search Ads 360 generates this ID when you
// link an inventory account in Search Ads 360.
MerchantId int64 `json:"merchantId,omitempty,string"`
// ProductChannel: Output only. The sales channel of the product that was
// clicked on: Online or Local.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Used for return value only. Represents value unknown in this
// version.
// "ONLINE" - The item is sold online.
// "LOCAL" - The item is sold in local stores.
ProductChannel string `json:"productChannel,omitempty"`
// ProductCountryCode: Output only. The country (ISO-3166 format) registered
// for the inventory feed that contains the product clicked on.
ProductCountryCode string `json:"productCountryCode,omitempty"`
// ProductId: Output only. The ID of the product clicked on.
ProductId string `json:"productId,omitempty"`
// ProductLanguageCode: Output only. The language (ISO-639-1) that has been set
// for the Merchant Center feed containing data about the product.
ProductLanguageCode string `json:"productLanguageCode,omitempty"`
// ProductStoreId: Output only. The store in the Local Inventory Ad that was
// clicked on. This should match the store IDs used in your local products
// feed.
ProductStoreId string `json:"productStoreId,omitempty"`
// ResourceName: Output only. The resource name of the visit. Visit resource
// names have the form:
// `customers/{customer_id}/visits/{ad_group_id}~{criterion_id}~{ds_visit_id}`
ResourceName string `json:"resourceName,omitempty"`
// VisitDateTime: Output only. The timestamp of the visit event. The timestamp
// is in the customer's time zone and in "yyyy-MM-dd HH:mm:ss" format.
VisitDateTime string `json:"visitDateTime,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdId") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdId") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__Visit) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__Visit
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Resources__WebpageView: A webpage view.
type GoogleAdsSearchads360V0Resources__WebpageView struct {
// ResourceName: Output only. The resource name of the webpage view. Webpage
// view resource names have the form:
// `customers/{customer_id}/webpageViews/{ad_group_id}~{criterion_id}`
ResourceName string `json:"resourceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "ResourceName") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ResourceName") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Resources__WebpageView) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Resources__WebpageView
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Services__ConversionCustomDimensionHeader: Message
// for conversion custom dimension header.
type GoogleAdsSearchads360V0Services__ConversionCustomDimensionHeader struct {
// Id: The conversion custom dimension ID.
Id int64 `json:"id,omitempty,string"`
// Name: The user defined name of the conversion custom dimension.
Name string `json:"name,omitempty"`
// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Services__ConversionCustomDimensionHeader) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Services__ConversionCustomDimensionHeader
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Services__ConversionCustomMetricHeader: Message for
// conversion custom metric header.
type GoogleAdsSearchads360V0Services__ConversionCustomMetricHeader struct {
// Id: The conversion custom metric ID.
Id int64 `json:"id,omitempty,string"`
// Name: The user defined name of the conversion custom metric.
Name string `json:"name,omitempty"`
// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Services__ConversionCustomMetricHeader) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Services__ConversionCustomMetricHeader
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Services__CustomColumnHeader: Message for custom
// column header.
type GoogleAdsSearchads360V0Services__CustomColumnHeader struct {
// Id: The custom column ID.
Id int64 `json:"id,omitempty,string"`
// Name: The user defined name of the custom column.
Name string `json:"name,omitempty"`
// ReferencesMetrics: True when the custom column references metrics.
ReferencesMetrics bool `json:"referencesMetrics,omitempty"`
// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Services__CustomColumnHeader) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Services__CustomColumnHeader
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse: Response
// message for CustomerService.ListAccessibleCustomers.
type GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse struct {
// ResourceNames: Resource name of customers directly accessible by the user
// authenticating the call.
ResourceNames []string `json:"resourceNames,omitempty"`
// ServerResponse contains the HTTP response code and headers from the server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ResourceNames") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ResourceNames") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Services__ListCustomColumnsResponse: Response message
// for fetching all custom columns associated with a customer.
type GoogleAdsSearchads360V0Services__ListCustomColumnsResponse struct {
// CustomColumns: The CustomColumns owned by the provided customer.
CustomColumns []*GoogleAdsSearchads360V0Resources__CustomColumn `json:"customColumns,omitempty"`
// ServerResponse contains the HTTP response code and headers from the server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "CustomColumns") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CustomColumns") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Services__ListCustomColumnsResponse) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Services__ListCustomColumnsResponse
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Services__RawEventConversionDimensionHeader: Message
// for raw event conversion dimension header.
type GoogleAdsSearchads360V0Services__RawEventConversionDimensionHeader struct {
// Id: The conversion custom variable ID.
Id int64 `json:"id,omitempty,string"`
// Name: The user defined name of the raw event dimension.
Name string `json:"name,omitempty"`
// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Services__RawEventConversionDimensionHeader) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Services__RawEventConversionDimensionHeader
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Services__RawEventConversionMetricHeader: Message for
// raw event conversion metric header.
type GoogleAdsSearchads360V0Services__RawEventConversionMetricHeader struct {
// Id: The conversion custom variable ID.
Id int64 `json:"id,omitempty,string"`
// Name: The user defined name of the raw event metric.
Name string `json:"name,omitempty"`
// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Services__RawEventConversionMetricHeader) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Services__RawEventConversionMetricHeader
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Services__SearchAds360Row: A returned row from the
// query.
type GoogleAdsSearchads360V0Services__SearchAds360Row struct {
// AccessibleBiddingStrategy: The accessible bidding strategy referenced in the
// query.
AccessibleBiddingStrategy *GoogleAdsSearchads360V0Resources__AccessibleBiddingStrategy `json:"accessibleBiddingStrategy,omitempty"`
// AdGroup: The ad group referenced in the query.
AdGroup *GoogleAdsSearchads360V0Resources__AdGroup `json:"adGroup,omitempty"`
// AdGroupAd: The ad referenced in the query.
AdGroupAd *GoogleAdsSearchads360V0Resources__AdGroupAd `json:"adGroupAd,omitempty"`
// AdGroupAdLabel: The ad group ad label referenced in the query.
AdGroupAdLabel *GoogleAdsSearchads360V0Resources__AdGroupAdLabel `json:"adGroupAdLabel,omitempty"`
// AdGroupAsset: The ad group asset referenced in the query.
AdGroupAsset *GoogleAdsSearchads360V0Resources__AdGroupAsset `json:"adGroupAsset,omitempty"`
// AdGroupAssetSet: The ad group asset set referenced in the query.
AdGroupAssetSet *GoogleAdsSearchads360V0Resources__AdGroupAssetSet `json:"adGroupAssetSet,omitempty"`
// AdGroupAudienceView: The ad group audience view referenced in the query.
AdGroupAudienceView *GoogleAdsSearchads360V0Resources__AdGroupAudienceView `json:"adGroupAudienceView,omitempty"`
// AdGroupBidModifier: The bid modifier referenced in the query.
AdGroupBidModifier *GoogleAdsSearchads360V0Resources__AdGroupBidModifier `json:"adGroupBidModifier,omitempty"`
// AdGroupCriterion: The criterion referenced in the query.
AdGroupCriterion *GoogleAdsSearchads360V0Resources__AdGroupCriterion `json:"adGroupCriterion,omitempty"`
// AdGroupCriterionLabel: The ad group criterion label referenced in the query.
AdGroupCriterionLabel *GoogleAdsSearchads360V0Resources__AdGroupCriterionLabel `json:"adGroupCriterionLabel,omitempty"`
// AdGroupLabel: The ad group label referenced in the query.
AdGroupLabel *GoogleAdsSearchads360V0Resources__AdGroupLabel `json:"adGroupLabel,omitempty"`
// AgeRangeView: The age range view referenced in the query.
AgeRangeView *GoogleAdsSearchads360V0Resources__AgeRangeView `json:"ageRangeView,omitempty"`
// Asset: The asset referenced in the query.
Asset *GoogleAdsSearchads360V0Resources__Asset `json:"asset,omitempty"`
// AssetGroup: The asset group referenced in the query.
AssetGroup *GoogleAdsSearchads360V0Resources__AssetGroup `json:"assetGroup,omitempty"`
// AssetGroupAsset: The asset group asset referenced in the query.
AssetGroupAsset *GoogleAdsSearchads360V0Resources__AssetGroupAsset `json:"assetGroupAsset,omitempty"`
// AssetGroupListingGroupFilter: The asset group listing group filter
// referenced in the query.
AssetGroupListingGroupFilter *GoogleAdsSearchads360V0Resources__AssetGroupListingGroupFilter `json:"assetGroupListingGroupFilter,omitempty"`
// AssetGroupSignal: The asset group signal referenced in the query.
AssetGroupSignal *GoogleAdsSearchads360V0Resources__AssetGroupSignal `json:"assetGroupSignal,omitempty"`
// AssetGroupTopCombinationView: The asset group top combination view
// referenced in the query.
AssetGroupTopCombinationView *GoogleAdsSearchads360V0Resources__AssetGroupTopCombinationView `json:"assetGroupTopCombinationView,omitempty"`
// AssetSet: The asset set referenced in the query.
AssetSet *GoogleAdsSearchads360V0Resources__AssetSet `json:"assetSet,omitempty"`
// AssetSetAsset: The asset set asset referenced in the query.
AssetSetAsset *GoogleAdsSearchads360V0Resources__AssetSetAsset `json:"assetSetAsset,omitempty"`
// Audience: The Audience referenced in the query.
Audience *GoogleAdsSearchads360V0Resources__Audience `json:"audience,omitempty"`
// BiddingStrategy: The bidding strategy referenced in the query.
BiddingStrategy *GoogleAdsSearchads360V0Resources__BiddingStrategy `json:"biddingStrategy,omitempty"`
// Campaign: The campaign referenced in the query.
Campaign *GoogleAdsSearchads360V0Resources__Campaign `json:"campaign,omitempty"`
// CampaignAsset: The campaign asset referenced in the query.
CampaignAsset *GoogleAdsSearchads360V0Resources__CampaignAsset `json:"campaignAsset,omitempty"`
// CampaignAssetSet: The campaign asset set referenced in the query.
CampaignAssetSet *GoogleAdsSearchads360V0Resources__CampaignAssetSet `json:"campaignAssetSet,omitempty"`
// CampaignAudienceView: The campaign audience view referenced in the query.
CampaignAudienceView *GoogleAdsSearchads360V0Resources__CampaignAudienceView `json:"campaignAudienceView,omitempty"`
// CampaignBudget: The campaign budget referenced in the query.
CampaignBudget *GoogleAdsSearchads360V0Resources__CampaignBudget `json:"campaignBudget,omitempty"`
// CampaignCriterion: The campaign criterion referenced in the query.
CampaignCriterion *GoogleAdsSearchads360V0Resources__CampaignCriterion `json:"campaignCriterion,omitempty"`
// CampaignLabel: The campaign label referenced in the query.
CampaignLabel *GoogleAdsSearchads360V0Resources__CampaignLabel `json:"campaignLabel,omitempty"`
// CartDataSalesView: The cart data sales view referenced in the query.
CartDataSalesView *GoogleAdsSearchads360V0Resources__CartDataSalesView `json:"cartDataSalesView,omitempty"`
// Conversion: The event level conversion referenced in the query.
Conversion *GoogleAdsSearchads360V0Resources__Conversion `json:"conversion,omitempty"`
// ConversionAction: The conversion action referenced in the query.
ConversionAction *GoogleAdsSearchads360V0Resources__ConversionAction `json:"conversionAction,omitempty"`
// ConversionCustomVariable: The conversion custom variable referenced in the
// query.
ConversionCustomVariable *GoogleAdsSearchads360V0Resources__ConversionCustomVariable `json:"conversionCustomVariable,omitempty"`
// CustomColumns: The custom columns.
CustomColumns []*GoogleAdsSearchads360V0Common__Value `json:"customColumns,omitempty"`
// Customer: The customer referenced in the query.
Customer *GoogleAdsSearchads360V0Resources__Customer `json:"customer,omitempty"`
// CustomerAsset: The customer asset referenced in the query.
CustomerAsset *GoogleAdsSearchads360V0Resources__CustomerAsset `json:"customerAsset,omitempty"`
// CustomerAssetSet: The customer asset set referenced in the query.
CustomerAssetSet *GoogleAdsSearchads360V0Resources__CustomerAssetSet `json:"customerAssetSet,omitempty"`
// CustomerClient: The CustomerClient referenced in the query.
CustomerClient *GoogleAdsSearchads360V0Resources__CustomerClient `json:"customerClient,omitempty"`
// CustomerManagerLink: The CustomerManagerLink referenced in the query.
CustomerManagerLink *GoogleAdsSearchads360V0Resources__CustomerManagerLink `json:"customerManagerLink,omitempty"`
// DynamicSearchAdsSearchTermView: The dynamic search ads search term view
// referenced in the query.
DynamicSearchAdsSearchTermView *GoogleAdsSearchads360V0Resources__DynamicSearchAdsSearchTermView `json:"dynamicSearchAdsSearchTermView,omitempty"`
// GenderView: The gender view referenced in the query.
GenderView *GoogleAdsSearchads360V0Resources__GenderView `json:"genderView,omitempty"`
// GeoTargetConstant: The geo target constant referenced in the query.
GeoTargetConstant *GoogleAdsSearchads360V0Resources__GeoTargetConstant `json:"geoTargetConstant,omitempty"`
// KeywordView: The keyword view referenced in the query.
KeywordView *GoogleAdsSearchads360V0Resources__KeywordView `json:"keywordView,omitempty"`
// Label: The label referenced in the query.
Label *GoogleAdsSearchads360V0Resources__Label `json:"label,omitempty"`
// LanguageConstant: The language constant referenced in the query.
LanguageConstant *GoogleAdsSearchads360V0Resources__LanguageConstant `json:"languageConstant,omitempty"`
// LocationView: The location view referenced in the query.
LocationView *GoogleAdsSearchads360V0Resources__LocationView `json:"locationView,omitempty"`
// Metrics: The metrics.
Metrics *GoogleAdsSearchads360V0Common__Metrics `json:"metrics,omitempty"`
// ProductBiddingCategoryConstant: The Product Bidding Category referenced in
// the query.
ProductBiddingCategoryConstant *GoogleAdsSearchads360V0Resources__ProductBiddingCategoryConstant `json:"productBiddingCategoryConstant,omitempty"`
// ProductGroupView: The product group view referenced in the query.
ProductGroupView *GoogleAdsSearchads360V0Resources__ProductGroupView `json:"productGroupView,omitempty"`
// Segments: The segments.
Segments *GoogleAdsSearchads360V0Common__Segments `json:"segments,omitempty"`
// ShoppingPerformanceView: The shopping performance view referenced in the
// query.
ShoppingPerformanceView *GoogleAdsSearchads360V0Resources__ShoppingPerformanceView `json:"shoppingPerformanceView,omitempty"`
// UserList: The user list referenced in the query.
UserList *GoogleAdsSearchads360V0Resources__UserList `json:"userList,omitempty"`
// Visit: The event level visit referenced in the query.
Visit *GoogleAdsSearchads360V0Resources__Visit `json:"visit,omitempty"`
// WebpageView: The webpage view referenced in the query.
WebpageView *GoogleAdsSearchads360V0Resources__WebpageView `json:"webpageView,omitempty"`
// ForceSendFields is a list of field names (e.g. "AccessibleBiddingStrategy")
// to unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AccessibleBiddingStrategy") to
// include in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Services__SearchAds360Row) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Services__SearchAds360Row
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Services__SearchSearchAds360FieldsRequest: Request
// message for SearchAds360FieldService.SearchSearchAds360Fields.
type GoogleAdsSearchads360V0Services__SearchSearchAds360FieldsRequest struct {
// PageSize: Number of elements to retrieve in a single page. When too large a
// page is requested, the server may decide to further limit the number of
// returned resources.
PageSize int64 `json:"pageSize,omitempty"`
// PageToken: Token of the page to retrieve. If not specified, the first page
// of results will be returned. Use the value obtained from `next_page_token`
// in the previous response in order to request the next page of results.
PageToken string `json:"pageToken,omitempty"`
// Query: Required. The query string.
Query string `json:"query,omitempty"`
// ForceSendFields is a list of field names (e.g. "PageSize") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "PageSize") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Services__SearchSearchAds360FieldsRequest) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Services__SearchSearchAds360FieldsRequest
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Services__SearchSearchAds360FieldsResponse: Response
// message for SearchAds360FieldService.SearchSearchAds360Fields.
type GoogleAdsSearchads360V0Services__SearchSearchAds360FieldsResponse struct {
// NextPageToken: Pagination token used to retrieve the next page of results.
// Pass the content of this string as the `page_token` attribute of the next
// request. `next_page_token` is not returned for the last page.
NextPageToken string `json:"nextPageToken,omitempty"`
// Results: The list of fields that matched the query.
Results []*GoogleAdsSearchads360V0Resources__SearchAds360Field `json:"results,omitempty"`
// TotalResultsCount: Total number of results that match the query ignoring the
// LIMIT clause.
TotalResultsCount int64 `json:"totalResultsCount,omitempty,string"`
// 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. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
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. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Services__SearchSearchAds360FieldsResponse) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Services__SearchSearchAds360FieldsResponse
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Services__SearchSearchAds360Request: Request message
// for SearchAds360Service.Search.
type GoogleAdsSearchads360V0Services__SearchSearchAds360Request struct {
// PageSize: Number of elements to retrieve in a single page. When too large a
// page is requested, the server may decide to further limit the number of
// returned resources.
PageSize int64 `json:"pageSize,omitempty"`
// PageToken: Token of the page to retrieve. If not specified, the first page
// of results will be returned. Use the value obtained from `next_page_token`
// in the previous response in order to request the next page of results.
PageToken string `json:"pageToken,omitempty"`
// Query: Required. The query string.
Query string `json:"query,omitempty"`
// ReturnTotalResultsCount: If true, the total number of results that match the
// query ignoring the LIMIT clause will be included in the response. Default is
// false.
ReturnTotalResultsCount bool `json:"returnTotalResultsCount,omitempty"`
// SummaryRowSetting: Determines whether a summary row will be returned. By
// default, summary row is not returned. If requested, the summary row will be
// sent in a response by itself after all other query results are returned.
//
// Possible values:
// "UNSPECIFIED" - Not specified.
// "UNKNOWN" - Represent unknown values of return summary row.
// "NO_SUMMARY_ROW" - Do not return summary row.
// "SUMMARY_ROW_WITH_RESULTS" - Return summary row along with results. The
// summary row will be returned in the last batch alone (last batch will
// contain no results).
// "SUMMARY_ROW_ONLY" - Return summary row only and return no results.
SummaryRowSetting string `json:"summaryRowSetting,omitempty"`
// ValidateOnly: If true, the request is validated but not executed.
ValidateOnly bool `json:"validateOnly,omitempty"`
// ForceSendFields is a list of field names (e.g. "PageSize") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "PageSize") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Services__SearchSearchAds360Request) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Services__SearchSearchAds360Request
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAdsSearchads360V0Services__SearchSearchAds360Response: Response
// message for SearchAds360Service.Search.
type GoogleAdsSearchads360V0Services__SearchSearchAds360Response struct {
// ConversionCustomDimensionHeaders: The headers of the conversion custom
// dimensions in the results.
ConversionCustomDimensionHeaders []*GoogleAdsSearchads360V0Services__ConversionCustomDimensionHeader `json:"conversionCustomDimensionHeaders,omitempty"`
// ConversionCustomMetricHeaders: The headers of the conversion custom metrics
// in the results.
ConversionCustomMetricHeaders []*GoogleAdsSearchads360V0Services__ConversionCustomMetricHeader `json:"conversionCustomMetricHeaders,omitempty"`
// CustomColumnHeaders: The headers of the custom columns in the results.
CustomColumnHeaders []*GoogleAdsSearchads360V0Services__CustomColumnHeader `json:"customColumnHeaders,omitempty"`
// FieldMask: FieldMask that represents what fields were requested by the user.
FieldMask string `json:"fieldMask,omitempty"`
// NextPageToken: Pagination token used to retrieve the next page of results.
// Pass the content of this string as the `page_token` attribute of the next
// request. `next_page_token` is not returned for the last page.
NextPageToken string `json:"nextPageToken,omitempty"`
// RawEventConversionDimensionHeaders: The headers of the raw event conversion
// dimensions in the results.
RawEventConversionDimensionHeaders []*GoogleAdsSearchads360V0Services__RawEventConversionDimensionHeader `json:"rawEventConversionDimensionHeaders,omitempty"`
// RawEventConversionMetricHeaders: The headers of the raw event conversion
// metrics in the results.
RawEventConversionMetricHeaders []*GoogleAdsSearchads360V0Services__RawEventConversionMetricHeader `json:"rawEventConversionMetricHeaders,omitempty"`
// Results: The list of rows that matched the query.
Results []*GoogleAdsSearchads360V0Services__SearchAds360Row `json:"results,omitempty"`
// SummaryRow: Summary row that contains summary of metrics in results. Summary
// of metrics means aggregation of metrics across all results, here aggregation
// could be sum, average, rate, etc.
SummaryRow *GoogleAdsSearchads360V0Services__SearchAds360Row `json:"summaryRow,omitempty"`
// TotalResultsCount: Total number of results that match the query ignoring the
// LIMIT clause.
TotalResultsCount int64 `json:"totalResultsCount,omitempty,string"`
// ServerResponse contains the HTTP response code and headers from the server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g.
// "ConversionCustomDimensionHeaders") to unconditionally include in API
// requests. By default, fields with empty or default values are omitted from
// API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g.
// "ConversionCustomDimensionHeaders") to include in API requests with the JSON
// null value. By default, fields with empty values are omitted from API
// requests. See https://pkg.go.dev/google.golang.org/api#hdr-NullFields for
// more details.
NullFields []string `json:"-"`
}
func (s *GoogleAdsSearchads360V0Services__SearchSearchAds360Response) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAdsSearchads360V0Services__SearchSearchAds360Response
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
type CustomersListAccessibleCustomersCall struct {
s *Service
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// ListAccessibleCustomers: Returns resource names of customers directly
// accessible by the user authenticating the call. List of thrown errors:
// AuthenticationError () [AuthorizationError]() HeaderError ()
// [InternalError]() QuotaError () [RequestError]()
func (r *CustomersService) ListAccessibleCustomers() *CustomersListAccessibleCustomersCall {
c := &CustomersListAccessibleCustomersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *CustomersListAccessibleCustomersCall) Fields(s ...googleapi.Field) *CustomersListAccessibleCustomersCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets an 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.
func (c *CustomersListAccessibleCustomersCall) IfNoneMatch(entityTag string) *CustomersListAccessibleCustomersCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method.
func (c *CustomersListAccessibleCustomersCall) Context(ctx context.Context) *CustomersListAccessibleCustomersCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *CustomersListAccessibleCustomersCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *CustomersListAccessibleCustomersCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
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, "v0/customers:listAccessibleCustomers")
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 "searchads360.customers.listAccessibleCustomers" call.
// Any non-2xx status code is an error. Response headers are in either
// *GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse.ServerRespo
// nse.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 *CustomersListAccessibleCustomersCall) Do(opts ...googleapi.CallOption) (*GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse, 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 := &GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse{
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
}
type CustomersCustomColumnsGetCall struct {
s *Service
resourceName string
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// Get: Returns the requested custom column in full detail.
//
// - resourceName: The resource name of the custom column to fetch.
func (r *CustomersCustomColumnsService) Get(resourceName string) *CustomersCustomColumnsGetCall {
c := &CustomersCustomColumnsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.resourceName = resourceName
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *CustomersCustomColumnsGetCall) Fields(s ...googleapi.Field) *CustomersCustomColumnsGetCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets an 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.
func (c *CustomersCustomColumnsGetCall) IfNoneMatch(entityTag string) *CustomersCustomColumnsGetCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method.
func (c *CustomersCustomColumnsGetCall) Context(ctx context.Context) *CustomersCustomColumnsGetCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *CustomersCustomColumnsGetCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *CustomersCustomColumnsGetCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
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, "v0/{+resourceName}")
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{
"resourceName": c.resourceName,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "searchads360.customers.customColumns.get" call.
// Any non-2xx status code is an error. Response headers are in either
// *GoogleAdsSearchads360V0Resources__CustomColumn.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 *CustomersCustomColumnsGetCall) Do(opts ...googleapi.CallOption) (*GoogleAdsSearchads360V0Resources__CustomColumn, 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 := &GoogleAdsSearchads360V0Resources__CustomColumn{
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
}
type CustomersCustomColumnsListCall struct {
s *Service
customerId string
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// List: Returns all the custom columns associated with the customer in full
// detail.
//
// - customerId: The ID of the customer to apply the CustomColumn list
// operation to.
func (r *CustomersCustomColumnsService) List(customerId string) *CustomersCustomColumnsListCall {
c := &CustomersCustomColumnsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.customerId = customerId
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *CustomersCustomColumnsListCall) Fields(s ...googleapi.Field) *CustomersCustomColumnsListCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets an 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.
func (c *CustomersCustomColumnsListCall) IfNoneMatch(entityTag string) *CustomersCustomColumnsListCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method.
func (c *CustomersCustomColumnsListCall) Context(ctx context.Context) *CustomersCustomColumnsListCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *CustomersCustomColumnsListCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *CustomersCustomColumnsListCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
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, "v0/customers/{+customerId}/customColumns")
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{
"customerId": c.customerId,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "searchads360.customers.customColumns.list" call.
// Any non-2xx status code is an error. Response headers are in either
// *GoogleAdsSearchads360V0Services__ListCustomColumnsResponse.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 *CustomersCustomColumnsListCall) Do(opts ...googleapi.CallOption) (*GoogleAdsSearchads360V0Services__ListCustomColumnsResponse, 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 := &GoogleAdsSearchads360V0Services__ListCustomColumnsResponse{
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
}
type CustomersSearchAds360SearchCall struct {
s *Service
customerId string
googleadssearchads360v0services__searchsearchads360request *GoogleAdsSearchads360V0Services__SearchSearchAds360Request
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Search: Returns all rows that match the search query. List of thrown errors:
// AuthenticationError () [AuthorizationError]() HeaderError ()
// [InternalError]() QueryError () [QuotaError]() RequestError ()
//
// - customerId: The ID of the customer being queried.
func (r *CustomersSearchAds360Service) Search(customerId string, googleadssearchads360v0services__searchsearchads360request *GoogleAdsSearchads360V0Services__SearchSearchAds360Request) *CustomersSearchAds360SearchCall {
c := &CustomersSearchAds360SearchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.customerId = customerId
c.googleadssearchads360v0services__searchsearchads360request = googleadssearchads360v0services__searchsearchads360request
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *CustomersSearchAds360SearchCall) Fields(s ...googleapi.Field) *CustomersSearchAds360SearchCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method.
func (c *CustomersSearchAds360SearchCall) Context(ctx context.Context) *CustomersSearchAds360SearchCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *CustomersSearchAds360SearchCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *CustomersSearchAds360SearchCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
var body io.Reader = nil
body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleadssearchads360v0services__searchsearchads360request)
if err != nil {
return nil, err
}
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v0/customers/{+customerId}/searchAds360:search")
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{
"customerId": c.customerId,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "searchads360.customers.searchAds360.search" call.
// Any non-2xx status code is an error. Response headers are in either
// *GoogleAdsSearchads360V0Services__SearchSearchAds360Response.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 *CustomersSearchAds360SearchCall) Do(opts ...googleapi.CallOption) (*GoogleAdsSearchads360V0Services__SearchSearchAds360Response, 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 := &GoogleAdsSearchads360V0Services__SearchSearchAds360Response{
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
}
// 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 *CustomersSearchAds360SearchCall) Pages(ctx context.Context, f func(*GoogleAdsSearchads360V0Services__SearchSearchAds360Response) error) error {
c.ctx_ = ctx
defer func(pt string) { c.googleadssearchads360v0services__searchsearchads360request.PageToken = pt }(c.googleadssearchads360v0services__searchsearchads360request.PageToken)
for {
x, err := c.Do()
if err != nil {
return err
}
if err := f(x); err != nil {
return err
}
if x.NextPageToken == "" {
return nil
}
c.googleadssearchads360v0services__searchsearchads360request.PageToken = x.NextPageToken
}
}
type SearchAds360FieldsGetCall struct {
s *Service
resourceName string
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// Get: Returns just the requested field. List of thrown errors:
// AuthenticationError () [AuthorizationError]() HeaderError ()
// [InternalError]() QuotaError () [RequestError]()
//
// - resourceName: The resource name of the field to get.
func (r *SearchAds360FieldsService) Get(resourceName string) *SearchAds360FieldsGetCall {
c := &SearchAds360FieldsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.resourceName = resourceName
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *SearchAds360FieldsGetCall) Fields(s ...googleapi.Field) *SearchAds360FieldsGetCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets an 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.
func (c *SearchAds360FieldsGetCall) IfNoneMatch(entityTag string) *SearchAds360FieldsGetCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method.
func (c *SearchAds360FieldsGetCall) Context(ctx context.Context) *SearchAds360FieldsGetCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *SearchAds360FieldsGetCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *SearchAds360FieldsGetCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
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, "v0/{+resourceName}")
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{
"resourceName": c.resourceName,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "searchads360.searchAds360Fields.get" call.
// Any non-2xx status code is an error. Response headers are in either
// *GoogleAdsSearchads360V0Resources__SearchAds360Field.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 *SearchAds360FieldsGetCall) Do(opts ...googleapi.CallOption) (*GoogleAdsSearchads360V0Resources__SearchAds360Field, 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 := &GoogleAdsSearchads360V0Resources__SearchAds360Field{
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
}
type SearchAds360FieldsSearchCall struct {
s *Service
googleadssearchads360v0services__searchsearchads360fieldsrequest *GoogleAdsSearchads360V0Services__SearchSearchAds360FieldsRequest
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Search: Returns all fields that match the search query
// (/search-ads/reporting/concepts/field-service#use_a_query_to_get_field_detail
// s). List of thrown errors: AuthenticationError () [AuthorizationError]()
// HeaderError () [InternalError]() QueryError () [QuotaError]() RequestError
// ()
func (r *SearchAds360FieldsService) Search(googleadssearchads360v0services__searchsearchads360fieldsrequest *GoogleAdsSearchads360V0Services__SearchSearchAds360FieldsRequest) *SearchAds360FieldsSearchCall {
c := &SearchAds360FieldsSearchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.googleadssearchads360v0services__searchsearchads360fieldsrequest = googleadssearchads360v0services__searchsearchads360fieldsrequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *SearchAds360FieldsSearchCall) Fields(s ...googleapi.Field) *SearchAds360FieldsSearchCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method.
func (c *SearchAds360FieldsSearchCall) Context(ctx context.Context) *SearchAds360FieldsSearchCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *SearchAds360FieldsSearchCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *SearchAds360FieldsSearchCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
var body io.Reader = nil
body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleadssearchads360v0services__searchsearchads360fieldsrequest)
if err != nil {
return nil, err
}
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v0/searchAds360Fields:search")
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 "searchads360.searchAds360Fields.search" call.
// Any non-2xx status code is an error. Response headers are in either
// *GoogleAdsSearchads360V0Services__SearchSearchAds360FieldsResponse.ServerResp
// onse.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 *SearchAds360FieldsSearchCall) Do(opts ...googleapi.CallOption) (*GoogleAdsSearchads360V0Services__SearchSearchAds360FieldsResponse, 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 := &GoogleAdsSearchads360V0Services__SearchSearchAds360FieldsResponse{
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
}
// 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 *SearchAds360FieldsSearchCall) Pages(ctx context.Context, f func(*GoogleAdsSearchads360V0Services__SearchSearchAds360FieldsResponse) error) error {
c.ctx_ = ctx
defer func(pt string) { c.googleadssearchads360v0services__searchsearchads360fieldsrequest.PageToken = pt }(c.googleadssearchads360v0services__searchsearchads360fieldsrequest.PageToken)
for {
x, err := c.Do()
if err != nil {
return err
}
if err := f(x); err != nil {
return err
}
if x.NextPageToken == "" {
return nil
}
c.googleadssearchads360v0services__searchsearchads360fieldsrequest.PageToken = x.NextPageToken
}
}