blob: d2e39b2ea235673553330fb4956d45337aa9c9a0 [file] [log] [blame]
// Copyright 2020 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 doubleclickbidmanager provides access to the DoubleClick Bid Manager API.
//
// For product documentation, see: https://developers.google.com/bid-manager/
//
// Creating a client
//
// Usage example:
//
// import "google.golang.org/api/doubleclickbidmanager/v1.1"
// ...
// ctx := context.Background()
// doubleclickbidmanagerService, err := doubleclickbidmanager.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 option.WithAPIKey:
//
// doubleclickbidmanagerService, err := doubleclickbidmanager.NewService(ctx, option.WithAPIKey("AIza..."))
//
// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
//
// config := &oauth2.Config{...}
// // ...
// token, err := config.Exchange(ctx, ...)
// doubleclickbidmanagerService, err := doubleclickbidmanager.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
//
// See https://godoc.org/google.golang.org/api/option/ for details on options.
package doubleclickbidmanager // import "google.golang.org/api/doubleclickbidmanager/v1.1"
import (
"bytes"
"context"
"encoding/json"
"errors"
"fmt"
"io"
"net/http"
"net/url"
"strconv"
"strings"
googleapi "google.golang.org/api/googleapi"
gensupport "google.golang.org/api/internal/gensupport"
option "google.golang.org/api/option"
internaloption "google.golang.org/api/option/internaloption"
htransport "google.golang.org/api/transport/http"
)
// Always reference these packages, just in case the auto-generated code
// below doesn't.
var _ = bytes.NewBuffer
var _ = strconv.Itoa
var _ = fmt.Sprintf
var _ = json.NewDecoder
var _ = io.Copy
var _ = url.Parse
var _ = gensupport.MarshalJSON
var _ = googleapi.Version
var _ = errors.New
var _ = strings.Replace
var _ = context.Canceled
var _ = internaloption.WithDefaultEndpoint
const apiId = "doubleclickbidmanager:v1.1"
const apiName = "doubleclickbidmanager"
const apiVersion = "v1.1"
const basePath = "https://doubleclickbidmanager.googleapis.com/doubleclickbidmanager/v1.1/"
const mtlsBasePath = "https://doubleclickbidmanager.mtls.googleapis.com/doubleclickbidmanager/v1.1/"
// OAuth2 scopes used by this API.
const (
// View and manage your reports in DoubleClick Bid Manager
DoubleclickbidmanagerScope = "https://www.googleapis.com/auth/doubleclickbidmanager"
)
// NewService creates a new Service.
func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
scopesOption := option.WithScopes(
"https://www.googleapis.com/auth/doubleclickbidmanager",
)
// NOTE: prepend, so we don't override user-specified scopes.
opts = append([]option.ClientOption{scopesOption}, opts...)
opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
client, endpoint, err := htransport.NewClient(ctx, opts...)
if err != nil {
return nil, err
}
s, err := New(client)
if err != nil {
return nil, err
}
if endpoint != "" {
s.BasePath = endpoint
}
return s, nil
}
// New creates a new Service. It uses the provided http.Client for requests.
//
// Deprecated: please use NewService instead.
// To provide a custom HTTP client, use option.WithHTTPClient.
// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
func New(client *http.Client) (*Service, error) {
if client == nil {
return nil, errors.New("client is nil")
}
s := &Service{client: client, BasePath: basePath}
s.Lineitems = NewLineitemsService(s)
s.Queries = NewQueriesService(s)
s.Reports = NewReportsService(s)
s.Sdf = NewSdfService(s)
return s, nil
}
type Service struct {
client *http.Client
BasePath string // API endpoint base URL
UserAgent string // optional additional User-Agent fragment
Lineitems *LineitemsService
Queries *QueriesService
Reports *ReportsService
Sdf *SdfService
}
func (s *Service) userAgent() string {
if s.UserAgent == "" {
return googleapi.UserAgent
}
return googleapi.UserAgent + " " + s.UserAgent
}
func NewLineitemsService(s *Service) *LineitemsService {
rs := &LineitemsService{s: s}
return rs
}
type LineitemsService struct {
s *Service
}
func NewQueriesService(s *Service) *QueriesService {
rs := &QueriesService{s: s}
return rs
}
type QueriesService struct {
s *Service
}
func NewReportsService(s *Service) *ReportsService {
rs := &ReportsService{s: s}
return rs
}
type ReportsService struct {
s *Service
}
func NewSdfService(s *Service) *SdfService {
rs := &SdfService{s: s}
return rs
}
type SdfService struct {
s *Service
}
// ChannelGrouping: A channel grouping defines a set of rules that can
// be used to categorize events in a path report.
type ChannelGrouping struct {
// FallbackName: The name to apply to an event that does not match any
// of the rules in the channel grouping.
FallbackName string `json:"fallbackName,omitempty"`
// Name: Channel Grouping name.
Name string `json:"name,omitempty"`
// Rules: Rules within Channel Grouping. There is a limit of 100 rules
// that can be set per channel grouping.
Rules []*Rule `json:"rules,omitempty"`
// ForceSendFields is a list of field names (e.g. "FallbackName") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FallbackName") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ChannelGrouping) MarshalJSON() ([]byte, error) {
type NoMethod ChannelGrouping
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DisjunctiveMatchStatement: DisjunctiveMatchStatement that OR's all
// contained filters.
type DisjunctiveMatchStatement struct {
// EventFilters: Filters. There is a limit of 100 filters that can be
// set per disjunctive match statement.
EventFilters []*EventFilter `json:"eventFilters,omitempty"`
// ForceSendFields is a list of field names (e.g. "EventFilters") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "EventFilters") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DisjunctiveMatchStatement) MarshalJSON() ([]byte, error) {
type NoMethod DisjunctiveMatchStatement
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DownloadLineItemsRequest: Request to fetch stored line items.
type DownloadLineItemsRequest struct {
// FileSpec: File specification (column names, types, order) in which
// the line items will be returned. Default to EWF.
//
// Possible values:
// "EWF"
FileSpec string `json:"fileSpec,omitempty"`
// FilterIds: Ids of the specified filter type used to filter line items
// to fetch. If omitted, all the line items will be returned.
FilterIds googleapi.Int64s `json:"filterIds,omitempty"`
// FilterType: Filter type used to filter line items to fetch.
//
// Possible values:
// "ADVERTISER_ID"
// "INSERTION_ORDER_ID"
// "LINE_ITEM_ID"
FilterType string `json:"filterType,omitempty"`
// Format: Format in which the line items will be returned. Default to
// CSV.
//
// Possible values:
// "CSV"
Format string `json:"format,omitempty"`
// ForceSendFields is a list of field names (e.g. "FileSpec") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FileSpec") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DownloadLineItemsRequest) MarshalJSON() ([]byte, error) {
type NoMethod DownloadLineItemsRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DownloadLineItemsResponse: Download line items response.
type DownloadLineItemsResponse struct {
// LineItems: Retrieved line items in CSV format. For more information
// about file formats, see Entity Write File Format.
LineItems string `json:"lineItems,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "LineItems") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "LineItems") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DownloadLineItemsResponse) MarshalJSON() ([]byte, error) {
type NoMethod DownloadLineItemsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DownloadRequest: Request to fetch stored inventory sources,
// campaigns, insertion orders, line items, YouTube ad groups and ads.
type DownloadRequest struct {
// FileTypes: File types that will be returned. If INVENTORY_SOURCE is
// requested, no other file types may be requested. Acceptable values
// are: - "AD" - "AD_GROUP" - "CAMPAIGN" - "INSERTION_ORDER" -
// "INVENTORY_SOURCE" - "LINE_ITEM"
//
// Possible values:
// "INSERTION_ORDER"
// "LINE_ITEM"
// "AD_GROUP"
// "AD"
// "CAMPAIGN"
// "INVENTORY_SOURCE"
FileTypes []string `json:"fileTypes,omitempty"`
// FilterIds: The IDs of the specified filter type. This is used to
// filter entities to fetch. At least one ID must be specified.
FilterIds googleapi.Int64s `json:"filterIds,omitempty"`
// FilterType: Filter type used to filter entities to fetch. PARTNER_ID
// and INVENTORY_SOURCE_ID may only be used when downloading inventory
// sources.
//
// Possible values:
// "ADVERTISER_ID"
// "INSERTION_ORDER_ID"
// "LINE_ITEM_ID"
// "CAMPAIGN_ID"
// "INVENTORY_SOURCE_ID"
// "PARTNER_ID"
FilterType string `json:"filterType,omitempty"`
// Version: SDF Version (column names, types, order) in which the
// entities will be returned. Default to 5.
Version string `json:"version,omitempty"`
// ForceSendFields is a list of field names (e.g. "FileTypes") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FileTypes") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DownloadRequest) MarshalJSON() ([]byte, error) {
type NoMethod DownloadRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DownloadResponse: Download response.
type DownloadResponse struct {
// AdGroups: Retrieved ad groups in SDF format.
AdGroups string `json:"adGroups,omitempty"`
// Ads: Retrieved ads in SDF format.
Ads string `json:"ads,omitempty"`
// Campaigns: Retrieved campaigns in SDF format.
Campaigns string `json:"campaigns,omitempty"`
// InsertionOrders: Retrieved insertion orders in SDF format.
InsertionOrders string `json:"insertionOrders,omitempty"`
InventorySources string `json:"inventorySources,omitempty"`
// LineItems: Retrieved line items in SDF format.
LineItems string `json:"lineItems,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "AdGroups") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdGroups") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DownloadResponse) MarshalJSON() ([]byte, error) {
type NoMethod DownloadResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// EventFilter: Defines the type of filter to be applied to the path, a
// DV360 event dimension filter.
type EventFilter struct {
// DimensionFilter: Filter on a dimension.
DimensionFilter *PathQueryOptionsFilter `json:"dimensionFilter,omitempty"`
// ForceSendFields is a list of field names (e.g. "DimensionFilter") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DimensionFilter") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *EventFilter) MarshalJSON() ([]byte, error) {
type NoMethod EventFilter
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// FilterPair: Filter used to match traffic data in your report.
type FilterPair struct {
// Type: Filter type.
//
// Possible values:
// "FILTER_UNKNOWN"
// "FILTER_DATE"
// "FILTER_DAY_OF_WEEK"
// "FILTER_WEEK"
// "FILTER_MONTH"
// "FILTER_YEAR"
// "FILTER_TIME_OF_DAY"
// "FILTER_CONVERSION_DELAY"
// "FILTER_CREATIVE_ID"
// "FILTER_CREATIVE_SIZE"
// "FILTER_CREATIVE_TYPE"
// "FILTER_EXCHANGE_ID"
// "FILTER_AD_POSITION"
// "FILTER_PUBLIC_INVENTORY"
// "FILTER_INVENTORY_SOURCE"
// "FILTER_CITY"
// "FILTER_REGION"
// "FILTER_DMA"
// "FILTER_COUNTRY"
// "FILTER_SITE_ID"
// "FILTER_CHANNEL_ID"
// "FILTER_PARTNER"
// "FILTER_ADVERTISER"
// "FILTER_INSERTION_ORDER"
// "FILTER_LINE_ITEM"
// "FILTER_PARTNER_CURRENCY"
// "FILTER_ADVERTISER_CURRENCY"
// "FILTER_ADVERTISER_TIMEZONE"
// "FILTER_LINE_ITEM_TYPE"
// "FILTER_USER_LIST"
// "FILTER_USER_LIST_FIRST_PARTY"
// "FILTER_USER_LIST_THIRD_PARTY"
// "FILTER_TARGETED_USER_LIST"
// "FILTER_DATA_PROVIDER"
// "FILTER_ORDER_ID"
// "FILTER_VIDEO_PLAYER_SIZE"
// "FILTER_VIDEO_DURATION_SECONDS"
// "FILTER_KEYWORD"
// "FILTER_PAGE_CATEGORY"
// "FILTER_CAMPAIGN_DAILY_FREQUENCY"
// "FILTER_LINE_ITEM_DAILY_FREQUENCY"
// "FILTER_LINE_ITEM_LIFETIME_FREQUENCY"
// "FILTER_OS"
// "FILTER_BROWSER"
// "FILTER_CARRIER"
// "FILTER_SITE_LANGUAGE"
// "FILTER_INVENTORY_FORMAT"
// "FILTER_ZIP_CODE"
// "FILTER_VIDEO_RATING_TIER"
// "FILTER_VIDEO_FORMAT_SUPPORT"
// "FILTER_VIDEO_SKIPPABLE_SUPPORT"
// "FILTER_VIDEO_VPAID_SUPPORT"
// "FILTER_VIDEO_CREATIVE_DURATION"
// "FILTER_PAGE_LAYOUT"
// "FILTER_VIDEO_AD_POSITION_IN_STREAM"
// "FILTER_AGE"
// "FILTER_GENDER"
// "FILTER_QUARTER"
// "FILTER_TRUEVIEW_CONVERSION_TYPE"
// "FILTER_MOBILE_GEO"
// "FILTER_MRAID_SUPPORT"
// "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY"
// "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE"
// "FILTER_NIELSEN_COUNTRY_CODE"
// "FILTER_NIELSEN_DEVICE_ID"
// "FILTER_NIELSEN_GENDER"
// "FILTER_NIELSEN_AGE"
// "FILTER_INVENTORY_SOURCE_TYPE"
// "FILTER_CREATIVE_WIDTH"
// "FILTER_CREATIVE_HEIGHT"
// "FILTER_DFP_ORDER_ID"
// "FILTER_TRUEVIEW_AGE"
// "FILTER_TRUEVIEW_GENDER"
// "FILTER_TRUEVIEW_PARENTAL_STATUS"
// "FILTER_TRUEVIEW_REMARKETING_LIST"
// "FILTER_TRUEVIEW_INTEREST"
// "FILTER_TRUEVIEW_AD_GROUP_ID"
// "FILTER_TRUEVIEW_AD_GROUP_AD_ID"
// "FILTER_TRUEVIEW_IAR_LANGUAGE"
// "FILTER_TRUEVIEW_IAR_GENDER"
// "FILTER_TRUEVIEW_IAR_AGE"
// "FILTER_TRUEVIEW_IAR_CATEGORY"
// "FILTER_TRUEVIEW_IAR_COUNTRY"
// "FILTER_TRUEVIEW_IAR_CITY"
// "FILTER_TRUEVIEW_IAR_REGION"
// "FILTER_TRUEVIEW_IAR_ZIPCODE"
// "FILTER_TRUEVIEW_IAR_REMARKETING_LIST"
// "FILTER_TRUEVIEW_IAR_INTEREST"
// "FILTER_TRUEVIEW_IAR_PARENTAL_STATUS"
// "FILTER_TRUEVIEW_IAR_TIME_OF_DAY"
// "FILTER_TRUEVIEW_CUSTOM_AFFINITY"
// "FILTER_TRUEVIEW_CATEGORY"
// "FILTER_TRUEVIEW_KEYWORD"
// "FILTER_TRUEVIEW_PLACEMENT"
// "FILTER_TRUEVIEW_URL"
// "FILTER_TRUEVIEW_COUNTRY"
// "FILTER_TRUEVIEW_REGION"
// "FILTER_TRUEVIEW_CITY"
// "FILTER_TRUEVIEW_DMA"
// "FILTER_TRUEVIEW_ZIPCODE"
// "FILTER_NOT_SUPPORTED"
// "FILTER_MEDIA_PLAN"
// "FILTER_TRUEVIEW_IAR_YOUTUBE_CHANNEL"
// "FILTER_TRUEVIEW_IAR_YOUTUBE_VIDEO"
// "FILTER_SKIPPABLE_SUPPORT"
// "FILTER_COMPANION_CREATIVE_ID"
// "FILTER_BUDGET_SEGMENT_DESCRIPTION"
// "FILTER_FLOODLIGHT_ACTIVITY_ID"
// "FILTER_DEVICE_MODEL"
// "FILTER_DEVICE_MAKE"
// "FILTER_DEVICE_TYPE"
// "FILTER_CREATIVE_ATTRIBUTE"
// "FILTER_INVENTORY_COMMITMENT_TYPE"
// "FILTER_INVENTORY_RATE_TYPE"
// "FILTER_INVENTORY_DELIVERY_METHOD"
// "FILTER_INVENTORY_SOURCE_EXTERNAL_ID"
// "FILTER_AUTHORIZED_SELLER_STATE"
// "FILTER_VIDEO_DURATION_SECONDS_RANGE"
// "FILTER_PARTNER_NAME"
// "FILTER_PARTNER_STATUS"
// "FILTER_ADVERTISER_NAME"
// "FILTER_ADVERTISER_INTEGRATION_CODE"
// "FILTER_ADVERTISER_INTEGRATION_STATUS"
// "FILTER_CARRIER_NAME"
// "FILTER_CHANNEL_NAME"
// "FILTER_CITY_NAME"
// "FILTER_COMPANION_CREATIVE_NAME"
// "FILTER_USER_LIST_FIRST_PARTY_NAME"
// "FILTER_USER_LIST_THIRD_PARTY_NAME"
// "FILTER_NIELSEN_RESTATEMENT_DATE"
// "FILTER_NIELSEN_DATE_RANGE"
// "FILTER_INSERTION_ORDER_NAME"
// "FILTER_REGION_NAME"
// "FILTER_DMA_NAME"
// "FILTER_TRUEVIEW_IAR_REGION_NAME"
// "FILTER_TRUEVIEW_DMA_NAME"
// "FILTER_TRUEVIEW_REGION_NAME"
// "FILTER_ACTIVE_VIEW_CUSTOM_METRIC_ID"
// "FILTER_ACTIVE_VIEW_CUSTOM_METRIC_NAME"
// "FILTER_AD_TYPE"
// "FILTER_ALGORITHM"
// "FILTER_ALGORITHM_ID"
// "FILTER_AMP_PAGE_REQUEST"
// "FILTER_ANONYMOUS_INVENTORY_MODELING"
// "FILTER_APP_URL"
// "FILTER_APP_URL_EXCLUDED"
// "FILTER_ATTRIBUTED_USERLIST"
// "FILTER_ATTRIBUTED_USERLIST_COST"
// "FILTER_ATTRIBUTED_USERLIST_TYPE"
// "FILTER_ATTRIBUTION_MODEL"
// "FILTER_AUDIENCE_LIST"
// "FILTER_AUDIENCE_LIST_COST"
// "FILTER_AUDIENCE_LIST_TYPE"
// "FILTER_AUDIENCE_NAME"
// "FILTER_AUDIENCE_TYPE"
// "FILTER_BILLABLE_OUTCOME"
// "FILTER_BRAND_LIFT_TYPE"
// "FILTER_CHANNEL_TYPE"
// "FILTER_CM_PLACEMENT_ID"
// "FILTER_CONVERSION_SOURCE"
// "FILTER_CONVERSION_SOURCE_ID"
// "FILTER_COUNTRY_ID"
// "FILTER_CREATIVE"
// "FILTER_CREATIVE_ASSET"
// "FILTER_CREATIVE_INTEGRATION_CODE"
// "FILTER_CREATIVE_RENDERED_IN_AMP"
// "FILTER_CREATIVE_SOURCE"
// "FILTER_CREATIVE_STATUS"
// "FILTER_DATA_PROVIDER_NAME"
// "FILTER_DETAILED_DEMOGRAPHICS"
// "FILTER_DETAILED_DEMOGRAPHICS_ID"
// "FILTER_DEVICE"
// "FILTER_GAM_INSERTION_ORDER"
// "FILTER_GAM_LINE_ITEM"
// "FILTER_GAM_LINE_ITEM_ID"
// "FILTER_DIGITAL_CONTENT_LABEL"
// "FILTER_DOMAIN"
// "FILTER_ELIGIBLE_COOKIES_ON_FIRST_PARTY_AUDIENCE_LIST"
// "FILTER_ELIGIBLE_COOKIES_ON_THIRD_PARTY_AUDIENCE_LIST_AND_INTEREST"
// "FILTER_EXCHANGE"
// "FILTER_EXCHANGE_CODE"
// "FILTER_EXTENSION"
// "FILTER_EXTENSION_STATUS"
// "FILTER_EXTENSION_TYPE"
// "FILTER_FIRST_PARTY_AUDIENCE_LIST_COST"
// "FILTER_FIRST_PARTY_AUDIENCE_LIST_TYPE"
// "FILTER_FLOODLIGHT_ACTIVITY"
// "FILTER_FORMAT"
// "FILTER_GMAIL_AGE"
// "FILTER_GMAIL_CITY"
// "FILTER_GMAIL_COUNTRY"
// "FILTER_GMAIL_COUNTRY_NAME"
// "FILTER_GMAIL_DEVICE_TYPE"
// "FILTER_GMAIL_DEVICE_TYPE_NAME"
// "FILTER_GMAIL_GENDER"
// "FILTER_GMAIL_REGION"
// "FILTER_GMAIL_REMARKETING_LIST"
// "FILTER_HOUSEHOLD_INCOME"
// "FILTER_IMPRESSION_COUNTING_METHOD"
// "FILTER_YOUTUBE_PROGRAMMATIC_GUARANTEED_INSERTION_ORDER"
// "FILTER_INSERTION_ORDER_INTEGRATION_CODE"
// "FILTER_INSERTION_ORDER_STATUS"
// "FILTER_INTEREST"
// "FILTER_INVENTORY_SOURCE_GROUP"
// "FILTER_INVENTORY_SOURCE_GROUP_ID"
// "FILTER_INVENTORY_SOURCE_ID"
// "FILTER_INVENTORY_SOURCE_NAME"
// "FILTER_LIFE_EVENT"
// "FILTER_LIFE_EVENTS"
// "FILTER_LINE_ITEM_INTEGRATION_CODE"
// "FILTER_LINE_ITEM_NAME"
// "FILTER_LINE_ITEM_STATUS"
// "FILTER_MATCH_RATIO"
// "FILTER_MEASUREMENT_SOURCE"
// "FILTER_MEDIA_PLAN_NAME"
// "FILTER_PARENTAL_STATUS"
// "FILTER_PLACEMENT_ALL_YOUTUBE_CHANNELS"
// "FILTER_PLATFORM"
// "FILTER_PLAYBACK_METHOD"
// "FILTER_POSITION_IN_CONTENT"
// "FILTER_PUBLISHER_PROPERTY"
// "FILTER_PUBLISHER_PROPERTY_ID"
// "FILTER_PUBLISHER_PROPERTY_SECTION"
// "FILTER_PUBLISHER_PROPERTY_SECTION_ID"
// "FILTER_REFUND_REASON"
// "FILTER_REMARKETING_LIST"
// "FILTER_REWARDED"
// "FILTER_SENSITIVE_CATEGORY"
// "FILTER_SERVED_PIXEL_DENSITY"
// "FILTER_TARGETED_DATA_PROVIDERS"
// "FILTER_THIRD_PARTY_AUDIENCE_LIST_COST"
// "FILTER_THIRD_PARTY_AUDIENCE_LIST_TYPE"
// "FILTER_TRUEVIEW_AD"
// "FILTER_TRUEVIEW_AD_GROUP"
// "FILTER_TRUEVIEW_DETAILED_DEMOGRAPHICS"
// "FILTER_TRUEVIEW_DETAILED_DEMOGRAPHICS_ID"
// "FILTER_TRUEVIEW_HOUSEHOLD_INCOME"
// "FILTER_TRUEVIEW_IAR_COUNTRY_NAME"
// "FILTER_TRUEVIEW_REMARKETING_LIST_NAME"
// "FILTER_VARIANT_ID"
// "FILTER_VARIANT_NAME"
// "FILTER_VARIANT_VERSION"
// "FILTER_VERIFICATION_VIDEO_PLAYER_SIZE"
// "FILTER_VERIFICATION_VIDEO_POSITION"
// "FILTER_VIDEO_COMPANION_CREATIVE_SIZE"
// "FILTER_VIDEO_CONTINUOUS_PLAY"
// "FILTER_VIDEO_DURATION"
// "FILTER_YOUTUBE_ADAPTED_AUDIENCE_LIST"
// "FILTER_YOUTUBE_AD_VIDEO"
// "FILTER_YOUTUBE_AD_VIDEO_ID"
// "FILTER_YOUTUBE_CHANNEL"
// "FILTER_YOUTUBE_PROGRAMMATIC_GUARANTEED_ADVERTISER"
// "FILTER_YOUTUBE_PROGRAMMATIC_GUARANTEED_PARTNER"
// "FILTER_YOUTUBE_VIDEO"
// "FILTER_ZIP_POSTAL_CODE"
// "FILTER_PLACEMENT_NAME_ALL_YOUTUBE_CHANNELS"
// "FILTER_TRUEVIEW_PLACEMENT_ID"
// "FILTER_PATH_PATTERN_ID"
// "FILTER_PATH_EVENT_INDEX"
// "FILTER_EVENT_TYPE"
// "FILTER_CHANNEL_GROUPING"
Type string `json:"type,omitempty"`
// Value: Filter value.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Type") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Type") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *FilterPair) MarshalJSON() ([]byte, error) {
type NoMethod FilterPair
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListQueriesResponse: List queries response.
type ListQueriesResponse struct {
// Kind: Identifies what kind of resource this is. Value: the fixed
// string "doubleclickbidmanager#listQueriesResponse".
Kind string `json:"kind,omitempty"`
// NextPageToken: Next page's pagination token if one exists.
NextPageToken string `json:"nextPageToken,omitempty"`
// Queries: Retrieved queries.
Queries []*Query `json:"queries,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Kind") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Kind") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListQueriesResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListQueriesResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListReportsResponse: List reports response.
type ListReportsResponse struct {
// Kind: Identifies what kind of resource this is. Value: the fixed
// string "doubleclickbidmanager#listReportsResponse".
Kind string `json:"kind,omitempty"`
// NextPageToken: Next page's pagination token if one exists.
NextPageToken string `json:"nextPageToken,omitempty"`
// Reports: Retrieved reports.
Reports []*Report `json:"reports,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Kind") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Kind") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListReportsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListReportsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Options: Additional query options.
type Options struct {
// IncludeOnlyTargetedUserLists: Set to true and filter your report by
// `FILTER_INSERTION_ORDER` or `FILTER_LINE_ITEM` to include data for
// audience lists specifically targeted by those items.
IncludeOnlyTargetedUserLists bool `json:"includeOnlyTargetedUserLists,omitempty"`
// PathQueryOptions: Options that contain Path Filters and Custom
// Channel Groupings.
PathQueryOptions *PathQueryOptions `json:"pathQueryOptions,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "IncludeOnlyTargetedUserLists") to unconditionally include in API
// requests. By default, fields with empty values are omitted from API
// requests. However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g.
// "IncludeOnlyTargetedUserLists") to include in API requests with the
// JSON null value. By default, fields with empty values are omitted
// from API requests. However, any field with an empty value appearing
// in NullFields will be sent to the server as null. It is an error if a
// field in this list has a non-empty value. This may be used to include
// null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Options) MarshalJSON() ([]byte, error) {
type NoMethod Options
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Parameters: Parameters of a query or report.
type Parameters struct {
// Filters: Filters used to match traffic data in your report.
Filters []*FilterPair `json:"filters,omitempty"`
// GroupBys: Data is grouped by the filters listed in this field.
//
// Possible values:
// "FILTER_UNKNOWN"
// "FILTER_DATE"
// "FILTER_DAY_OF_WEEK"
// "FILTER_WEEK"
// "FILTER_MONTH"
// "FILTER_YEAR"
// "FILTER_TIME_OF_DAY"
// "FILTER_CONVERSION_DELAY"
// "FILTER_CREATIVE_ID"
// "FILTER_CREATIVE_SIZE"
// "FILTER_CREATIVE_TYPE"
// "FILTER_EXCHANGE_ID"
// "FILTER_AD_POSITION"
// "FILTER_PUBLIC_INVENTORY"
// "FILTER_INVENTORY_SOURCE"
// "FILTER_CITY"
// "FILTER_REGION"
// "FILTER_DMA"
// "FILTER_COUNTRY"
// "FILTER_SITE_ID"
// "FILTER_CHANNEL_ID"
// "FILTER_PARTNER"
// "FILTER_ADVERTISER"
// "FILTER_INSERTION_ORDER"
// "FILTER_LINE_ITEM"
// "FILTER_PARTNER_CURRENCY"
// "FILTER_ADVERTISER_CURRENCY"
// "FILTER_ADVERTISER_TIMEZONE"
// "FILTER_LINE_ITEM_TYPE"
// "FILTER_USER_LIST"
// "FILTER_USER_LIST_FIRST_PARTY"
// "FILTER_USER_LIST_THIRD_PARTY"
// "FILTER_TARGETED_USER_LIST"
// "FILTER_DATA_PROVIDER"
// "FILTER_ORDER_ID"
// "FILTER_VIDEO_PLAYER_SIZE"
// "FILTER_VIDEO_DURATION_SECONDS"
// "FILTER_KEYWORD"
// "FILTER_PAGE_CATEGORY"
// "FILTER_CAMPAIGN_DAILY_FREQUENCY"
// "FILTER_LINE_ITEM_DAILY_FREQUENCY"
// "FILTER_LINE_ITEM_LIFETIME_FREQUENCY"
// "FILTER_OS"
// "FILTER_BROWSER"
// "FILTER_CARRIER"
// "FILTER_SITE_LANGUAGE"
// "FILTER_INVENTORY_FORMAT"
// "FILTER_ZIP_CODE"
// "FILTER_VIDEO_RATING_TIER"
// "FILTER_VIDEO_FORMAT_SUPPORT"
// "FILTER_VIDEO_SKIPPABLE_SUPPORT"
// "FILTER_VIDEO_VPAID_SUPPORT"
// "FILTER_VIDEO_CREATIVE_DURATION"
// "FILTER_PAGE_LAYOUT"
// "FILTER_VIDEO_AD_POSITION_IN_STREAM"
// "FILTER_AGE"
// "FILTER_GENDER"
// "FILTER_QUARTER"
// "FILTER_TRUEVIEW_CONVERSION_TYPE"
// "FILTER_MOBILE_GEO"
// "FILTER_MRAID_SUPPORT"
// "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY"
// "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE"
// "FILTER_NIELSEN_COUNTRY_CODE"
// "FILTER_NIELSEN_DEVICE_ID"
// "FILTER_NIELSEN_GENDER"
// "FILTER_NIELSEN_AGE"
// "FILTER_INVENTORY_SOURCE_TYPE"
// "FILTER_CREATIVE_WIDTH"
// "FILTER_CREATIVE_HEIGHT"
// "FILTER_DFP_ORDER_ID"
// "FILTER_TRUEVIEW_AGE"
// "FILTER_TRUEVIEW_GENDER"
// "FILTER_TRUEVIEW_PARENTAL_STATUS"
// "FILTER_TRUEVIEW_REMARKETING_LIST"
// "FILTER_TRUEVIEW_INTEREST"
// "FILTER_TRUEVIEW_AD_GROUP_ID"
// "FILTER_TRUEVIEW_AD_GROUP_AD_ID"
// "FILTER_TRUEVIEW_IAR_LANGUAGE"
// "FILTER_TRUEVIEW_IAR_GENDER"
// "FILTER_TRUEVIEW_IAR_AGE"
// "FILTER_TRUEVIEW_IAR_CATEGORY"
// "FILTER_TRUEVIEW_IAR_COUNTRY"
// "FILTER_TRUEVIEW_IAR_CITY"
// "FILTER_TRUEVIEW_IAR_REGION"
// "FILTER_TRUEVIEW_IAR_ZIPCODE"
// "FILTER_TRUEVIEW_IAR_REMARKETING_LIST"
// "FILTER_TRUEVIEW_IAR_INTEREST"
// "FILTER_TRUEVIEW_IAR_PARENTAL_STATUS"
// "FILTER_TRUEVIEW_IAR_TIME_OF_DAY"
// "FILTER_TRUEVIEW_CUSTOM_AFFINITY"
// "FILTER_TRUEVIEW_CATEGORY"
// "FILTER_TRUEVIEW_KEYWORD"
// "FILTER_TRUEVIEW_PLACEMENT"
// "FILTER_TRUEVIEW_URL"
// "FILTER_TRUEVIEW_COUNTRY"
// "FILTER_TRUEVIEW_REGION"
// "FILTER_TRUEVIEW_CITY"
// "FILTER_TRUEVIEW_DMA"
// "FILTER_TRUEVIEW_ZIPCODE"
// "FILTER_NOT_SUPPORTED"
// "FILTER_MEDIA_PLAN"
// "FILTER_TRUEVIEW_IAR_YOUTUBE_CHANNEL"
// "FILTER_TRUEVIEW_IAR_YOUTUBE_VIDEO"
// "FILTER_SKIPPABLE_SUPPORT"
// "FILTER_COMPANION_CREATIVE_ID"
// "FILTER_BUDGET_SEGMENT_DESCRIPTION"
// "FILTER_FLOODLIGHT_ACTIVITY_ID"
// "FILTER_DEVICE_MODEL"
// "FILTER_DEVICE_MAKE"
// "FILTER_DEVICE_TYPE"
// "FILTER_CREATIVE_ATTRIBUTE"
// "FILTER_INVENTORY_COMMITMENT_TYPE"
// "FILTER_INVENTORY_RATE_TYPE"
// "FILTER_INVENTORY_DELIVERY_METHOD"
// "FILTER_INVENTORY_SOURCE_EXTERNAL_ID"
// "FILTER_AUTHORIZED_SELLER_STATE"
// "FILTER_VIDEO_DURATION_SECONDS_RANGE"
// "FILTER_PARTNER_NAME"
// "FILTER_PARTNER_STATUS"
// "FILTER_ADVERTISER_NAME"
// "FILTER_ADVERTISER_INTEGRATION_CODE"
// "FILTER_ADVERTISER_INTEGRATION_STATUS"
// "FILTER_CARRIER_NAME"
// "FILTER_CHANNEL_NAME"
// "FILTER_CITY_NAME"
// "FILTER_COMPANION_CREATIVE_NAME"
// "FILTER_USER_LIST_FIRST_PARTY_NAME"
// "FILTER_USER_LIST_THIRD_PARTY_NAME"
// "FILTER_NIELSEN_RESTATEMENT_DATE"
// "FILTER_NIELSEN_DATE_RANGE"
// "FILTER_INSERTION_ORDER_NAME"
// "FILTER_REGION_NAME"
// "FILTER_DMA_NAME"
// "FILTER_TRUEVIEW_IAR_REGION_NAME"
// "FILTER_TRUEVIEW_DMA_NAME"
// "FILTER_TRUEVIEW_REGION_NAME"
// "FILTER_ACTIVE_VIEW_CUSTOM_METRIC_ID"
// "FILTER_ACTIVE_VIEW_CUSTOM_METRIC_NAME"
// "FILTER_AD_TYPE"
// "FILTER_ALGORITHM"
// "FILTER_ALGORITHM_ID"
// "FILTER_AMP_PAGE_REQUEST"
// "FILTER_ANONYMOUS_INVENTORY_MODELING"
// "FILTER_APP_URL"
// "FILTER_APP_URL_EXCLUDED"
// "FILTER_ATTRIBUTED_USERLIST"
// "FILTER_ATTRIBUTED_USERLIST_COST"
// "FILTER_ATTRIBUTED_USERLIST_TYPE"
// "FILTER_ATTRIBUTION_MODEL"
// "FILTER_AUDIENCE_LIST"
// "FILTER_AUDIENCE_LIST_COST"
// "FILTER_AUDIENCE_LIST_TYPE"
// "FILTER_AUDIENCE_NAME"
// "FILTER_AUDIENCE_TYPE"
// "FILTER_BILLABLE_OUTCOME"
// "FILTER_BRAND_LIFT_TYPE"
// "FILTER_CHANNEL_TYPE"
// "FILTER_CM_PLACEMENT_ID"
// "FILTER_CONVERSION_SOURCE"
// "FILTER_CONVERSION_SOURCE_ID"
// "FILTER_COUNTRY_ID"
// "FILTER_CREATIVE"
// "FILTER_CREATIVE_ASSET"
// "FILTER_CREATIVE_INTEGRATION_CODE"
// "FILTER_CREATIVE_RENDERED_IN_AMP"
// "FILTER_CREATIVE_SOURCE"
// "FILTER_CREATIVE_STATUS"
// "FILTER_DATA_PROVIDER_NAME"
// "FILTER_DETAILED_DEMOGRAPHICS"
// "FILTER_DETAILED_DEMOGRAPHICS_ID"
// "FILTER_DEVICE"
// "FILTER_GAM_INSERTION_ORDER"
// "FILTER_GAM_LINE_ITEM"
// "FILTER_GAM_LINE_ITEM_ID"
// "FILTER_DIGITAL_CONTENT_LABEL"
// "FILTER_DOMAIN"
// "FILTER_ELIGIBLE_COOKIES_ON_FIRST_PARTY_AUDIENCE_LIST"
// "FILTER_ELIGIBLE_COOKIES_ON_THIRD_PARTY_AUDIENCE_LIST_AND_INTEREST"
// "FILTER_EXCHANGE"
// "FILTER_EXCHANGE_CODE"
// "FILTER_EXTENSION"
// "FILTER_EXTENSION_STATUS"
// "FILTER_EXTENSION_TYPE"
// "FILTER_FIRST_PARTY_AUDIENCE_LIST_COST"
// "FILTER_FIRST_PARTY_AUDIENCE_LIST_TYPE"
// "FILTER_FLOODLIGHT_ACTIVITY"
// "FILTER_FORMAT"
// "FILTER_GMAIL_AGE"
// "FILTER_GMAIL_CITY"
// "FILTER_GMAIL_COUNTRY"
// "FILTER_GMAIL_COUNTRY_NAME"
// "FILTER_GMAIL_DEVICE_TYPE"
// "FILTER_GMAIL_DEVICE_TYPE_NAME"
// "FILTER_GMAIL_GENDER"
// "FILTER_GMAIL_REGION"
// "FILTER_GMAIL_REMARKETING_LIST"
// "FILTER_HOUSEHOLD_INCOME"
// "FILTER_IMPRESSION_COUNTING_METHOD"
// "FILTER_YOUTUBE_PROGRAMMATIC_GUARANTEED_INSERTION_ORDER"
// "FILTER_INSERTION_ORDER_INTEGRATION_CODE"
// "FILTER_INSERTION_ORDER_STATUS"
// "FILTER_INTEREST"
// "FILTER_INVENTORY_SOURCE_GROUP"
// "FILTER_INVENTORY_SOURCE_GROUP_ID"
// "FILTER_INVENTORY_SOURCE_ID"
// "FILTER_INVENTORY_SOURCE_NAME"
// "FILTER_LIFE_EVENT"
// "FILTER_LIFE_EVENTS"
// "FILTER_LINE_ITEM_INTEGRATION_CODE"
// "FILTER_LINE_ITEM_NAME"
// "FILTER_LINE_ITEM_STATUS"
// "FILTER_MATCH_RATIO"
// "FILTER_MEASUREMENT_SOURCE"
// "FILTER_MEDIA_PLAN_NAME"
// "FILTER_PARENTAL_STATUS"
// "FILTER_PLACEMENT_ALL_YOUTUBE_CHANNELS"
// "FILTER_PLATFORM"
// "FILTER_PLAYBACK_METHOD"
// "FILTER_POSITION_IN_CONTENT"
// "FILTER_PUBLISHER_PROPERTY"
// "FILTER_PUBLISHER_PROPERTY_ID"
// "FILTER_PUBLISHER_PROPERTY_SECTION"
// "FILTER_PUBLISHER_PROPERTY_SECTION_ID"
// "FILTER_REFUND_REASON"
// "FILTER_REMARKETING_LIST"
// "FILTER_REWARDED"
// "FILTER_SENSITIVE_CATEGORY"
// "FILTER_SERVED_PIXEL_DENSITY"
// "FILTER_TARGETED_DATA_PROVIDERS"
// "FILTER_THIRD_PARTY_AUDIENCE_LIST_COST"
// "FILTER_THIRD_PARTY_AUDIENCE_LIST_TYPE"
// "FILTER_TRUEVIEW_AD"
// "FILTER_TRUEVIEW_AD_GROUP"
// "FILTER_TRUEVIEW_DETAILED_DEMOGRAPHICS"
// "FILTER_TRUEVIEW_DETAILED_DEMOGRAPHICS_ID"
// "FILTER_TRUEVIEW_HOUSEHOLD_INCOME"
// "FILTER_TRUEVIEW_IAR_COUNTRY_NAME"
// "FILTER_TRUEVIEW_REMARKETING_LIST_NAME"
// "FILTER_VARIANT_ID"
// "FILTER_VARIANT_NAME"
// "FILTER_VARIANT_VERSION"
// "FILTER_VERIFICATION_VIDEO_PLAYER_SIZE"
// "FILTER_VERIFICATION_VIDEO_POSITION"
// "FILTER_VIDEO_COMPANION_CREATIVE_SIZE"
// "FILTER_VIDEO_CONTINUOUS_PLAY"
// "FILTER_VIDEO_DURATION"
// "FILTER_YOUTUBE_ADAPTED_AUDIENCE_LIST"
// "FILTER_YOUTUBE_AD_VIDEO"
// "FILTER_YOUTUBE_AD_VIDEO_ID"
// "FILTER_YOUTUBE_CHANNEL"
// "FILTER_YOUTUBE_PROGRAMMATIC_GUARANTEED_ADVERTISER"
// "FILTER_YOUTUBE_PROGRAMMATIC_GUARANTEED_PARTNER"
// "FILTER_YOUTUBE_VIDEO"
// "FILTER_ZIP_POSTAL_CODE"
// "FILTER_PLACEMENT_NAME_ALL_YOUTUBE_CHANNELS"
// "FILTER_TRUEVIEW_PLACEMENT_ID"
// "FILTER_PATH_PATTERN_ID"
// "FILTER_PATH_EVENT_INDEX"
// "FILTER_EVENT_TYPE"
// "FILTER_CHANNEL_GROUPING"
GroupBys []string `json:"groupBys,omitempty"`
// IncludeInviteData: Deprecated. This field is no longer in use.
IncludeInviteData bool `json:"includeInviteData,omitempty"`
// Metrics: Metrics to include as columns in your report.
//
// Possible values:
// "METRIC_UNKNOWN"
// "METRIC_IMPRESSIONS"
// "METRIC_CLICKS"
// "METRIC_LAST_IMPRESSIONS"
// "METRIC_LAST_CLICKS"
// "METRIC_TOTAL_CONVERSIONS"
// "METRIC_MEDIA_COST_ADVERTISER"
// "METRIC_MEDIA_COST_USD"
// "METRIC_MEDIA_COST_PARTNER"
// "METRIC_DATA_COST_ADVERTISER"
// "METRIC_DATA_COST_USD"
// "METRIC_DATA_COST_PARTNER"
// "METRIC_CPM_FEE1_ADVERTISER"
// "METRIC_CPM_FEE1_USD"
// "METRIC_CPM_FEE1_PARTNER"
// "METRIC_CPM_FEE2_ADVERTISER"
// "METRIC_CPM_FEE2_USD"
// "METRIC_CPM_FEE2_PARTNER"
// "METRIC_MEDIA_FEE1_ADVERTISER"
// "METRIC_MEDIA_FEE1_USD"
// "METRIC_MEDIA_FEE1_PARTNER"
// "METRIC_MEDIA_FEE2_ADVERTISER"
// "METRIC_MEDIA_FEE2_USD"
// "METRIC_MEDIA_FEE2_PARTNER"
// "METRIC_REVENUE_ADVERTISER"
// "METRIC_REVENUE_USD"
// "METRIC_REVENUE_PARTNER"
// "METRIC_PROFIT_ADVERTISER"
// "METRIC_PROFIT_USD"
// "METRIC_PROFIT_PARTNER"
// "METRIC_PROFIT_MARGIN"
// "METRIC_TOTAL_MEDIA_COST_USD"
// "METRIC_TOTAL_MEDIA_COST_PARTNER"
// "METRIC_TOTAL_MEDIA_COST_ADVERTISER"
// "METRIC_BILLABLE_COST_USD"
// "METRIC_BILLABLE_COST_PARTNER"
// "METRIC_BILLABLE_COST_ADVERTISER"
// "METRIC_PLATFORM_FEE_USD"
// "METRIC_PLATFORM_FEE_PARTNER"
// "METRIC_PLATFORM_FEE_ADVERTISER"
// "METRIC_VIDEO_COMPLETION_RATE"
// "METRIC_PROFIT_ECPM_ADVERTISER"
// "METRIC_PROFIT_ECPM_USD"
// "METRIC_PROFIT_ECPM_PARTNER"
// "METRIC_REVENUE_ECPM_ADVERTISER"
// "METRIC_REVENUE_ECPM_USD"
// "METRIC_REVENUE_ECPM_PARTNER"
// "METRIC_REVENUE_ECPC_ADVERTISER"
// "METRIC_REVENUE_ECPC_USD"
// "METRIC_REVENUE_ECPC_PARTNER"
// "METRIC_REVENUE_ECPA_ADVERTISER"
// "METRIC_REVENUE_ECPA_USD"
// "METRIC_REVENUE_ECPA_PARTNER"
// "METRIC_REVENUE_ECPAPV_ADVERTISER"
// "METRIC_REVENUE_ECPAPV_USD"
// "METRIC_REVENUE_ECPAPV_PARTNER"
// "METRIC_REVENUE_ECPAPC_ADVERTISER"
// "METRIC_REVENUE_ECPAPC_USD"
// "METRIC_REVENUE_ECPAPC_PARTNER"
// "METRIC_MEDIA_COST_ECPM_ADVERTISER"
// "METRIC_MEDIA_COST_ECPM_USD"
// "METRIC_MEDIA_COST_ECPM_PARTNER"
// "METRIC_MEDIA_COST_ECPC_ADVERTISER"
// "METRIC_MEDIA_COST_ECPC_USD"
// "METRIC_MEDIA_COST_ECPC_PARTNER"
// "METRIC_MEDIA_COST_ECPA_ADVERTISER"
// "METRIC_MEDIA_COST_ECPA_USD"
// "METRIC_MEDIA_COST_ECPA_PARTNER"
// "METRIC_MEDIA_COST_ECPAPV_ADVERTISER"
// "METRIC_MEDIA_COST_ECPAPV_USD"
// "METRIC_MEDIA_COST_ECPAPV_PARTNER"
// "METRIC_MEDIA_COST_ECPAPC_ADVERTISER"
// "METRIC_MEDIA_COST_ECPAPC_USD"
// "METRIC_MEDIA_COST_ECPAPC_PARTNER"
// "METRIC_TOTAL_MEDIA_COST_ECPM_ADVERTISER"
// "METRIC_TOTAL_MEDIA_COST_ECPM_USD"
// "METRIC_TOTAL_MEDIA_COST_ECPM_PARTNER"
// "METRIC_TOTAL_MEDIA_COST_ECPC_ADVERTISER"
// "METRIC_TOTAL_MEDIA_COST_ECPC_USD"
// "METRIC_TOTAL_MEDIA_COST_ECPC_PARTNER"
// "METRIC_TOTAL_MEDIA_COST_ECPA_ADVERTISER"
// "METRIC_TOTAL_MEDIA_COST_ECPA_USD"
// "METRIC_TOTAL_MEDIA_COST_ECPA_PARTNER"
// "METRIC_TOTAL_MEDIA_COST_ECPAPV_ADVERTISER"
// "METRIC_TOTAL_MEDIA_COST_ECPAPV_USD"
// "METRIC_TOTAL_MEDIA_COST_ECPAPV_PARTNER"
// "METRIC_TOTAL_MEDIA_COST_ECPAPC_ADVERTISER"
// "METRIC_TOTAL_MEDIA_COST_ECPAPC_USD"
// "METRIC_TOTAL_MEDIA_COST_ECPAPC_PARTNER"
// "METRIC_RICH_MEDIA_VIDEO_PLAYS"
// "METRIC_RICH_MEDIA_VIDEO_COMPLETIONS"
// "METRIC_RICH_MEDIA_VIDEO_PAUSES"
// "METRIC_RICH_MEDIA_VIDEO_MUTES"
// "METRIC_RICH_MEDIA_VIDEO_MIDPOINTS"
// "METRIC_RICH_MEDIA_VIDEO_FULL_SCREENS"
// "METRIC_RICH_MEDIA_VIDEO_FIRST_QUARTILE_COMPLETES"
// "METRIC_RICH_MEDIA_VIDEO_THIRD_QUARTILE_COMPLETES"
// "METRIC_CLICK_TO_POST_CLICK_CONVERSION_RATE"
// "METRIC_IMPRESSIONS_TO_CONVERSION_RATE"
// "METRIC_CONVERSIONS_PER_MILLE"
// "METRIC_CTR"
// "METRIC_BID_REQUESTS"
// "METRIC_UNIQUE_VISITORS_COOKIES"
// "METRIC_REVENUE_ECPCV_ADVERTISER"
// "METRIC_REVENUE_ECPCV_USD"
// "METRIC_REVENUE_ECPCV_PARTNER"
// "METRIC_MEDIA_COST_ECPCV_ADVERTISER"
// "METRIC_MEDIA_COST_ECPCV_USD"
// "METRIC_MEDIA_COST_ECPCV_PARTNER"
// "METRIC_TOTAL_MEDIA_COST_ECPCV_ADVERTISER"
// "METRIC_TOTAL_MEDIA_COST_ECPCV_USD"
// "METRIC_TOTAL_MEDIA_COST_ECPCV_PARTNER"
// "METRIC_RICH_MEDIA_VIDEO_SKIPS"
// "METRIC_FEE2_ADVERTISER"
// "METRIC_FEE2_USD"
// "METRIC_FEE2_PARTNER"
// "METRIC_FEE3_ADVERTISER"
// "METRIC_FEE3_USD"
// "METRIC_FEE3_PARTNER"
// "METRIC_FEE4_ADVERTISER"
// "METRIC_FEE4_USD"
// "METRIC_FEE4_PARTNER"
// "METRIC_FEE5_ADVERTISER"
// "METRIC_FEE5_USD"
// "METRIC_FEE5_PARTNER"
// "METRIC_FEE6_ADVERTISER"
// "METRIC_FEE6_USD"
// "METRIC_FEE6_PARTNER"
// "METRIC_FEE7_ADVERTISER"
// "METRIC_FEE7_USD"
// "METRIC_FEE7_PARTNER"
// "METRIC_FEE8_ADVERTISER"
// "METRIC_FEE8_USD"
// "METRIC_FEE8_PARTNER"
// "METRIC_FEE9_ADVERTISER"
// "METRIC_FEE9_USD"
// "METRIC_FEE9_PARTNER"
// "METRIC_FEE10_ADVERTISER"
// "METRIC_FEE10_USD"
// "METRIC_FEE10_PARTNER"
// "METRIC_FEE11_ADVERTISER"
// "METRIC_FEE11_USD"
// "METRIC_FEE11_PARTNER"
// "METRIC_FEE12_ADVERTISER"
// "METRIC_FEE12_USD"
// "METRIC_FEE12_PARTNER"
// "METRIC_FEE13_ADVERTISER"
// "METRIC_FEE13_USD"
// "METRIC_FEE13_PARTNER"
// "METRIC_FEE14_ADVERTISER"
// "METRIC_FEE14_USD"
// "METRIC_FEE14_PARTNER"
// "METRIC_FEE15_ADVERTISER"
// "METRIC_FEE15_USD"
// "METRIC_FEE15_PARTNER"
// "METRIC_CPM_FEE3_ADVERTISER"
// "METRIC_CPM_FEE3_USD"
// "METRIC_CPM_FEE3_PARTNER"
// "METRIC_CPM_FEE4_ADVERTISER"
// "METRIC_CPM_FEE4_USD"
// "METRIC_CPM_FEE4_PARTNER"
// "METRIC_CPM_FEE5_ADVERTISER"
// "METRIC_CPM_FEE5_USD"
// "METRIC_CPM_FEE5_PARTNER"
// "METRIC_MEDIA_FEE3_ADVERTISER"
// "METRIC_MEDIA_FEE3_USD"
// "METRIC_MEDIA_FEE3_PARTNER"
// "METRIC_MEDIA_FEE4_ADVERTISER"
// "METRIC_MEDIA_FEE4_USD"
// "METRIC_MEDIA_FEE4_PARTNER"
// "METRIC_MEDIA_FEE5_ADVERTISER"
// "METRIC_MEDIA_FEE5_USD"
// "METRIC_MEDIA_FEE5_PARTNER"
// "METRIC_VIDEO_COMPANION_IMPRESSIONS"
// "METRIC_VIDEO_COMPANION_CLICKS"
// "METRIC_FEE16_ADVERTISER"
// "METRIC_FEE16_USD"
// "METRIC_FEE16_PARTNER"
// "METRIC_FEE17_ADVERTISER"
// "METRIC_FEE17_USD"
// "METRIC_FEE17_PARTNER"
// "METRIC_FEE18_ADVERTISER"
// "METRIC_FEE18_USD"
// "METRIC_FEE18_PARTNER"
// "METRIC_TRUEVIEW_VIEWS"
// "METRIC_TRUEVIEW_UNIQUE_VIEWERS"
// "METRIC_TRUEVIEW_EARNED_VIEWS"
// "METRIC_TRUEVIEW_EARNED_SUBSCRIBERS"
// "METRIC_TRUEVIEW_EARNED_PLAYLIST_ADDITIONS"
// "METRIC_TRUEVIEW_EARNED_LIKES"
// "METRIC_TRUEVIEW_EARNED_SHARES"
// "METRIC_TRUEVIEW_IMPRESSION_SHARE"
// "METRIC_TRUEVIEW_LOST_IS_BUDGET"
// "METRIC_TRUEVIEW_LOST_IS_RANK"
// "METRIC_TRUEVIEW_VIEW_THROUGH_CONVERSION"
// "METRIC_TRUEVIEW_CONVERSION_MANY_PER_VIEW"
// "METRIC_TRUEVIEW_VIEW_RATE"
// "METRIC_TRUEVIEW_CONVERSION_RATE_ONE_PER_VIEW"
// "METRIC_TRUEVIEW_CPV_ADVERTISER"
// "METRIC_TRUEVIEW_CPV_USD"
// "METRIC_TRUEVIEW_CPV_PARTNER"
// "METRIC_FEE19_ADVERTISER"
// "METRIC_FEE19_USD"
// "METRIC_FEE19_PARTNER"
// "METRIC_TEA_TRUEVIEW_IMPRESSIONS"
// "METRIC_TEA_TRUEVIEW_UNIQUE_COOKIES"
// "METRIC_FEE20_ADVERTISER"
// "METRIC_FEE20_USD"
// "METRIC_FEE20_PARTNER"
// "METRIC_FEE21_ADVERTISER"
// "METRIC_FEE21_USD"
// "METRIC_FEE21_PARTNER"
// "METRIC_FEE22_ADVERTISER"
// "METRIC_FEE22_USD"
// "METRIC_FEE22_PARTNER"
// "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_ADVERTISER"
// "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_USD"
// "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_PARTNER"
// "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_ADVERTISER"
// "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_USD"
// "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_PARTNER"
// "METRIC_PROFIT_VIEWABLE_ECPM_ADVERTISER"
// "METRIC_PROFIT_VIEWABLE_ECPM_USD"
// "METRIC_PROFIT_VIEWABLE_ECPM_PARTNER"
// "METRIC_REVENUE_VIEWABLE_ECPM_ADVERTISER"
// "METRIC_REVENUE_VIEWABLE_ECPM_USD"
// "METRIC_REVENUE_VIEWABLE_ECPM_PARTNER"
// "METRIC_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER"
// "METRIC_MEDIA_COST_VIEWABLE_ECPM_USD"
// "METRIC_MEDIA_COST_VIEWABLE_ECPM_PARTNER"
// "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER"
// "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_USD"
// "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_PARTNER"
// "METRIC_TRUEVIEW_ENGAGEMENTS"
// "METRIC_TRUEVIEW_ENGAGEMENT_RATE"
// "METRIC_TRUEVIEW_AVERAGE_CPE_ADVERTISER"
// "METRIC_TRUEVIEW_AVERAGE_CPE_USD"
// "METRIC_TRUEVIEW_AVERAGE_CPE_PARTNER"
// "METRIC_ACTIVE_VIEW_VIEWABLE_IMPRESSIONS"
// "METRIC_ACTIVE_VIEW_ELIGIBLE_IMPRESSIONS"
// "METRIC_ACTIVE_VIEW_MEASURABLE_IMPRESSIONS"
// "METRIC_ACTIVE_VIEW_PCT_MEASURABLE_IMPRESSIONS"
// "METRIC_ACTIVE_VIEW_PCT_VIEWABLE_IMPRESSIONS"
// "METRIC_ACTIVE_VIEW_AVERAGE_VIEWABLE_TIME"
// "METRIC_ACTIVE_VIEW_UNMEASURABLE_IMPRESSIONS"
// "METRIC_ACTIVE_VIEW_UNVIEWABLE_IMPRESSIONS"
// "METRIC_ACTIVE_VIEW_DISTRIBUTION_UNMEASURABLE"
// "METRIC_ACTIVE_VIEW_DISTRIBUTION_UNVIEWABLE"
// "METRIC_ACTIVE_VIEW_DISTRIBUTION_VIEWABLE"
// "METRIC_ACTIVE_VIEW_PERCENT_VIEWABLE_FOR_TIME_THRESHOLD"
// "METRIC_ACTIVE_VIEW_VIEWABLE_FOR_TIME_THRESHOLD"
// "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_AT_START"
// "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_FIRST_QUAR"
// "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_SECOND_QUAR"
// "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_THIRD_QUAR"
// "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_ON_COMPLETE"
// "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_AT_START"
// "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_FIRST_QUAR"
// "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_SECOND_QUAR"
// "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_THIRD_QUAR"
// "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_ON_COMPLETE"
// "METRIC_ACTIVE_VIEW_AUDIBLE_VISIBLE_ON_COMPLETE_IMPRESSIONS"
// "METRIC_VIEWABLE_BID_REQUESTS"
// "METRIC_COOKIE_REACH_IMPRESSION_REACH"
// "METRIC_COOKIE_REACH_AVERAGE_IMPRESSION_FREQUENCY"
// "METRIC_DBM_ENGAGEMENT_RATE"
// "METRIC_RICH_MEDIA_SCROLLS"
// "METRIC_CM_POST_VIEW_REVENUE"
// "METRIC_CM_POST_CLICK_REVENUE"
// "METRIC_FLOODLIGHT_IMPRESSIONS"
// "METRIC_BILLABLE_IMPRESSIONS"
// "METRIC_NIELSEN_AVERAGE_FREQUENCY"
// "METRIC_NIELSEN_IMPRESSIONS"
// "METRIC_NIELSEN_UNIQUE_AUDIENCE"
// "METRIC_NIELSEN_GRP"
// "METRIC_NIELSEN_IMPRESSION_INDEX"
// "METRIC_NIELSEN_IMPRESSIONS_SHARE"
// "METRIC_NIELSEN_POPULATION"
// "METRIC_NIELSEN_POPULATION_REACH"
// "METRIC_NIELSEN_POPULATION_SHARE"
// "METRIC_NIELSEN_REACH_INDEX"
// "METRIC_NIELSEN_REACH_SHARE"
//
// "METRIC_ACTIVE_VIEW_AUDIBLE_FULLY_ON_SCREEN_HALF_OF_DURATION_IMPRESSIO
// NS"
//
// "METRIC_ACTIVE_VIEW_AUDIBLE_FULLY_ON_SCREEN_HALF_OF_DURATION_MEASURABL
// E_IMPRESSIONS"
// "METRIC_ACTIVE_VIEW_AUDIBLE_FULLY_ON_SCREEN_HALF_OF_DURATION_RATE"
//
// "METRIC_ACTIVE_VIEW_AUDIBLE_FULLY_ON_SCREEN_HALF_OF_DURATION_TRUEVIEW_
// IMPRESSIONS"
//
// "METRIC_ACTIVE_VIEW_AUDIBLE_FULLY_ON_SCREEN_HALF_OF_DURATION_TRUEVIEW_
// MEASURABLE_IMPRESSIONS"
//
// "METRIC_ACTIVE_VIEW_AUDIBLE_FULLY_ON_SCREEN_HALF_OF_DURATION_TRUEVIEW_
// RATE"
// "METRIC_ACTIVE_VIEW_CUSTOM_METRIC_MEASURABLE_IMPRESSIONS"
// "METRIC_ACTIVE_VIEW_CUSTOM_METRIC_VIEWABLE_IMPRESSIONS"
// "METRIC_ACTIVE_VIEW_CUSTOM_METRIC_VIEWABLE_RATE"
// "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_IMPRESSIONS"
// "METRIC_ACTIVE_VIEW_PERCENT_FULLY_ON_SCREEN_2_SEC"
// "METRIC_ACTIVE_VIEW_PERCENT_FULL_SCREEN"
// "METRIC_ACTIVE_VIEW_PERCENT_IN_BACKGROUND"
// "METRIC_ACTIVE_VIEW_PERCENT_OF_AD_PLAYED"
//
// "METRIC_ACTIVE_VIEW_PERCENT_OF_COMPLETED_IMPRESSIONS_AUDIBLE_AND_VISIB
// LE"
// "METRIC_ACTIVE_VIEW_PERCENT_OF_COMPLETED_IMPRESSIONS_VISIBLE"
//
// "METRIC_ACTIVE_VIEW_PERCENT_OF_FIRST_QUARTILE_IMPRESSIONS_AUDIBLE_AND_
// VISIBLE"
// "METRIC_ACTIVE_VIEW_PERCENT_OF_FIRST_QUARTILE_IMPRESSIONS_VISIBLE"
//
// "METRIC_ACTIVE_VIEW_PERCENT_OF_MIDPOINT_IMPRESSIONS_AUDIBLE_AND_VISIBL
// E"
// "METRIC_ACTIVE_VIEW_PERCENT_OF_MIDPOINT_IMPRESSIONS_VISIBLE"
//
// "METRIC_ACTIVE_VIEW_PERCENT_OF_THIRD_QUARTILE_IMPRESSIONS_AUDIBLE_AND_
// VISIBLE"
// "METRIC_ACTIVE_VIEW_PERCENT_OF_THIRD_QUARTILE_IMPRESSIONS_VISIBLE"
// "METRIC_ACTIVE_VIEW_PERCENT_PLAY_TIME_AUDIBLE"
// "METRIC_ACTIVE_VIEW_PERCENT_PLAY_TIME_AUDIBLE_AND_VISIBLE"
// "METRIC_ACTIVE_VIEW_PERCENT_PLAY_TIME_VISIBLE"
// "METRIC_ADAPTED_AUDIENCE_FREQUENCY"
// "METRIC_ADLINGO_FEE_ADVERTISER_CURRENCY"
// "METRIC_AUDIO_CLIENT_COST_ECPCL_ADVERTISER_CURRENCY"
// "METRIC_AUDIO_MEDIA_COST_ECPCL_ADVERTISER_CURRENCY"
// "METRIC_AUDIO_MUTES_AUDIO"
// "METRIC_AUDIO_REVENUE_ECPCL_ADVERTISER_CURRENCY"
// "METRIC_AUDIO_UNMUTES_AUDIO"
// "METRIC_AUDIO_UNMUTES_VIDEO"
// "METRIC_AVERAGE_DISPLAY_TIME"
// "METRIC_AVERAGE_IMPRESSION_FREQUENCY_PER_USER"
// "METRIC_AVERAGE_INTERACTION_TIME"
// "METRIC_AVERAGE_WATCH_TIME_PER_IMPRESSION"
// "METRIC_BEGIN_TO_RENDER_ELIGIBLE_IMPRESSIONS"
// "METRIC_BEGIN_TO_RENDER_IMPRESSIONS"
// "METRIC_BENCHMARK_FREQUENCY"
// "METRIC_BRAND_LIFT_ABSOLUTE_BRAND_LIFT"
// "METRIC_BRAND_LIFT_ALL_SURVEY_RESPONSES"
// "METRIC_BRAND_LIFT_BASELINE_POSITIVE_RESPONSE_RATE"
// "METRIC_BRAND_LIFT_BASELINE_SURVEY_RESPONSES"
// "METRIC_BRAND_LIFT_COST_PER_LIFTED_USER"
// "METRIC_BRAND_LIFT_EXPOSED_SURVEY_RESPONSES"
// "METRIC_BRAND_LIFT_HEADROOM_BRAND_LIFT"
// "METRIC_BRAND_LIFT_RELATIVE_BRAND_LIFT"
// "METRIC_BRAND_LIFT_USERS"
// "METRIC_CARD_CLICKS"
// "METRIC_CLIENT_COST_ADVERTISER_CURRENCY"
// "METRIC_CLIENT_COST_ECPA_ADVERTISER_CURRENCY"
// "METRIC_CLIENT_COST_ECPA_PC_ADVERTISER_CURRENCY"
// "METRIC_CLIENT_COST_ECPA_PV_ADVERTISER_CURRENCY"
// "METRIC_CLIENT_COST_ECPC_ADVERTISER_CURRENCY"
// "METRIC_CLIENT_COST_ECPM_ADVERTISER_CURRENCY"
// "METRIC_CLIENT_COST_VIEWABLE_ECPM_ADVERTISER_CURRENCY"
// "METRIC_CM_POST_CLICK_REVENUE_CROSS_ENVIRONMENT"
// "METRIC_CM_POST_VIEW_REVENUE_CROSS_ENVIRONMENT"
// "METRIC_COMPANION_CLICKS_AUDIO"
// "METRIC_COMPANION_IMPRESSIONS_AUDIO"
// "METRIC_COMPLETE_LISTENS_AUDIO"
// "METRIC_COMPLETION_RATE_AUDIO"
// "METRIC_COUNTERS"
// "METRIC_CUSTOM_FEE_1_ADVERTISER_CURRENCY"
// "METRIC_CUSTOM_FEE_2_ADVERTISER_CURRENCY"
// "METRIC_CUSTOM_FEE_3_ADVERTISER_CURRENCY"
// "METRIC_CUSTOM_FEE_4_ADVERTISER_CURRENCY"
// "METRIC_CUSTOM_FEE_5_ADVERTISER_CURRENCY"
// "METRIC_CUSTOM_VALUE_PER_1000_IMPRESSIONS"
// "METRIC_ENGAGEMENTS"
//
// "METRIC_ESTIMATED_CPM_FOR_IMPRESSIONS_WITH_CUSTOM_VALUE_ADVERTISER_CUR
// RENCY"
//
// "METRIC_ESTIMATED_TOTAL_COST_FOR_IMPRESSIONS_WITH_CUSTOM_VALUE_ADVERTI
// SER_CURRENCY"
// "METRIC_EXITS"
// "METRIC_EXPANSIONS"
// "METRIC_FIRST_QUARTILE_AUDIO"
// "METRIC_GENERAL_INVALID_TRAFFIC_GIVT_IMPRESSIONS"
// "METRIC_GENERAL_INVALID_TRAFFIC_GIVT_TRACKED_ADS"
// "METRIC_GIVT_ACTIVE_VIEW_ELIGIBLE_IMPRESSIONS"
// "METRIC_GIVT_ACTIVE_VIEW_MEASURABLE_IMPRESSIONS"
// "METRIC_GIVT_ACTIVE_VIEW_VIEWABLE_IMPRESSIONS"
// "METRIC_GIVT_BEGIN_TO_RENDER_IMPRESSIONS"
// "METRIC_GIVT_CLICKS"
// "METRIC_GMAIL_CONVERSIONS"
// "METRIC_GMAIL_POST_CLICK_CONVERSIONS"
// "METRIC_GMAIL_POST_VIEW_CONVERSIONS"
// "METRIC_GMAIL_POTENTIAL_VIEWS"
// "METRIC_IMPRESSIONS_WITH_CUSTOM_VALUE"
// "METRIC_IMPRESSIONS_WITH_POSITIVE_CUSTOM_VALUE"
// "METRIC_IMPRESSION_CUSTOM_VALUE_COST"
// "METRIC_INTERACTIVE_IMPRESSIONS"
// "METRIC_INVALID_ACTIVE_VIEW_ELIGIBLE_IMPRESSIONS"
// "METRIC_INVALID_ACTIVE_VIEW_MEASURABLE_IMPRESSIONS"
// "METRIC_INVALID_ACTIVE_VIEW_VIEWABLE_IMPRESSIONS"
// "METRIC_INVALID_BEGIN_TO_RENDER_IMPRESSIONS"
// "METRIC_INVALID_CLICKS"
// "METRIC_INVALID_IMPRESSIONS"
// "METRIC_INVALID_TRACKED_ADS"
// "METRIC_MEDIA_COST_ADVERTISER_CURRENCY_PER_STORE_VISIT_ADX_ONLY"
// "METRIC_MIDPOINT_AUDIO"
// "METRIC_ORIGINAL_AUDIENCE_FREQUENCY"
// "METRIC_PAUSES_AUDIO"
// "METRIC_PERCENT_IMPRESSIONS_WITH_POSITIVE_CUSTOM_VALUE"
// "METRIC_PLATFORM_FEE_RATE"
// "METRIC_POST_CLICK_CONVERSIONS_CROSS_ENVIRONMENT"
// "METRIC_POST_VIEW_CONVERSIONS_CROSS_ENVIRONMENT"
// "METRIC_POTENTIAL_IMPRESSIONS"
// "METRIC_POTENTIAL_VIEWS"
// "METRIC_PREMIUM_FEE_ADVERTISER_CURRENCY"
//
// "METRIC_PROGRAMMATIC_GUARANTEED_IMPRESSIONS_PASSED_DUE_TO_FREQUENCY"
//
// "METRIC_PROGRAMMATIC_GUARANTEED_SAVINGS_RE_INVESTED_DUE_TO_FREQUENCY_A
// DVERTISER_CURRENCY"
// "METRIC_REFUND_BILLABLE_COST_ADVERTISER_CURRENCY"
// "METRIC_REFUND_MEDIA_COST_ADVERTISER_CURRENCY"
// "METRIC_REFUND_PLATFORM_FEE_ADVERTISER_CURRENCY"
// "METRIC_REVENUE_ADVERTISER_CURRENCY_PER_STORE_VISIT_ADX_ONLY"
// "METRIC_RICH_MEDIA_ENGAGEMENTS"
// "METRIC_STARTS_AUDIO"
// "METRIC_STOPS_AUDIO"
// "METRIC_STORE_VISITS_ADX_ONLY"
// "METRIC_STORE_VISIT_CONVERSIONS"
// "METRIC_THIRD_QUARTILE_AUDIO"
// "METRIC_TIMERS"
// "METRIC_TOTAL_AUDIO_MEDIA_COST_ECPCL_ADVERTISER_CURRENCY"
// "METRIC_TOTAL_CONVERSIONS_CROSS_ENVIRONMENT"
// "METRIC_TOTAL_DISPLAY_TIME"
// "METRIC_TOTAL_IMPRESSION_CUSTOM_VALUE"
// "METRIC_TOTAL_INTERACTION_TIME"
//
// "METRIC_TOTAL_MEDIA_COST_ADVERTISER_CURRENCY_PER_STORE_VISIT_ADX_ONLY"
// "METRIC_TOTAL_USERS"
// "METRIC_TRACKED_ADS"
// "METRIC_TRUEVIEW_GENERAL_INVALID_TRAFFIC_GIVT_VIEWS"
// "METRIC_TRUEVIEW_INVALID_VIEWS"
// "METRIC_UNIQUE_COOKIES_WITH_IMPRESSIONS"
// "METRIC_UNIQUE_REACH_AVERAGE_IMPRESSION_FREQUENCY"
// "METRIC_UNIQUE_REACH_CLICK_REACH"
// "METRIC_UNIQUE_REACH_IMPRESSION_REACH"
// "METRIC_UNIQUE_REACH_TOTAL_REACH"
// "METRIC_VERIFIABLE_IMPRESSIONS"
// "METRIC_VIDEO_CLIENT_COST_ECPCV_ADVERTISER_CURRENCY"
// "METRIC_WATCH_TIME"
// "METRIC_LAST_TOUCH_TOTAL_CONVERSIONS"
// "METRIC_LAST_TOUCH_CLICK_THROUGH_CONVERSIONS"
// "METRIC_LAST_TOUCH_VIEW_THROUGH_CONVERSIONS"
// "METRIC_TOTAL_PATHS"
// "METRIC_TOTAL_EXPOSURES"
// "METRIC_PATH_CONVERSION_RATE"
// "METRIC_CONVERTING_PATHS"
// "METRIC_ACTIVITY_REVENUE"
// "METRIC_PERCENT_INVALID_IMPRESSIONS_PREBID"
// "METRIC_PROVISIONAL_IMPRESSIONS"
Metrics []string `json:"metrics,omitempty"`
// Options: Additional query options.
Options *Options `json:"options,omitempty"`
// Type: Report type.
//
// Possible values:
// "TYPE_GENERAL"
// "TYPE_AUDIENCE_PERFORMANCE"
// "TYPE_INVENTORY_AVAILABILITY"
// "TYPE_KEYWORD"
// "TYPE_PIXEL_LOAD"
// "TYPE_AUDIENCE_COMPOSITION"
// "TYPE_CROSS_PARTNER"
// "TYPE_PAGE_CATEGORY"
// "TYPE_THIRD_PARTY_DATA_PROVIDER"
// "TYPE_CROSS_PARTNER_THIRD_PARTY_DATA_PROVIDER"
// "TYPE_CLIENT_SAFE"
// "TYPE_ORDER_ID"
// "TYPE_FEE"
// "TYPE_CROSS_FEE"
// "TYPE_ACTIVE_GRP"
// "TYPE_YOUTUBE_VERTICAL"
// "TYPE_COMSCORE_VCE"
// "TYPE_TRUEVIEW"
// "TYPE_NIELSEN_AUDIENCE_PROFILE"
// "TYPE_NIELSEN_DAILY_REACH_BUILD"
// "TYPE_NIELSEN_SITE"
// "TYPE_REACH_AND_FREQUENCY"
// "TYPE_ESTIMATED_CONVERSION"
// "TYPE_VERIFICATION"
// "TYPE_TRUEVIEW_IAR"
// "TYPE_NIELSEN_ONLINE_GLOBAL_MARKET"
// "TYPE_PETRA_NIELSEN_AUDIENCE_PROFILE"
// "TYPE_PETRA_NIELSEN_DAILY_REACH_BUILD"
// "TYPE_PETRA_NIELSEN_ONLINE_GLOBAL_MARKET"
// "TYPE_NOT_SUPPORTED"
// "TYPE_REACH_AUDIENCE"
// "TYPE_LINEAR_TV_SEARCH_LIFT"
// "TYPE_PATH"
// "TYPE_PATH_ATTRIBUTION"
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Filters") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Filters") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Parameters) MarshalJSON() ([]byte, error) {
type NoMethod Parameters
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// PathFilter: Path filters specify which paths to include in a report.
// A path is the result of combining DV360 events based on User ID to
// create a workflow of users' actions. When a path filter is set, the
// resulting report will only include paths that match the specified
// event at the specified position. All other paths will be excluded.
type PathFilter struct {
// EventFilters: Filter on an event to be applied to some part of the
// path.
EventFilters []*EventFilter `json:"eventFilters,omitempty"`
// PathMatchPosition: Indicates the position of the path the filter
// should match to (first, last, or any event in path).
//
// Possible values:
// "ANY"
// "FIRST"
// "LAST"
PathMatchPosition string `json:"pathMatchPosition,omitempty"`
// ForceSendFields is a list of field names (e.g. "EventFilters") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "EventFilters") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *PathFilter) MarshalJSON() ([]byte, error) {
type NoMethod PathFilter
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// PathQueryOptions: Path Query Options for Report Options.
type PathQueryOptions struct {
// ChannelGrouping: Custom Channel Groupings.
ChannelGrouping *ChannelGrouping `json:"channelGrouping,omitempty"`
// PathFilters: Path Filters. There is a limit of 100 path filters that
// can be set per report.
PathFilters []*PathFilter `json:"pathFilters,omitempty"`
// ForceSendFields is a list of field names (e.g. "ChannelGrouping") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ChannelGrouping") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *PathQueryOptions) MarshalJSON() ([]byte, error) {
type NoMethod PathQueryOptions
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// PathQueryOptionsFilter: Dimension Filter for a Path Filter.
type PathQueryOptionsFilter struct {
// Filter: Dimension the filter is applied to.
//
// Possible values:
// "FILTER_UNKNOWN"
// "FILTER_DATE"
// "FILTER_DAY_OF_WEEK"
// "FILTER_WEEK"
// "FILTER_MONTH"
// "FILTER_YEAR"
// "FILTER_TIME_OF_DAY"
// "FILTER_CONVERSION_DELAY"
// "FILTER_CREATIVE_ID"
// "FILTER_CREATIVE_SIZE"
// "FILTER_CREATIVE_TYPE"
// "FILTER_EXCHANGE_ID"
// "FILTER_AD_POSITION"
// "FILTER_PUBLIC_INVENTORY"
// "FILTER_INVENTORY_SOURCE"
// "FILTER_CITY"
// "FILTER_REGION"
// "FILTER_DMA"
// "FILTER_COUNTRY"
// "FILTER_SITE_ID"
// "FILTER_CHANNEL_ID"
// "FILTER_PARTNER"
// "FILTER_ADVERTISER"
// "FILTER_INSERTION_ORDER"
// "FILTER_LINE_ITEM"
// "FILTER_PARTNER_CURRENCY"
// "FILTER_ADVERTISER_CURRENCY"
// "FILTER_ADVERTISER_TIMEZONE"
// "FILTER_LINE_ITEM_TYPE"
// "FILTER_USER_LIST"
// "FILTER_USER_LIST_FIRST_PARTY"
// "FILTER_USER_LIST_THIRD_PARTY"
// "FILTER_TARGETED_USER_LIST"
// "FILTER_DATA_PROVIDER"
// "FILTER_ORDER_ID"
// "FILTER_VIDEO_PLAYER_SIZE"
// "FILTER_VIDEO_DURATION_SECONDS"
// "FILTER_KEYWORD"
// "FILTER_PAGE_CATEGORY"
// "FILTER_CAMPAIGN_DAILY_FREQUENCY"
// "FILTER_LINE_ITEM_DAILY_FREQUENCY"
// "FILTER_LINE_ITEM_LIFETIME_FREQUENCY"
// "FILTER_OS"
// "FILTER_BROWSER"
// "FILTER_CARRIER"
// "FILTER_SITE_LANGUAGE"
// "FILTER_INVENTORY_FORMAT"
// "FILTER_ZIP_CODE"
// "FILTER_VIDEO_RATING_TIER"
// "FILTER_VIDEO_FORMAT_SUPPORT"
// "FILTER_VIDEO_SKIPPABLE_SUPPORT"
// "FILTER_VIDEO_VPAID_SUPPORT"
// "FILTER_VIDEO_CREATIVE_DURATION"
// "FILTER_PAGE_LAYOUT"
// "FILTER_VIDEO_AD_POSITION_IN_STREAM"
// "FILTER_AGE"
// "FILTER_GENDER"
// "FILTER_QUARTER"
// "FILTER_TRUEVIEW_CONVERSION_TYPE"
// "FILTER_MOBILE_GEO"
// "FILTER_MRAID_SUPPORT"
// "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY"
// "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE"
// "FILTER_NIELSEN_COUNTRY_CODE"
// "FILTER_NIELSEN_DEVICE_ID"
// "FILTER_NIELSEN_GENDER"
// "FILTER_NIELSEN_AGE"
// "FILTER_INVENTORY_SOURCE_TYPE"
// "FILTER_CREATIVE_WIDTH"
// "FILTER_CREATIVE_HEIGHT"
// "FILTER_DFP_ORDER_ID"
// "FILTER_TRUEVIEW_AGE"
// "FILTER_TRUEVIEW_GENDER"
// "FILTER_TRUEVIEW_PARENTAL_STATUS"
// "FILTER_TRUEVIEW_REMARKETING_LIST"
// "FILTER_TRUEVIEW_INTEREST"
// "FILTER_TRUEVIEW_AD_GROUP_ID"
// "FILTER_TRUEVIEW_AD_GROUP_AD_ID"
// "FILTER_TRUEVIEW_IAR_LANGUAGE"
// "FILTER_TRUEVIEW_IAR_GENDER"
// "FILTER_TRUEVIEW_IAR_AGE"
// "FILTER_TRUEVIEW_IAR_CATEGORY"
// "FILTER_TRUEVIEW_IAR_COUNTRY"
// "FILTER_TRUEVIEW_IAR_CITY"
// "FILTER_TRUEVIEW_IAR_REGION"
// "FILTER_TRUEVIEW_IAR_ZIPCODE"
// "FILTER_TRUEVIEW_IAR_REMARKETING_LIST"
// "FILTER_TRUEVIEW_IAR_INTEREST"
// "FILTER_TRUEVIEW_IAR_PARENTAL_STATUS"
// "FILTER_TRUEVIEW_IAR_TIME_OF_DAY"
// "FILTER_TRUEVIEW_CUSTOM_AFFINITY"
// "FILTER_TRUEVIEW_CATEGORY"
// "FILTER_TRUEVIEW_KEYWORD"
// "FILTER_TRUEVIEW_PLACEMENT"
// "FILTER_TRUEVIEW_URL"
// "FILTER_TRUEVIEW_COUNTRY"
// "FILTER_TRUEVIEW_REGION"
// "FILTER_TRUEVIEW_CITY"
// "FILTER_TRUEVIEW_DMA"
// "FILTER_TRUEVIEW_ZIPCODE"
// "FILTER_NOT_SUPPORTED"
// "FILTER_MEDIA_PLAN"
// "FILTER_TRUEVIEW_IAR_YOUTUBE_CHANNEL"
// "FILTER_TRUEVIEW_IAR_YOUTUBE_VIDEO"
// "FILTER_SKIPPABLE_SUPPORT"
// "FILTER_COMPANION_CREATIVE_ID"
// "FILTER_BUDGET_SEGMENT_DESCRIPTION"
// "FILTER_FLOODLIGHT_ACTIVITY_ID"
// "FILTER_DEVICE_MODEL"
// "FILTER_DEVICE_MAKE"
// "FILTER_DEVICE_TYPE"
// "FILTER_CREATIVE_ATTRIBUTE"
// "FILTER_INVENTORY_COMMITMENT_TYPE"
// "FILTER_INVENTORY_RATE_TYPE"
// "FILTER_INVENTORY_DELIVERY_METHOD"
// "FILTER_INVENTORY_SOURCE_EXTERNAL_ID"
// "FILTER_AUTHORIZED_SELLER_STATE"
// "FILTER_VIDEO_DURATION_SECONDS_RANGE"
// "FILTER_PARTNER_NAME"
// "FILTER_PARTNER_STATUS"
// "FILTER_ADVERTISER_NAME"
// "FILTER_ADVERTISER_INTEGRATION_CODE"
// "FILTER_ADVERTISER_INTEGRATION_STATUS"
// "FILTER_CARRIER_NAME"
// "FILTER_CHANNEL_NAME"
// "FILTER_CITY_NAME"
// "FILTER_COMPANION_CREATIVE_NAME"
// "FILTER_USER_LIST_FIRST_PARTY_NAME"
// "FILTER_USER_LIST_THIRD_PARTY_NAME"
// "FILTER_NIELSEN_RESTATEMENT_DATE"
// "FILTER_NIELSEN_DATE_RANGE"
// "FILTER_INSERTION_ORDER_NAME"
// "FILTER_REGION_NAME"
// "FILTER_DMA_NAME"
// "FILTER_TRUEVIEW_IAR_REGION_NAME"
// "FILTER_TRUEVIEW_DMA_NAME"
// "FILTER_TRUEVIEW_REGION_NAME"
// "FILTER_ACTIVE_VIEW_CUSTOM_METRIC_ID"
// "FILTER_ACTIVE_VIEW_CUSTOM_METRIC_NAME"
// "FILTER_AD_TYPE"
// "FILTER_ALGORITHM"
// "FILTER_ALGORITHM_ID"
// "FILTER_AMP_PAGE_REQUEST"
// "FILTER_ANONYMOUS_INVENTORY_MODELING"
// "FILTER_APP_URL"
// "FILTER_APP_URL_EXCLUDED"
// "FILTER_ATTRIBUTED_USERLIST"
// "FILTER_ATTRIBUTED_USERLIST_COST"
// "FILTER_ATTRIBUTED_USERLIST_TYPE"
// "FILTER_ATTRIBUTION_MODEL"
// "FILTER_AUDIENCE_LIST"
// "FILTER_AUDIENCE_LIST_COST"
// "FILTER_AUDIENCE_LIST_TYPE"
// "FILTER_AUDIENCE_NAME"
// "FILTER_AUDIENCE_TYPE"
// "FILTER_BILLABLE_OUTCOME"
// "FILTER_BRAND_LIFT_TYPE"
// "FILTER_CHANNEL_TYPE"
// "FILTER_CM_PLACEMENT_ID"
// "FILTER_CONVERSION_SOURCE"
// "FILTER_CONVERSION_SOURCE_ID"
// "FILTER_COUNTRY_ID"
// "FILTER_CREATIVE"
// "FILTER_CREATIVE_ASSET"
// "FILTER_CREATIVE_INTEGRATION_CODE"
// "FILTER_CREATIVE_RENDERED_IN_AMP"
// "FILTER_CREATIVE_SOURCE"
// "FILTER_CREATIVE_STATUS"
// "FILTER_DATA_PROVIDER_NAME"
// "FILTER_DETAILED_DEMOGRAPHICS"
// "FILTER_DETAILED_DEMOGRAPHICS_ID"
// "FILTER_DEVICE"
// "FILTER_GAM_INSERTION_ORDER"
// "FILTER_GAM_LINE_ITEM"
// "FILTER_GAM_LINE_ITEM_ID"
// "FILTER_DIGITAL_CONTENT_LABEL"
// "FILTER_DOMAIN"
// "FILTER_ELIGIBLE_COOKIES_ON_FIRST_PARTY_AUDIENCE_LIST"
// "FILTER_ELIGIBLE_COOKIES_ON_THIRD_PARTY_AUDIENCE_LIST_AND_INTEREST"
// "FILTER_EXCHANGE"
// "FILTER_EXCHANGE_CODE"
// "FILTER_EXTENSION"
// "FILTER_EXTENSION_STATUS"
// "FILTER_EXTENSION_TYPE"
// "FILTER_FIRST_PARTY_AUDIENCE_LIST_COST"
// "FILTER_FIRST_PARTY_AUDIENCE_LIST_TYPE"
// "FILTER_FLOODLIGHT_ACTIVITY"
// "FILTER_FORMAT"
// "FILTER_GMAIL_AGE"
// "FILTER_GMAIL_CITY"
// "FILTER_GMAIL_COUNTRY"
// "FILTER_GMAIL_COUNTRY_NAME"
// "FILTER_GMAIL_DEVICE_TYPE"
// "FILTER_GMAIL_DEVICE_TYPE_NAME"
// "FILTER_GMAIL_GENDER"
// "FILTER_GMAIL_REGION"
// "FILTER_GMAIL_REMARKETING_LIST"
// "FILTER_HOUSEHOLD_INCOME"
// "FILTER_IMPRESSION_COUNTING_METHOD"
// "FILTER_YOUTUBE_PROGRAMMATIC_GUARANTEED_INSERTION_ORDER"
// "FILTER_INSERTION_ORDER_INTEGRATION_CODE"
// "FILTER_INSERTION_ORDER_STATUS"
// "FILTER_INTEREST"
// "FILTER_INVENTORY_SOURCE_GROUP"
// "FILTER_INVENTORY_SOURCE_GROUP_ID"
// "FILTER_INVENTORY_SOURCE_ID"
// "FILTER_INVENTORY_SOURCE_NAME"
// "FILTER_LIFE_EVENT"
// "FILTER_LIFE_EVENTS"
// "FILTER_LINE_ITEM_INTEGRATION_CODE"
// "FILTER_LINE_ITEM_NAME"
// "FILTER_LINE_ITEM_STATUS"
// "FILTER_MATCH_RATIO"
// "FILTER_MEASUREMENT_SOURCE"
// "FILTER_MEDIA_PLAN_NAME"
// "FILTER_PARENTAL_STATUS"
// "FILTER_PLACEMENT_ALL_YOUTUBE_CHANNELS"
// "FILTER_PLATFORM"
// "FILTER_PLAYBACK_METHOD"
// "FILTER_POSITION_IN_CONTENT"
// "FILTER_PUBLISHER_PROPERTY"
// "FILTER_PUBLISHER_PROPERTY_ID"
// "FILTER_PUBLISHER_PROPERTY_SECTION"
// "FILTER_PUBLISHER_PROPERTY_SECTION_ID"
// "FILTER_REFUND_REASON"
// "FILTER_REMARKETING_LIST"
// "FILTER_REWARDED"
// "FILTER_SENSITIVE_CATEGORY"
// "FILTER_SERVED_PIXEL_DENSITY"
// "FILTER_TARGETED_DATA_PROVIDERS"
// "FILTER_THIRD_PARTY_AUDIENCE_LIST_COST"
// "FILTER_THIRD_PARTY_AUDIENCE_LIST_TYPE"
// "FILTER_TRUEVIEW_AD"
// "FILTER_TRUEVIEW_AD_GROUP"
// "FILTER_TRUEVIEW_DETAILED_DEMOGRAPHICS"
// "FILTER_TRUEVIEW_DETAILED_DEMOGRAPHICS_ID"
// "FILTER_TRUEVIEW_HOUSEHOLD_INCOME"
// "FILTER_TRUEVIEW_IAR_COUNTRY_NAME"
// "FILTER_TRUEVIEW_REMARKETING_LIST_NAME"
// "FILTER_VARIANT_ID"
// "FILTER_VARIANT_NAME"
// "FILTER_VARIANT_VERSION"
// "FILTER_VERIFICATION_VIDEO_PLAYER_SIZE"
// "FILTER_VERIFICATION_VIDEO_POSITION"
// "FILTER_VIDEO_COMPANION_CREATIVE_SIZE"
// "FILTER_VIDEO_CONTINUOUS_PLAY"
// "FILTER_VIDEO_DURATION"
// "FILTER_YOUTUBE_ADAPTED_AUDIENCE_LIST"
// "FILTER_YOUTUBE_AD_VIDEO"
// "FILTER_YOUTUBE_AD_VIDEO_ID"
// "FILTER_YOUTUBE_CHANNEL"
// "FILTER_YOUTUBE_PROGRAMMATIC_GUARANTEED_ADVERTISER"
// "FILTER_YOUTUBE_PROGRAMMATIC_GUARANTEED_PARTNER"
// "FILTER_YOUTUBE_VIDEO"
// "FILTER_ZIP_POSTAL_CODE"
// "FILTER_PLACEMENT_NAME_ALL_YOUTUBE_CHANNELS"
// "FILTER_TRUEVIEW_PLACEMENT_ID"
// "FILTER_PATH_PATTERN_ID"
// "FILTER_PATH_EVENT_INDEX"
// "FILTER_EVENT_TYPE"
// "FILTER_CHANNEL_GROUPING"
Filter string `json:"filter,omitempty"`
// Match: Indicates how the filter should be matched to the value.
//
// Possible values:
// "UNKNOWN"
// "EXACT"
// "PARTIAL"
// "BEGINS_WITH"
// "WILDCARD_EXPRESSION"
Match string `json:"match,omitempty"`
// Values: Value to filter on.
Values []string `json:"values,omitempty"`
// ForceSendFields is a list of field names (e.g. "Filter") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Filter") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *PathQueryOptionsFilter) MarshalJSON() ([]byte, error) {
type NoMethod PathQueryOptionsFilter
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Query: Represents a query.
type Query struct {
// Kind: Identifies what kind of resource this is. Value: the fixed
// string "doubleclickbidmanager#query".
Kind string `json:"kind,omitempty"`
// Metadata: Query metadata.
Metadata *QueryMetadata `json:"metadata,omitempty"`
// Params: Query parameters.
Params *Parameters `json:"params,omitempty"`
// QueryId: Query ID.
QueryId int64 `json:"queryId,omitempty,string"`
// ReportDataEndTimeMs: The ending time for the data that is shown in
// the report. Note, reportDataEndTimeMs is required if
// metadata.dataRange is CUSTOM_DATES and ignored otherwise.
ReportDataEndTimeMs int64 `json:"reportDataEndTimeMs,omitempty,string"`
// ReportDataStartTimeMs: The starting time for the data that is shown
// in the report. Note, reportDataStartTimeMs is required if
// metadata.dataRange is CUSTOM_DATES and ignored otherwise.
ReportDataStartTimeMs int64 `json:"reportDataStartTimeMs,omitempty,string"`
// Schedule: Information on how often and when to run a query.
Schedule *QuerySchedule `json:"schedule,omitempty"`
// TimezoneCode: Canonical timezone code for report data time. Defaults
// to America/New_York.
TimezoneCode string `json:"timezoneCode,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Kind") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Kind") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Query) MarshalJSON() ([]byte, error) {
type NoMethod Query
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// QueryMetadata: Query metadata.
type QueryMetadata struct {
// DataRange: Range of report data.
//
// Possible values:
// "CUSTOM_DATES"
// "CURRENT_DAY"
// "PREVIOUS_DAY"
// "WEEK_TO_DATE"
// "MONTH_TO_DATE"
// "QUARTER_TO_DATE"
// "YEAR_TO_DATE"
// "PREVIOUS_WEEK"
// "PREVIOUS_HALF_MONTH"
// "PREVIOUS_MONTH"
// "PREVIOUS_QUARTER"
// "PREVIOUS_YEAR"
// "LAST_7_DAYS"
// "LAST_30_DAYS"
// "LAST_90_DAYS"
// "LAST_365_DAYS"
// "ALL_TIME"
// "LAST_14_DAYS"
// "TYPE_NOT_SUPPORTED"
// "LAST_60_DAYS"
DataRange string `json:"dataRange,omitempty"`
// Format: Format of the generated report.
//
// Possible values:
// "CSV"
// "EXCEL_CSV"
// "XLSX"
Format string `json:"format,omitempty"`
// GoogleCloudStoragePathForLatestReport: The path to the location in
// Google Cloud Storage where the latest report is stored.
GoogleCloudStoragePathForLatestReport string `json:"googleCloudStoragePathForLatestReport,omitempty"`
// GoogleDrivePathForLatestReport: The path in Google Drive for the
// latest report.
GoogleDrivePathForLatestReport string `json:"googleDrivePathForLatestReport,omitempty"`
// LatestReportRunTimeMs: The time when the latest report started to
// run.
LatestReportRunTimeMs int64 `json:"latestReportRunTimeMs,omitempty,string"`
// Locale: Locale of the generated reports. Valid values are cs CZECH de
// GERMAN en ENGLISH es SPANISH fr FRENCH it ITALIAN ja JAPANESE ko
// KOREAN pl POLISH pt-BR BRAZILIAN_PORTUGUESE ru RUSSIAN tr TURKISH uk
// UKRAINIAN zh-CN CHINA_CHINESE zh-TW TAIWAN_CHINESE An locale string
// not in the list above will generate reports in English.
Locale string `json:"locale,omitempty"`
// ReportCount: Number of reports that have been generated for the
// query.
ReportCount int64 `json:"reportCount,omitempty"`
// Running: Whether the latest report is currently running.
Running bool `json:"running,omitempty"`
// SendNotification: Whether to send an email notification when a report
// is ready. Default to false.
SendNotification bool `json:"sendNotification,omitempty"`
// ShareEmailAddress: List of email addresses which are sent email
// notifications when the report is finished. Separate from
// sendNotification.
ShareEmailAddress []string `json:"shareEmailAddress,omitempty"`
// Title: Query title. It is used to name the reports generated from
// this query.
Title string `json:"title,omitempty"`
// ForceSendFields is a list of field names (e.g. "DataRange") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DataRange") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *QueryMetadata) MarshalJSON() ([]byte, error) {
type NoMethod QueryMetadata
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// QuerySchedule: Information on how frequently and when to run a query.
type QuerySchedule struct {
// EndTimeMs: Datetime to periodically run the query until.
EndTimeMs int64 `json:"endTimeMs,omitempty,string"`
// Frequency: How often the query is run.
//
// Possible values:
// "ONE_TIME"
// "DAILY"
// "WEEKLY"
// "SEMI_MONTHLY"
// "MONTHLY"
// "QUARTERLY"
Frequency string `json:"frequency,omitempty"`
// NextRunMinuteOfDay: Deprecated. This field has no effect.
NextRunMinuteOfDay int64 `json:"nextRunMinuteOfDay,omitempty"`
// NextRunTimezoneCode: Canonical timezone code for report generation
// time. Defaults to America/New_York.
NextRunTimezoneCode string `json:"nextRunTimezoneCode,omitempty"`
// StartTimeMs: When to start running the query. Not applicable to
// `ONE_TIME` frequency.
StartTimeMs int64 `json:"startTimeMs,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "EndTimeMs") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "EndTimeMs") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *QuerySchedule) MarshalJSON() ([]byte, error) {
type NoMethod QuerySchedule
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Report: Represents a report.
type Report struct {
// Key: Key used to identify a report.
Key *ReportKey `json:"key,omitempty"`
// Metadata: Report metadata.
Metadata *ReportMetadata `json:"metadata,omitempty"`
// Params: Report parameters.
Params *Parameters `json:"params,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Key") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Report) MarshalJSON() ([]byte, error) {
type NoMethod Report
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ReportFailure: An explanation of a report failure.
type ReportFailure struct {
// ErrorCode: Error code that shows why the report was not created.
//
// Possible values:
// "AUTHENTICATION_ERROR"
// "UNAUTHORIZED_API_ACCESS"
// "SERVER_ERROR"
// "VALIDATION_ERROR"
// "REPORTING_FATAL_ERROR"
// "REPORTING_TRANSIENT_ERROR"
// "REPORTING_IMCOMPATIBLE_METRICS"
// "REPORTING_ILLEGAL_FILENAME"
// "REPORTING_QUERY_NOT_FOUND"
// "REPORTING_BUCKET_NOT_FOUND"
// "REPORTING_CREATE_BUCKET_FAILED"
// "REPORTING_DELETE_BUCKET_FAILED"
// "REPORTING_UPDATE_BUCKET_PERMISSION_FAILED"
// "REPORTING_WRITE_BUCKET_OBJECT_FAILED"
// "DEPRECATED_REPORTING_INVALID_QUERY"
// "REPORTING_INVALID_QUERY_TOO_MANY_UNFILTERED_LARGE_GROUP_BYS"
// "REPORTING_INVALID_QUERY_TITLE_MISSING"
// "REPORTING_INVALID_QUERY_MISSING_PARTNER_AND_ADVERTISER_FILTERS"
ErrorCode string `json:"errorCode,omitempty"`
// ForceSendFields is a list of field names (e.g. "ErrorCode") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ErrorCode") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ReportFailure) MarshalJSON() ([]byte, error) {
type NoMethod ReportFailure
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ReportKey: Key used to identify a report.
type ReportKey struct {
// QueryId: Query ID.
QueryId int64 `json:"queryId,omitempty,string"`
// ReportId: Report ID.
ReportId int64 `json:"reportId,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "QueryId") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "QueryId") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ReportKey) MarshalJSON() ([]byte, error) {
type NoMethod ReportKey
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ReportMetadata: Report metadata.
type ReportMetadata struct {
// GoogleCloudStoragePath: The path to the location in Google Cloud
// Storage where the report is stored.
GoogleCloudStoragePath string `json:"googleCloudStoragePath,omitempty"`
// ReportDataEndTimeMs: The ending time for the data that is shown in
// the report.
ReportDataEndTimeMs int64 `json:"reportDataEndTimeMs,omitempty,string"`
// ReportDataStartTimeMs: The starting time for the data that is shown
// in the report.
ReportDataStartTimeMs int64 `json:"reportDataStartTimeMs,omitempty,string"`
// Status: Report status.
Status *ReportStatus `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "GoogleCloudStoragePath") to unconditionally include in API requests.
// By default, fields with empty values are omitted from API requests.
// However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "GoogleCloudStoragePath")
// to include in API requests with the JSON null value. By default,
// fields with empty values are omitted from API requests. However, any
// field with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *ReportMetadata) MarshalJSON() ([]byte, error) {
type NoMethod ReportMetadata
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ReportStatus: Report status.
type ReportStatus struct {
// Failure: If the report failed, this records the cause.
Failure *ReportFailure `json:"failure,omitempty"`
// FinishTimeMs: The time when this report either completed successfully
// or failed.
FinishTimeMs int64 `json:"finishTimeMs,omitempty,string"`
// Format: The file type of the report.
//
// Possible values:
// "CSV"
// "EXCEL_CSV"
// "XLSX"
Format string `json:"format,omitempty"`
// State: The state of the report.
//
// Possible values:
// "RUNNING"
// "DONE"
// "FAILED"
State string `json:"state,omitempty"`
// ForceSendFields is a list of field names (e.g. "Failure") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Failure") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ReportStatus) MarshalJSON() ([]byte, error) {
type NoMethod ReportStatus
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// RowStatus: Represents the upload status of a row in the request.
type RowStatus struct {
// Changed: Whether the stored entity is changed as a result of upload.
Changed bool `json:"changed,omitempty"`
// EntityId: Entity Id.
EntityId int64 `json:"entityId,omitempty,string"`
// EntityName: Entity name.
EntityName string `json:"entityName,omitempty"`
// Errors: Reasons why the entity can't be uploaded.
Errors []string `json:"errors,omitempty"`
// Persisted: Whether the entity is persisted.
Persisted bool `json:"persisted,omitempty"`
// RowNumber: Row number.
RowNumber int64 `json:"rowNumber,omitempty"`
// ForceSendFields is a list of field names (e.g. "Changed") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Changed") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *RowStatus) MarshalJSON() ([]byte, error) {
type NoMethod RowStatus
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Rule: A Rule defines a name, and a boolean expression in [conjunctive
// normal form](http:
// //mathworld.wolfram.com/ConjunctiveNormalForm.html){.external} that
// can be // applied to a path event to determine if that name should be
// applied.
type Rule struct {
DisjunctiveMatchStatements []*DisjunctiveMatchStatement `json:"disjunctiveMatchStatements,omitempty"`
// Name: Rule name.
Name string `json:"name,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "DisjunctiveMatchStatements") to unconditionally include in API
// requests. By default, fields with empty values are omitted from API
// requests. However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g.
// "DisjunctiveMatchStatements") to include in API requests with the
// JSON null value. By default, fields with empty values are omitted
// from API requests. However, any field with an empty value appearing
// in NullFields will be sent to the server as null. It is an error if a
// field in this list has a non-empty value. This may be used to include
// null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Rule) MarshalJSON() ([]byte, error) {
type NoMethod Rule
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// RunQueryRequest: Request to run a stored query to generate a report.
type RunQueryRequest struct {
// DataRange: Report data range used to generate the report.
//
// Possible values:
// "CUSTOM_DATES"
// "CURRENT_DAY"
// "PREVIOUS_DAY"
// "WEEK_TO_DATE"
// "MONTH_TO_DATE"
// "QUARTER_TO_DATE"
// "YEAR_TO_DATE"
// "PREVIOUS_WEEK"
// "PREVIOUS_HALF_MONTH"
// "PREVIOUS_MONTH"
// "PREVIOUS_QUARTER"
// "PREVIOUS_YEAR"
// "LAST_7_DAYS"
// "LAST_30_DAYS"
// "LAST_90_DAYS"
// "LAST_365_DAYS"
// "ALL_TIME"
// "LAST_14_DAYS"
// "TYPE_NOT_SUPPORTED"
// "LAST_60_DAYS"
DataRange string `json:"dataRange,omitempty"`
// ReportDataEndTimeMs: The ending time for the data that is shown in
// the report. Note, reportDataEndTimeMs is required if dataRange is
// CUSTOM_DATES and ignored otherwise.
ReportDataEndTimeMs int64 `json:"reportDataEndTimeMs,omitempty,string"`
// ReportDataStartTimeMs: The starting time for the data that is shown
// in the report. Note, reportDataStartTimeMs is required if dataRange
// is CUSTOM_DATES and ignored otherwise.
ReportDataStartTimeMs int64 `json:"reportDataStartTimeMs,omitempty,string"`
// TimezoneCode: Canonical timezone code for report data time. Defaults
// to America/New_York.
TimezoneCode string `json:"timezoneCode,omitempty"`
// ForceSendFields is a list of field names (e.g. "DataRange") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DataRange") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *RunQueryRequest) MarshalJSON() ([]byte, error) {
type NoMethod RunQueryRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// UploadLineItemsRequest: Request to upload line items.
type UploadLineItemsRequest struct {
// DryRun: Set to true to get upload status without actually persisting
// the line items.
DryRun bool `json:"dryRun,omitempty"`
// Format: Format the line items are in. Default to CSV.
//
// Possible values:
// "CSV"
Format string `json:"format,omitempty"`
// LineItems: Line items in CSV to upload. Refer to Entity Write File
// Format for more information on file format.
LineItems string `json:"lineItems,omitempty"`
// ForceSendFields is a list of field names (e.g. "DryRun") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DryRun") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *UploadLineItemsRequest) MarshalJSON() ([]byte, error) {
type NoMethod UploadLineItemsRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// UploadLineItemsResponse: Upload line items response.
type UploadLineItemsResponse struct {
// UploadStatus: Status of upload.
UploadStatus *UploadStatus `json:"uploadStatus,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "UploadStatus") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "UploadStatus") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *UploadLineItemsResponse) MarshalJSON() ([]byte, error) {
type NoMethod UploadLineItemsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// UploadStatus: Represents the status of upload.
type UploadStatus struct {
// Errors: Reasons why upload can't be completed.
Errors []string `json:"errors,omitempty"`
// RowStatus: Per-row upload status.
RowStatus []*RowStatus `json:"rowStatus,omitempty"`
// ForceSendFields is a list of field names (e.g. "Errors") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Errors") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *UploadStatus) MarshalJSON() ([]byte, error) {
type NoMethod UploadStatus
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// method id "doubleclickbidmanager.lineitems.downloadlineitems":
type LineitemsDownloadlineitemsCall struct {
s *Service
downloadlineitemsrequest *DownloadLineItemsRequest
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Downloadlineitems: Retrieves line items in CSV format. YouTube &
// partners line items are not supported.
func (r *LineitemsService) Downloadlineitems(downloadlineitemsrequest *DownloadLineItemsRequest) *LineitemsDownloadlineitemsCall {
c := &LineitemsDownloadlineitemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.downloadlineitemsrequest = downloadlineitemsrequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func (c *LineitemsDownloadlineitemsCall) Fields(s ...googleapi.Field) *LineitemsDownloadlineitemsCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func (c *LineitemsDownloadlineitemsCall) Context(ctx context.Context) *LineitemsDownloadlineitemsCall {
c.ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func (c *LineitemsDownloadlineitemsCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *LineitemsDownloadlineitemsCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := make(http.Header)
reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200926")
for k, v := range c.header_ {
reqHeaders[k] = v
}
reqHeaders.Set("User-Agent", c.s.userAgent())
var body io.Reader = nil
body, err := googleapi.WithoutDataWrapper.JSONReader(c.downloadlineitemsrequest)
if err != nil {
return nil, err
}
reqHeaders.Set("Content-Type", "application/json")
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "lineitems/downloadlineitems")
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 "doubleclickbidmanager.lineitems.downloadlineitems" call.
// Exactly one of *DownloadLineItemsResponse or error will be non-nil.
// Any non-2xx status code is an error. Response headers are in either
// *DownloadLineItemsResponse.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 *LineitemsDownloadlineitemsCall) Do(opts ...googleapi.CallOption) (*DownloadLineItemsResponse, 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, &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, err
}
ret := &DownloadLineItemsResponse{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
// {
// "description": "Retrieves line items in CSV format. YouTube \u0026 partners line items are not supported.",
// "flatPath": "lineitems/downloadlineitems",
// "httpMethod": "POST",
// "id": "doubleclickbidmanager.lineitems.downloadlineitems",
// "parameterOrder": [],
// "parameters": {},
// "path": "lineitems/downloadlineitems",
// "request": {
// "$ref": "DownloadLineItemsRequest"
// },
// "response": {
// "$ref": "DownloadLineItemsResponse"
// },
// "scopes": [
// "https://www.googleapis.com/auth/doubleclickbidmanager"
// ]
// }
}
// method id "doubleclickbidmanager.lineitems.uploadlineitems":
type LineitemsUploadlineitemsCall struct {
s *Service
uploadlineitemsrequest *UploadLineItemsRequest
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Uploadlineitems: Uploads line items in CSV format. YouTube & partners
// line items are not supported.
func (r *LineitemsService) Uploadlineitems(uploadlineitemsrequest *UploadLineItemsRequest) *LineitemsUploadlineitemsCall {
c := &LineitemsUploadlineitemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.uploadlineitemsrequest = uploadlineitemsrequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func (c *LineitemsUploadlineitemsCall) Fields(s ...googleapi.Field) *LineitemsUploadlineitemsCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func (c *LineitemsUploadlineitemsCall) Context(ctx context.Context) *LineitemsUploadlineitemsCall {
c.ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func (c *LineitemsUploadlineitemsCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *LineitemsUploadlineitemsCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := make(http.Header)
reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200926")
for k, v := range c.header_ {
reqHeaders[k] = v
}
reqHeaders.Set("User-Agent", c.s.userAgent())
var body io.Reader = nil
body, err := googleapi.WithoutDataWrapper.JSONReader(c.uploadlineitemsrequest)
if err != nil {
return nil, err
}
reqHeaders.Set("Content-Type", "application/json")
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "lineitems/uploadlineitems")
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 "doubleclickbidmanager.lineitems.uploadlineitems" call.
// Exactly one of *UploadLineItemsResponse or error will be non-nil. Any
// non-2xx status code is an error. Response headers are in either
// *UploadLineItemsResponse.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 *LineitemsUploadlineitemsCall) Do(opts ...googleapi.CallOption) (*UploadLineItemsResponse, 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, &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, err
}
ret := &UploadLineItemsResponse{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
// {
// "description": "Uploads line items in CSV format. YouTube \u0026 partners line items are not supported.",
// "flatPath": "lineitems/uploadlineitems",
// "httpMethod": "POST",
// "id": "doubleclickbidmanager.lineitems.uploadlineitems",
// "parameterOrder": [],
// "parameters": {},
// "path": "lineitems/uploadlineitems",
// "request": {
// "$ref": "UploadLineItemsRequest"
// },
// "response": {
// "$ref": "UploadLineItemsResponse"
// },
// "scopes": [
// "https://www.googleapis.com/auth/doubleclickbidmanager"
// ]
// }
}
// method id "doubleclickbidmanager.queries.createquery":
type QueriesCreatequeryCall struct {
s *Service
query *Query
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Createquery: Creates a query.
func (r *QueriesService) Createquery(query *Query) *QueriesCreatequeryCall {
c := &QueriesCreatequeryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.query = query
return c
}
// Asynchronous sets the optional parameter "asynchronous": If true,
// tries to run the query asynchronously. Only applicable when the
// frequency is ONE_TIME.
func (c *QueriesCreatequeryCall) Asynchronous(asynchronous bool) *QueriesCreatequeryCall {
c.urlParams_.Set("asynchronous", fmt.Sprint(asynchronous))
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func (c *QueriesCreatequeryCall) Fields(s ...googleapi.Field) *QueriesCreatequeryCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func (c *QueriesCreatequeryCall) Context(ctx context.Context) *QueriesCreatequeryCall {
c.ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func (c *QueriesCreatequeryCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *QueriesCreatequeryCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := make(http.Header)
reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200926")
for k, v := range c.header_ {
reqHeaders[k] = v
}
reqHeaders.Set("User-Agent", c.s.userAgent())
var body io.Reader = nil
body, err := googleapi.WithoutDataWrapper.JSONReader(c.query)
if err != nil {
return nil, err
}
reqHeaders.Set("Content-Type", "application/json")
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "query")
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 "doubleclickbidmanager.queries.createquery" call.
// Exactly one of *Query or error will be non-nil. Any non-2xx status
// code is an error. Response headers are in either
// *Query.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 *QueriesCreatequeryCall) Do(opts ...googleapi.CallOption) (*Query, 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, &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, err
}
ret := &Query{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
// {
// "description": "Creates a query.",
// "flatPath": "query",
// "httpMethod": "POST",
// "id": "doubleclickbidmanager.queries.createquery",
// "parameterOrder": [],
// "parameters": {
// "asynchronous": {
// "default": "false",
// "description": "If true, tries to run the query asynchronously. Only applicable when the frequency is ONE_TIME.",
// "location": "query",
// "type": "boolean"
// }
// },
// "path": "query",
// "request": {
// "$ref": "Query"
// },
// "response": {
// "$ref": "Query"
// },
// "scopes": [
// "https://www.googleapis.com/auth/doubleclickbidmanager"
// ]
// }
}
// method id "doubleclickbidmanager.queries.deletequery":
type QueriesDeletequeryCall struct {
s *Service
queryId int64
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Deletequery: Deletes a stored query as well as the associated stored
// reports.
func (r *QueriesService) Deletequery(queryId int64) *QueriesDeletequeryCall {
c := &QueriesDeletequeryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.queryId = queryId
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func (c *QueriesDeletequeryCall) Fields(s ...googleapi.Field) *QueriesDeletequeryCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func (c *QueriesDeletequeryCall) Context(ctx context.Context) *QueriesDeletequeryCall {
c.ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func (c *QueriesDeletequeryCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *QueriesDeletequeryCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := make(http.Header)
reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200926")
for k, v := range c.header_ {
reqHeaders[k] = v
}
reqHeaders.Set("User-Agent", c.s.userAgent())
var body io.Reader = nil
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "query/{queryId}")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("DELETE", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"queryId": strconv.FormatInt(c.queryId, 10),
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "doubleclickbidmanager.queries.deletequery" call.
func (c *QueriesDeletequeryCall) Do(opts ...googleapi.CallOption) error {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if err != nil {
return err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return err
}
return nil
// {
// "description": "Deletes a stored query as well as the associated stored reports.",
// "flatPath": "query/{queryId}",
// "httpMethod": "DELETE",
// "id": "doubleclickbidmanager.queries.deletequery",
// "parameterOrder": [
// "queryId"
// ],
// "parameters": {
// "queryId": {
// "description": "Query ID to delete.",
// "format": "int64",
// "location": "path",
// "required": true,
// "type": "string"
// }
// },
// "path": "query/{queryId}",
// "scopes": [
// "https://www.googleapis.com/auth/doubleclickbidmanager"
// ]
// }
}
// method id "doubleclickbidmanager.queries.getquery":
type QueriesGetqueryCall struct {
s *Service
queryId int64
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// Getquery: Retrieves a stored query.
func (r *QueriesService) Getquery(queryId int64) *QueriesGetqueryCall {
c := &QueriesGetqueryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.queryId = queryId
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func (c *QueriesGetqueryCall) Fields(s ...googleapi.Field) *QueriesGetqueryCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets the optional parameter which makes the operation
// fail if the object's ETag matches the given value. This is useful for
// getting updates only after the object has changed since the last
// request. Use googleapi.IsNotModified to check whether the response
// error from Do is the result of In-None-Match.
func (c *QueriesGetqueryCall) IfNoneMatch(entityTag string) *QueriesGetqueryCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func (c *QueriesGetqueryCall) Context(ctx context.Context) *QueriesGetqueryCall {
c.ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func (c *QueriesGetqueryCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *QueriesGetqueryCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := make(http.Header)
reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200926")
for k, v := range c.header_ {
reqHeaders[k] = v
}
reqHeaders.Set("User-Agent", c.s.userAgent())
if c.ifNoneMatch_ != "" {
reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
}
var body io.Reader = nil
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "query/{queryId}")
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{
"queryId": strconv.FormatInt(c.queryId, 10),
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "doubleclickbidmanager.queries.getquery" call.
// Exactly one of *Query or error will be non-nil. Any non-2xx status
// code is an error. Response headers are in either
// *Query.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 *QueriesGetqueryCall) Do(opts ...googleapi.CallOption) (*Query, 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, &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, err
}
ret := &Query{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
// {
// "description": "Retrieves a stored query.",
// "flatPath": "query/{queryId}",
// "httpMethod": "GET",
// "id": "doubleclickbidmanager.queries.getquery",
// "parameterOrder": [
// "queryId"
// ],
// "parameters": {
// "queryId": {
// "description": "Query ID to retrieve.",
// "format": "int64",
// "location": "path",
// "required": true,
// "type": "string"
// }
// },
// "path": "query/{queryId}",
// "response": {
// "$ref": "Query"
// },
// "scopes": [
// "https://www.googleapis.com/auth/doubleclickbidmanager"
// ]
// }
}
// method id "doubleclickbidmanager.queries.listqueries":
type QueriesListqueriesCall struct {
s *Service
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// Listqueries: Retrieves stored queries.
func (r *QueriesService) Listqueries() *QueriesListqueriesCall {
c := &QueriesListqueriesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
return c
}
// PageSize sets the optional parameter "pageSize": Maximum number of
// results per page. Must be between 1 and 100. Defaults to 100 if
// unspecified.
func (c *QueriesListqueriesCall) PageSize(pageSize int64) *QueriesListqueriesCall {
c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
return c
}
// PageToken sets the optional parameter "pageToken": Optional
// pagination token.
func (c *QueriesListqueriesCall) PageToken(pageToken string) *QueriesListqueriesCall {
c.urlParams_.Set("pageToken", pageToken)
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func (c *QueriesListqueriesCall) Fields(s ...googleapi.Field) *QueriesListqueriesCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets the optional parameter which makes the operation
// fail if the object's ETag matches the given value. This is useful for
// getting updates only after the object has changed since the last
// request. Use googleapi.IsNotModified to check whether the response
// error from Do is the result of In-None-Match.
func (c *QueriesListqueriesCall) IfNoneMatch(entityTag string) *QueriesListqueriesCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func (c *QueriesListqueriesCall) Context(ctx context.Context) *QueriesListqueriesCall {
c.ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func (c *QueriesListqueriesCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *QueriesListqueriesCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := make(http.Header)
reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200926")