| // Copyright 2019 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" | 
 | //   ... | 
 | //   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" | 
 |  | 
 | import ( | 
 | 	"bytes" | 
 | 	"context" | 
 | 	"encoding/json" | 
 | 	"errors" | 
 | 	"fmt" | 
 | 	"io" | 
 | 	"net/http" | 
 | 	"net/url" | 
 | 	"strconv" | 
 | 	"strings" | 
 |  | 
 | 	gensupport "google.golang.org/api/gensupport" | 
 | 	googleapi "google.golang.org/api/googleapi" | 
 | 	option "google.golang.org/api/option" | 
 | 	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 | 
 |  | 
 | const apiId = "doubleclickbidmanager:v1" | 
 | const apiName = "doubleclickbidmanager" | 
 | const apiVersion = "v1" | 
 | const basePath = "https://www.googleapis.com/doubleclickbidmanager/v1/" | 
 |  | 
 | // 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...) | 
 | 	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 | 
 | } | 
 |  | 
 | // 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, TrueView 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: | 
 | 	//   "AD" | 
 | 	//   "AD_GROUP" | 
 | 	//   "CAMPAIGN" | 
 | 	//   "INSERTION_ORDER" | 
 | 	//   "INVENTORY_SOURCE" | 
 | 	//   "LINE_ITEM" | 
 | 	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" | 
 | 	//   "CAMPAIGN_ID" | 
 | 	//   "INSERTION_ORDER_ID" | 
 | 	//   "INVENTORY_SOURCE_ID" | 
 | 	//   "LINE_ITEM_ID" | 
 | 	//   "PARTNER_ID" | 
 | 	FilterType string `json:"filterType,omitempty"` | 
 |  | 
 | 	// Version: SDF Version (column names, types, order) in which the | 
 | 	// entities will be returned. Default to 3.1. | 
 | 	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) | 
 | } | 
 |  | 
 | // FilterPair: Filter used to match traffic data in your report. | 
 | type FilterPair struct { | 
 | 	// Type: Filter type. | 
 | 	// | 
 | 	// Possible values: | 
 | 	//   "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY" | 
 | 	//   "FILTER_ACTIVITY_ID" | 
 | 	//   "FILTER_ADVERTISER" | 
 | 	//   "FILTER_ADVERTISER_CURRENCY" | 
 | 	//   "FILTER_ADVERTISER_TIMEZONE" | 
 | 	//   "FILTER_AD_POSITION" | 
 | 	//   "FILTER_AGE" | 
 | 	//   "FILTER_AUTHORIZED_SELLER_STATE" | 
 | 	//   "FILTER_BRANDSAFE_CHANNEL_ID" | 
 | 	//   "FILTER_BROWSER" | 
 | 	//   "FILTER_BUDGET_SEGMENT_DESCRIPTION" | 
 | 	//   "FILTER_CAMPAIGN_DAILY_FREQUENCY" | 
 | 	//   "FILTER_CARRIER" | 
 | 	//   "FILTER_CHANNEL_ID" | 
 | 	//   "FILTER_CITY" | 
 | 	//   "FILTER_COMPANION_CREATIVE_ID" | 
 | 	//   "FILTER_CONVERSION_DELAY" | 
 | 	//   "FILTER_COUNTRY" | 
 | 	//   "FILTER_CREATIVE_ATTRIBUTE" | 
 | 	//   "FILTER_CREATIVE_HEIGHT" | 
 | 	//   "FILTER_CREATIVE_ID" | 
 | 	//   "FILTER_CREATIVE_SIZE" | 
 | 	//   "FILTER_CREATIVE_TYPE" | 
 | 	//   "FILTER_CREATIVE_WIDTH" | 
 | 	//   "FILTER_DATA_PROVIDER" | 
 | 	//   "FILTER_DATE" | 
 | 	//   "FILTER_DAY_OF_WEEK" | 
 | 	//   "FILTER_DEVICE_MAKE" | 
 | 	//   "FILTER_DEVICE_MODEL" | 
 | 	//   "FILTER_DEVICE_TYPE" | 
 | 	//   "FILTER_DFP_ORDER_ID" | 
 | 	//   "FILTER_DMA" | 
 | 	//   "FILTER_EXCHANGE_ID" | 
 | 	//   "FILTER_FLOODLIGHT_ACTIVITY_ID" | 
 | 	//   "FILTER_GENDER" | 
 | 	//   "FILTER_INSERTION_ORDER" | 
 | 	//   "FILTER_INVENTORY_COMMITMENT_TYPE" | 
 | 	//   "FILTER_INVENTORY_DELIVERY_METHOD" | 
 | 	//   "FILTER_INVENTORY_FORMAT" | 
 | 	//   "FILTER_INVENTORY_RATE_TYPE" | 
 | 	//   "FILTER_INVENTORY_SOURCE" | 
 | 	//   "FILTER_INVENTORY_SOURCE_EXTERNAL_ID" | 
 | 	//   "FILTER_INVENTORY_SOURCE_TYPE" | 
 | 	//   "FILTER_KEYWORD" | 
 | 	//   "FILTER_LINE_ITEM" | 
 | 	//   "FILTER_LINE_ITEM_DAILY_FREQUENCY" | 
 | 	//   "FILTER_LINE_ITEM_LIFETIME_FREQUENCY" | 
 | 	//   "FILTER_LINE_ITEM_TYPE" | 
 | 	//   "FILTER_MEDIA_PLAN" | 
 | 	//   "FILTER_MOBILE_DEVICE_MAKE" | 
 | 	//   "FILTER_MOBILE_DEVICE_MAKE_MODEL" | 
 | 	//   "FILTER_MOBILE_DEVICE_TYPE" | 
 | 	//   "FILTER_MOBILE_GEO" | 
 | 	//   "FILTER_MONTH" | 
 | 	//   "FILTER_MRAID_SUPPORT" | 
 | 	//   "FILTER_NIELSEN_AGE" | 
 | 	//   "FILTER_NIELSEN_COUNTRY_CODE" | 
 | 	//   "FILTER_NIELSEN_DEVICE_ID" | 
 | 	//   "FILTER_NIELSEN_GENDER" | 
 | 	//   "FILTER_NOT_SUPPORTED" | 
 | 	//   "FILTER_ORDER_ID" | 
 | 	//   "FILTER_OS" | 
 | 	//   "FILTER_PAGE_CATEGORY" | 
 | 	//   "FILTER_PAGE_LAYOUT" | 
 | 	//   "FILTER_PARTNER" | 
 | 	//   "FILTER_PARTNER_CURRENCY" | 
 | 	//   "FILTER_PUBLIC_INVENTORY" | 
 | 	//   "FILTER_QUARTER" | 
 | 	//   "FILTER_REGION" | 
 | 	//   "FILTER_REGULAR_CHANNEL_ID" | 
 | 	//   "FILTER_SITE_ID" | 
 | 	//   "FILTER_SITE_LANGUAGE" | 
 | 	//   "FILTER_SKIPPABLE_SUPPORT" | 
 | 	//   "FILTER_TARGETED_USER_LIST" | 
 | 	//   "FILTER_TIME_OF_DAY" | 
 | 	//   "FILTER_TRUEVIEW_AD_GROUP_AD_ID" | 
 | 	//   "FILTER_TRUEVIEW_AD_GROUP_ID" | 
 | 	//   "FILTER_TRUEVIEW_AGE" | 
 | 	//   "FILTER_TRUEVIEW_CATEGORY" | 
 | 	//   "FILTER_TRUEVIEW_CITY" | 
 | 	//   "FILTER_TRUEVIEW_CONVERSION_TYPE" | 
 | 	//   "FILTER_TRUEVIEW_COUNTRY" | 
 | 	//   "FILTER_TRUEVIEW_CUSTOM_AFFINITY" | 
 | 	//   "FILTER_TRUEVIEW_DMA" | 
 | 	//   "FILTER_TRUEVIEW_GENDER" | 
 | 	//   "FILTER_TRUEVIEW_IAR_AGE" | 
 | 	//   "FILTER_TRUEVIEW_IAR_CATEGORY" | 
 | 	//   "FILTER_TRUEVIEW_IAR_CITY" | 
 | 	//   "FILTER_TRUEVIEW_IAR_COUNTRY" | 
 | 	//   "FILTER_TRUEVIEW_IAR_GENDER" | 
 | 	//   "FILTER_TRUEVIEW_IAR_INTEREST" | 
 | 	//   "FILTER_TRUEVIEW_IAR_LANGUAGE" | 
 | 	//   "FILTER_TRUEVIEW_IAR_PARENTAL_STATUS" | 
 | 	//   "FILTER_TRUEVIEW_IAR_REGION" | 
 | 	//   "FILTER_TRUEVIEW_IAR_REMARKETING_LIST" | 
 | 	//   "FILTER_TRUEVIEW_IAR_TIME_OF_DAY" | 
 | 	//   "FILTER_TRUEVIEW_IAR_YOUTUBE_CHANNEL" | 
 | 	//   "FILTER_TRUEVIEW_IAR_YOUTUBE_VIDEO" | 
 | 	//   "FILTER_TRUEVIEW_IAR_ZIPCODE" | 
 | 	//   "FILTER_TRUEVIEW_INTEREST" | 
 | 	//   "FILTER_TRUEVIEW_KEYWORD" | 
 | 	//   "FILTER_TRUEVIEW_PARENTAL_STATUS" | 
 | 	//   "FILTER_TRUEVIEW_PLACEMENT" | 
 | 	//   "FILTER_TRUEVIEW_REGION" | 
 | 	//   "FILTER_TRUEVIEW_REMARKETING_LIST" | 
 | 	//   "FILTER_TRUEVIEW_URL" | 
 | 	//   "FILTER_TRUEVIEW_ZIPCODE" | 
 | 	//   "FILTER_UNKNOWN" | 
 | 	//   "FILTER_USER_LIST" | 
 | 	//   "FILTER_USER_LIST_FIRST_PARTY" | 
 | 	//   "FILTER_USER_LIST_THIRD_PARTY" | 
 | 	//   "FILTER_VIDEO_AD_POSITION_IN_STREAM" | 
 | 	//   "FILTER_VIDEO_COMPANION_SIZE" | 
 | 	//   "FILTER_VIDEO_COMPANION_TYPE" | 
 | 	//   "FILTER_VIDEO_CREATIVE_DURATION" | 
 | 	//   "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE" | 
 | 	//   "FILTER_VIDEO_DURATION_SECONDS" | 
 | 	//   "FILTER_VIDEO_DURATION_SECONDS_RANGE" | 
 | 	//   "FILTER_VIDEO_FORMAT_SUPPORT" | 
 | 	//   "FILTER_VIDEO_INVENTORY_TYPE" | 
 | 	//   "FILTER_VIDEO_PLAYER_SIZE" | 
 | 	//   "FILTER_VIDEO_RATING_TIER" | 
 | 	//   "FILTER_VIDEO_SKIPPABLE_SUPPORT" | 
 | 	//   "FILTER_VIDEO_VPAID_SUPPORT" | 
 | 	//   "FILTER_WEEK" | 
 | 	//   "FILTER_YEAR" | 
 | 	//   "FILTER_YOUTUBE_VERTICAL" | 
 | 	//   "FILTER_ZIP_CODE" | 
 | 	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"` | 
 |  | 
 | 	// 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"` | 
 |  | 
 | 	// 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) | 
 | } | 
 |  | 
 | // 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_ACTIVE_VIEW_EXPECTED_VIEWABILITY" | 
 | 	//   "FILTER_ACTIVITY_ID" | 
 | 	//   "FILTER_ADVERTISER" | 
 | 	//   "FILTER_ADVERTISER_CURRENCY" | 
 | 	//   "FILTER_ADVERTISER_TIMEZONE" | 
 | 	//   "FILTER_AD_POSITION" | 
 | 	//   "FILTER_AGE" | 
 | 	//   "FILTER_AUTHORIZED_SELLER_STATE" | 
 | 	//   "FILTER_BRANDSAFE_CHANNEL_ID" | 
 | 	//   "FILTER_BROWSER" | 
 | 	//   "FILTER_BUDGET_SEGMENT_DESCRIPTION" | 
 | 	//   "FILTER_CAMPAIGN_DAILY_FREQUENCY" | 
 | 	//   "FILTER_CARRIER" | 
 | 	//   "FILTER_CHANNEL_ID" | 
 | 	//   "FILTER_CITY" | 
 | 	//   "FILTER_COMPANION_CREATIVE_ID" | 
 | 	//   "FILTER_CONVERSION_DELAY" | 
 | 	//   "FILTER_COUNTRY" | 
 | 	//   "FILTER_CREATIVE_ATTRIBUTE" | 
 | 	//   "FILTER_CREATIVE_HEIGHT" | 
 | 	//   "FILTER_CREATIVE_ID" | 
 | 	//   "FILTER_CREATIVE_SIZE" | 
 | 	//   "FILTER_CREATIVE_TYPE" | 
 | 	//   "FILTER_CREATIVE_WIDTH" | 
 | 	//   "FILTER_DATA_PROVIDER" | 
 | 	//   "FILTER_DATE" | 
 | 	//   "FILTER_DAY_OF_WEEK" | 
 | 	//   "FILTER_DEVICE_MAKE" | 
 | 	//   "FILTER_DEVICE_MODEL" | 
 | 	//   "FILTER_DEVICE_TYPE" | 
 | 	//   "FILTER_DFP_ORDER_ID" | 
 | 	//   "FILTER_DMA" | 
 | 	//   "FILTER_EXCHANGE_ID" | 
 | 	//   "FILTER_FLOODLIGHT_ACTIVITY_ID" | 
 | 	//   "FILTER_GENDER" | 
 | 	//   "FILTER_INSERTION_ORDER" | 
 | 	//   "FILTER_INVENTORY_COMMITMENT_TYPE" | 
 | 	//   "FILTER_INVENTORY_DELIVERY_METHOD" | 
 | 	//   "FILTER_INVENTORY_FORMAT" | 
 | 	//   "FILTER_INVENTORY_RATE_TYPE" | 
 | 	//   "FILTER_INVENTORY_SOURCE" | 
 | 	//   "FILTER_INVENTORY_SOURCE_EXTERNAL_ID" | 
 | 	//   "FILTER_INVENTORY_SOURCE_TYPE" | 
 | 	//   "FILTER_KEYWORD" | 
 | 	//   "FILTER_LINE_ITEM" | 
 | 	//   "FILTER_LINE_ITEM_DAILY_FREQUENCY" | 
 | 	//   "FILTER_LINE_ITEM_LIFETIME_FREQUENCY" | 
 | 	//   "FILTER_LINE_ITEM_TYPE" | 
 | 	//   "FILTER_MEDIA_PLAN" | 
 | 	//   "FILTER_MOBILE_DEVICE_MAKE" | 
 | 	//   "FILTER_MOBILE_DEVICE_MAKE_MODEL" | 
 | 	//   "FILTER_MOBILE_DEVICE_TYPE" | 
 | 	//   "FILTER_MOBILE_GEO" | 
 | 	//   "FILTER_MONTH" | 
 | 	//   "FILTER_MRAID_SUPPORT" | 
 | 	//   "FILTER_NIELSEN_AGE" | 
 | 	//   "FILTER_NIELSEN_COUNTRY_CODE" | 
 | 	//   "FILTER_NIELSEN_DEVICE_ID" | 
 | 	//   "FILTER_NIELSEN_GENDER" | 
 | 	//   "FILTER_NOT_SUPPORTED" | 
 | 	//   "FILTER_ORDER_ID" | 
 | 	//   "FILTER_OS" | 
 | 	//   "FILTER_PAGE_CATEGORY" | 
 | 	//   "FILTER_PAGE_LAYOUT" | 
 | 	//   "FILTER_PARTNER" | 
 | 	//   "FILTER_PARTNER_CURRENCY" | 
 | 	//   "FILTER_PUBLIC_INVENTORY" | 
 | 	//   "FILTER_QUARTER" | 
 | 	//   "FILTER_REGION" | 
 | 	//   "FILTER_REGULAR_CHANNEL_ID" | 
 | 	//   "FILTER_SITE_ID" | 
 | 	//   "FILTER_SITE_LANGUAGE" | 
 | 	//   "FILTER_SKIPPABLE_SUPPORT" | 
 | 	//   "FILTER_TARGETED_USER_LIST" | 
 | 	//   "FILTER_TIME_OF_DAY" | 
 | 	//   "FILTER_TRUEVIEW_AD_GROUP_AD_ID" | 
 | 	//   "FILTER_TRUEVIEW_AD_GROUP_ID" | 
 | 	//   "FILTER_TRUEVIEW_AGE" | 
 | 	//   "FILTER_TRUEVIEW_CATEGORY" | 
 | 	//   "FILTER_TRUEVIEW_CITY" | 
 | 	//   "FILTER_TRUEVIEW_CONVERSION_TYPE" | 
 | 	//   "FILTER_TRUEVIEW_COUNTRY" | 
 | 	//   "FILTER_TRUEVIEW_CUSTOM_AFFINITY" | 
 | 	//   "FILTER_TRUEVIEW_DMA" | 
 | 	//   "FILTER_TRUEVIEW_GENDER" | 
 | 	//   "FILTER_TRUEVIEW_IAR_AGE" | 
 | 	//   "FILTER_TRUEVIEW_IAR_CATEGORY" | 
 | 	//   "FILTER_TRUEVIEW_IAR_CITY" | 
 | 	//   "FILTER_TRUEVIEW_IAR_COUNTRY" | 
 | 	//   "FILTER_TRUEVIEW_IAR_GENDER" | 
 | 	//   "FILTER_TRUEVIEW_IAR_INTEREST" | 
 | 	//   "FILTER_TRUEVIEW_IAR_LANGUAGE" | 
 | 	//   "FILTER_TRUEVIEW_IAR_PARENTAL_STATUS" | 
 | 	//   "FILTER_TRUEVIEW_IAR_REGION" | 
 | 	//   "FILTER_TRUEVIEW_IAR_REMARKETING_LIST" | 
 | 	//   "FILTER_TRUEVIEW_IAR_TIME_OF_DAY" | 
 | 	//   "FILTER_TRUEVIEW_IAR_YOUTUBE_CHANNEL" | 
 | 	//   "FILTER_TRUEVIEW_IAR_YOUTUBE_VIDEO" | 
 | 	//   "FILTER_TRUEVIEW_IAR_ZIPCODE" | 
 | 	//   "FILTER_TRUEVIEW_INTEREST" | 
 | 	//   "FILTER_TRUEVIEW_KEYWORD" | 
 | 	//   "FILTER_TRUEVIEW_PARENTAL_STATUS" | 
 | 	//   "FILTER_TRUEVIEW_PLACEMENT" | 
 | 	//   "FILTER_TRUEVIEW_REGION" | 
 | 	//   "FILTER_TRUEVIEW_REMARKETING_LIST" | 
 | 	//   "FILTER_TRUEVIEW_URL" | 
 | 	//   "FILTER_TRUEVIEW_ZIPCODE" | 
 | 	//   "FILTER_UNKNOWN" | 
 | 	//   "FILTER_USER_LIST" | 
 | 	//   "FILTER_USER_LIST_FIRST_PARTY" | 
 | 	//   "FILTER_USER_LIST_THIRD_PARTY" | 
 | 	//   "FILTER_VIDEO_AD_POSITION_IN_STREAM" | 
 | 	//   "FILTER_VIDEO_COMPANION_SIZE" | 
 | 	//   "FILTER_VIDEO_COMPANION_TYPE" | 
 | 	//   "FILTER_VIDEO_CREATIVE_DURATION" | 
 | 	//   "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE" | 
 | 	//   "FILTER_VIDEO_DURATION_SECONDS" | 
 | 	//   "FILTER_VIDEO_DURATION_SECONDS_RANGE" | 
 | 	//   "FILTER_VIDEO_FORMAT_SUPPORT" | 
 | 	//   "FILTER_VIDEO_INVENTORY_TYPE" | 
 | 	//   "FILTER_VIDEO_PLAYER_SIZE" | 
 | 	//   "FILTER_VIDEO_RATING_TIER" | 
 | 	//   "FILTER_VIDEO_SKIPPABLE_SUPPORT" | 
 | 	//   "FILTER_VIDEO_VPAID_SUPPORT" | 
 | 	//   "FILTER_WEEK" | 
 | 	//   "FILTER_YEAR" | 
 | 	//   "FILTER_YOUTUBE_VERTICAL" | 
 | 	//   "FILTER_ZIP_CODE" | 
 | 	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_ACTIVE_VIEW_AUDIBLE_VISIBLE_ON_COMPLETE_IMPRESSIONS" | 
 | 	//   "METRIC_ACTIVE_VIEW_AVERAGE_VIEWABLE_TIME" | 
 | 	//   "METRIC_ACTIVE_VIEW_DISTRIBUTION_UNMEASURABLE" | 
 | 	//   "METRIC_ACTIVE_VIEW_DISTRIBUTION_UNVIEWABLE" | 
 | 	//   "METRIC_ACTIVE_VIEW_DISTRIBUTION_VIEWABLE" | 
 | 	//   "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_PERCENT_AUDIBLE_VISIBLE_AT_START" | 
 | 	//   "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_FIRST_QUAR" | 
 | 	//   "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_ON_COMPLETE" | 
 | 	//   "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_SECOND_QUAR" | 
 | 	//   "METRIC_ACTIVE_VIEW_PERCENT_AUDIBLE_VISIBLE_THIRD_QUAR" | 
 | 	//   "METRIC_ACTIVE_VIEW_PERCENT_VIEWABLE_FOR_TIME_THRESHOLD" | 
 | 	//   "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_AT_START" | 
 | 	//   "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_FIRST_QUAR" | 
 | 	//   "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_ON_COMPLETE" | 
 | 	//   "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_SECOND_QUAR" | 
 | 	//   "METRIC_ACTIVE_VIEW_PERCENT_VISIBLE_THIRD_QUAR" | 
 | 	//   "METRIC_ACTIVE_VIEW_UNMEASURABLE_IMPRESSIONS" | 
 | 	//   "METRIC_ACTIVE_VIEW_UNVIEWABLE_IMPRESSIONS" | 
 | 	//   "METRIC_ACTIVE_VIEW_VIEWABLE_FOR_TIME_THRESHOLD" | 
 | 	//   "METRIC_ACTIVE_VIEW_VIEWABLE_IMPRESSIONS" | 
 | 	//   "METRIC_BID_REQUESTS" | 
 | 	//   "METRIC_BILLABLE_COST_ADVERTISER" | 
 | 	//   "METRIC_BILLABLE_COST_PARTNER" | 
 | 	//   "METRIC_BILLABLE_COST_USD" | 
 | 	//   "METRIC_BILLABLE_IMPRESSIONS" | 
 | 	//   "METRIC_CLICKS" | 
 | 	//   "METRIC_CLICK_TO_POST_CLICK_CONVERSION_RATE" | 
 | 	//   "METRIC_CM_POST_CLICK_REVENUE" | 
 | 	//   "METRIC_CM_POST_VIEW_REVENUE" | 
 | 	//   "METRIC_COMSCORE_VCE_AUDIENCE_AVG_FREQUENCY" | 
 | 	//   "METRIC_COMSCORE_VCE_AUDIENCE_IMPRESSIONS" | 
 | 	//   "METRIC_COMSCORE_VCE_AUDIENCE_IMPRESSIONS_SHARE" | 
 | 	//   "METRIC_COMSCORE_VCE_AUDIENCE_REACH_PCT" | 
 | 	//   "METRIC_COMSCORE_VCE_AUDIENCE_SHARE_PCT" | 
 | 	//   "METRIC_COMSCORE_VCE_GROSS_RATING_POINTS" | 
 | 	//   "METRIC_COMSCORE_VCE_POPULATION" | 
 | 	//   "METRIC_COMSCORE_VCE_UNIQUE_AUDIENCE" | 
 | 	//   "METRIC_CONVERSIONS_PER_MILLE" | 
 | 	//   "METRIC_COOKIE_REACH_AVERAGE_IMPRESSION_FREQUENCY" | 
 | 	//   "METRIC_COOKIE_REACH_IMPRESSION_REACH" | 
 | 	//   "METRIC_CPM_FEE1_ADVERTISER" | 
 | 	//   "METRIC_CPM_FEE1_PARTNER" | 
 | 	//   "METRIC_CPM_FEE1_USD" | 
 | 	//   "METRIC_CPM_FEE2_ADVERTISER" | 
 | 	//   "METRIC_CPM_FEE2_PARTNER" | 
 | 	//   "METRIC_CPM_FEE2_USD" | 
 | 	//   "METRIC_CPM_FEE3_ADVERTISER" | 
 | 	//   "METRIC_CPM_FEE3_PARTNER" | 
 | 	//   "METRIC_CPM_FEE3_USD" | 
 | 	//   "METRIC_CPM_FEE4_ADVERTISER" | 
 | 	//   "METRIC_CPM_FEE4_PARTNER" | 
 | 	//   "METRIC_CPM_FEE4_USD" | 
 | 	//   "METRIC_CPM_FEE5_ADVERTISER" | 
 | 	//   "METRIC_CPM_FEE5_PARTNER" | 
 | 	//   "METRIC_CPM_FEE5_USD" | 
 | 	//   "METRIC_CTR" | 
 | 	//   "METRIC_DATA_COST_ADVERTISER" | 
 | 	//   "METRIC_DATA_COST_PARTNER" | 
 | 	//   "METRIC_DATA_COST_USD" | 
 | 	//   "METRIC_DBM_ENGAGEMENT_RATE" | 
 | 	//   "METRIC_FEE10_ADVERTISER" | 
 | 	//   "METRIC_FEE10_PARTNER" | 
 | 	//   "METRIC_FEE10_USD" | 
 | 	//   "METRIC_FEE11_ADVERTISER" | 
 | 	//   "METRIC_FEE11_PARTNER" | 
 | 	//   "METRIC_FEE11_USD" | 
 | 	//   "METRIC_FEE12_ADVERTISER" | 
 | 	//   "METRIC_FEE12_PARTNER" | 
 | 	//   "METRIC_FEE12_USD" | 
 | 	//   "METRIC_FEE13_ADVERTISER" | 
 | 	//   "METRIC_FEE13_PARTNER" | 
 | 	//   "METRIC_FEE13_USD" | 
 | 	//   "METRIC_FEE14_ADVERTISER" | 
 | 	//   "METRIC_FEE14_PARTNER" | 
 | 	//   "METRIC_FEE14_USD" | 
 | 	//   "METRIC_FEE15_ADVERTISER" | 
 | 	//   "METRIC_FEE15_PARTNER" | 
 | 	//   "METRIC_FEE15_USD" | 
 | 	//   "METRIC_FEE16_ADVERTISER" | 
 | 	//   "METRIC_FEE16_PARTNER" | 
 | 	//   "METRIC_FEE16_USD" | 
 | 	//   "METRIC_FEE17_ADVERTISER" | 
 | 	//   "METRIC_FEE17_PARTNER" | 
 | 	//   "METRIC_FEE17_USD" | 
 | 	//   "METRIC_FEE18_ADVERTISER" | 
 | 	//   "METRIC_FEE18_PARTNER" | 
 | 	//   "METRIC_FEE18_USD" | 
 | 	//   "METRIC_FEE19_ADVERTISER" | 
 | 	//   "METRIC_FEE19_PARTNER" | 
 | 	//   "METRIC_FEE19_USD" | 
 | 	//   "METRIC_FEE20_ADVERTISER" | 
 | 	//   "METRIC_FEE20_PARTNER" | 
 | 	//   "METRIC_FEE20_USD" | 
 | 	//   "METRIC_FEE21_ADVERTISER" | 
 | 	//   "METRIC_FEE21_PARTNER" | 
 | 	//   "METRIC_FEE21_USD" | 
 | 	//   "METRIC_FEE22_ADVERTISER" | 
 | 	//   "METRIC_FEE22_PARTNER" | 
 | 	//   "METRIC_FEE22_USD" | 
 | 	//   "METRIC_FEE2_ADVERTISER" | 
 | 	//   "METRIC_FEE2_PARTNER" | 
 | 	//   "METRIC_FEE2_USD" | 
 | 	//   "METRIC_FEE3_ADVERTISER" | 
 | 	//   "METRIC_FEE3_PARTNER" | 
 | 	//   "METRIC_FEE3_USD" | 
 | 	//   "METRIC_FEE4_ADVERTISER" | 
 | 	//   "METRIC_FEE4_PARTNER" | 
 | 	//   "METRIC_FEE4_USD" | 
 | 	//   "METRIC_FEE5_ADVERTISER" | 
 | 	//   "METRIC_FEE5_PARTNER" | 
 | 	//   "METRIC_FEE5_USD" | 
 | 	//   "METRIC_FEE6_ADVERTISER" | 
 | 	//   "METRIC_FEE6_PARTNER" | 
 | 	//   "METRIC_FEE6_USD" | 
 | 	//   "METRIC_FEE7_ADVERTISER" | 
 | 	//   "METRIC_FEE7_PARTNER" | 
 | 	//   "METRIC_FEE7_USD" | 
 | 	//   "METRIC_FEE8_ADVERTISER" | 
 | 	//   "METRIC_FEE8_PARTNER" | 
 | 	//   "METRIC_FEE8_USD" | 
 | 	//   "METRIC_FEE9_ADVERTISER" | 
 | 	//   "METRIC_FEE9_PARTNER" | 
 | 	//   "METRIC_FEE9_USD" | 
 | 	//   "METRIC_FLOODLIGHT_IMPRESSIONS" | 
 | 	//   "METRIC_IMPRESSIONS" | 
 | 	//   "METRIC_IMPRESSIONS_TO_CONVERSION_RATE" | 
 | 	//   "METRIC_LAST_CLICKS" | 
 | 	//   "METRIC_LAST_IMPRESSIONS" | 
 | 	//   "METRIC_MEDIA_COST_ADVERTISER" | 
 | 	//   "METRIC_MEDIA_COST_ECPAPC_ADVERTISER" | 
 | 	//   "METRIC_MEDIA_COST_ECPAPC_PARTNER" | 
 | 	//   "METRIC_MEDIA_COST_ECPAPC_USD" | 
 | 	//   "METRIC_MEDIA_COST_ECPAPV_ADVERTISER" | 
 | 	//   "METRIC_MEDIA_COST_ECPAPV_PARTNER" | 
 | 	//   "METRIC_MEDIA_COST_ECPAPV_USD" | 
 | 	//   "METRIC_MEDIA_COST_ECPA_ADVERTISER" | 
 | 	//   "METRIC_MEDIA_COST_ECPA_PARTNER" | 
 | 	//   "METRIC_MEDIA_COST_ECPA_USD" | 
 | 	//   "METRIC_MEDIA_COST_ECPCV_ADVERTISER" | 
 | 	//   "METRIC_MEDIA_COST_ECPCV_PARTNER" | 
 | 	//   "METRIC_MEDIA_COST_ECPCV_USD" | 
 | 	//   "METRIC_MEDIA_COST_ECPC_ADVERTISER" | 
 | 	//   "METRIC_MEDIA_COST_ECPC_PARTNER" | 
 | 	//   "METRIC_MEDIA_COST_ECPC_USD" | 
 | 	//   "METRIC_MEDIA_COST_ECPM_ADVERTISER" | 
 | 	//   "METRIC_MEDIA_COST_ECPM_PARTNER" | 
 | 	//   "METRIC_MEDIA_COST_ECPM_USD" | 
 | 	//   "METRIC_MEDIA_COST_PARTNER" | 
 | 	//   "METRIC_MEDIA_COST_USD" | 
 | 	//   "METRIC_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER" | 
 | 	//   "METRIC_MEDIA_COST_VIEWABLE_ECPM_PARTNER" | 
 | 	//   "METRIC_MEDIA_COST_VIEWABLE_ECPM_USD" | 
 | 	//   "METRIC_MEDIA_FEE1_ADVERTISER" | 
 | 	//   "METRIC_MEDIA_FEE1_PARTNER" | 
 | 	//   "METRIC_MEDIA_FEE1_USD" | 
 | 	//   "METRIC_MEDIA_FEE2_ADVERTISER" | 
 | 	//   "METRIC_MEDIA_FEE2_PARTNER" | 
 | 	//   "METRIC_MEDIA_FEE2_USD" | 
 | 	//   "METRIC_MEDIA_FEE3_ADVERTISER" | 
 | 	//   "METRIC_MEDIA_FEE3_PARTNER" | 
 | 	//   "METRIC_MEDIA_FEE3_USD" | 
 | 	//   "METRIC_MEDIA_FEE4_ADVERTISER" | 
 | 	//   "METRIC_MEDIA_FEE4_PARTNER" | 
 | 	//   "METRIC_MEDIA_FEE4_USD" | 
 | 	//   "METRIC_MEDIA_FEE5_ADVERTISER" | 
 | 	//   "METRIC_MEDIA_FEE5_PARTNER" | 
 | 	//   "METRIC_MEDIA_FEE5_USD" | 
 | 	//   "METRIC_PIXEL_LOADS" | 
 | 	//   "METRIC_PLATFORM_FEE_ADVERTISER" | 
 | 	//   "METRIC_PLATFORM_FEE_PARTNER" | 
 | 	//   "METRIC_PLATFORM_FEE_USD" | 
 | 	//   "METRIC_POST_CLICK_DFA_REVENUE" | 
 | 	//   "METRIC_POST_VIEW_DFA_REVENUE" | 
 | 	//   "METRIC_PROFIT_ADVERTISER" | 
 | 	//   "METRIC_PROFIT_ECPAPC_ADVERTISER" | 
 | 	//   "METRIC_PROFIT_ECPAPC_PARTNER" | 
 | 	//   "METRIC_PROFIT_ECPAPC_USD" | 
 | 	//   "METRIC_PROFIT_ECPAPV_ADVERTISER" | 
 | 	//   "METRIC_PROFIT_ECPAPV_PARTNER" | 
 | 	//   "METRIC_PROFIT_ECPAPV_USD" | 
 | 	//   "METRIC_PROFIT_ECPA_ADVERTISER" | 
 | 	//   "METRIC_PROFIT_ECPA_PARTNER" | 
 | 	//   "METRIC_PROFIT_ECPA_USD" | 
 | 	//   "METRIC_PROFIT_ECPC_ADVERTISER" | 
 | 	//   "METRIC_PROFIT_ECPC_PARTNER" | 
 | 	//   "METRIC_PROFIT_ECPC_USD" | 
 | 	//   "METRIC_PROFIT_ECPM_ADVERTISER" | 
 | 	//   "METRIC_PROFIT_ECPM_PARTNER" | 
 | 	//   "METRIC_PROFIT_ECPM_USD" | 
 | 	//   "METRIC_PROFIT_MARGIN" | 
 | 	//   "METRIC_PROFIT_PARTNER" | 
 | 	//   "METRIC_PROFIT_USD" | 
 | 	//   "METRIC_PROFIT_VIEWABLE_ECPM_ADVERTISER" | 
 | 	//   "METRIC_PROFIT_VIEWABLE_ECPM_PARTNER" | 
 | 	//   "METRIC_PROFIT_VIEWABLE_ECPM_USD" | 
 | 	//   "METRIC_REACH_COOKIE_FREQUENCY" | 
 | 	//   "METRIC_REACH_COOKIE_REACH" | 
 | 	//   "METRIC_REVENUE_ADVERTISER" | 
 | 	//   "METRIC_REVENUE_ECPAPC_ADVERTISER" | 
 | 	//   "METRIC_REVENUE_ECPAPC_PARTNER" | 
 | 	//   "METRIC_REVENUE_ECPAPC_USD" | 
 | 	//   "METRIC_REVENUE_ECPAPV_ADVERTISER" | 
 | 	//   "METRIC_REVENUE_ECPAPV_PARTNER" | 
 | 	//   "METRIC_REVENUE_ECPAPV_USD" | 
 | 	//   "METRIC_REVENUE_ECPA_ADVERTISER" | 
 | 	//   "METRIC_REVENUE_ECPA_PARTNER" | 
 | 	//   "METRIC_REVENUE_ECPA_USD" | 
 | 	//   "METRIC_REVENUE_ECPCV_ADVERTISER" | 
 | 	//   "METRIC_REVENUE_ECPCV_PARTNER" | 
 | 	//   "METRIC_REVENUE_ECPCV_USD" | 
 | 	//   "METRIC_REVENUE_ECPC_ADVERTISER" | 
 | 	//   "METRIC_REVENUE_ECPC_PARTNER" | 
 | 	//   "METRIC_REVENUE_ECPC_USD" | 
 | 	//   "METRIC_REVENUE_ECPIAVC_ADVERTISER" | 
 | 	//   "METRIC_REVENUE_ECPM_ADVERTISER" | 
 | 	//   "METRIC_REVENUE_ECPM_PARTNER" | 
 | 	//   "METRIC_REVENUE_ECPM_USD" | 
 | 	//   "METRIC_REVENUE_PARTNER" | 
 | 	//   "METRIC_REVENUE_USD" | 
 | 	//   "METRIC_REVENUE_VIEWABLE_ECPM_ADVERTISER" | 
 | 	//   "METRIC_REVENUE_VIEWABLE_ECPM_PARTNER" | 
 | 	//   "METRIC_REVENUE_VIEWABLE_ECPM_USD" | 
 | 	//   "METRIC_RICH_MEDIA_SCROLLS" | 
 | 	//   "METRIC_RICH_MEDIA_VIDEO_COMPLETIONS" | 
 | 	//   "METRIC_RICH_MEDIA_VIDEO_FIRST_QUARTILE_COMPLETES" | 
 | 	//   "METRIC_RICH_MEDIA_VIDEO_FULL_SCREENS" | 
 | 	//   "METRIC_RICH_MEDIA_VIDEO_MIDPOINTS" | 
 | 	//   "METRIC_RICH_MEDIA_VIDEO_MUTES" | 
 | 	//   "METRIC_RICH_MEDIA_VIDEO_PAUSES" | 
 | 	//   "METRIC_RICH_MEDIA_VIDEO_PLAYS" | 
 | 	//   "METRIC_RICH_MEDIA_VIDEO_SKIPS" | 
 | 	//   "METRIC_RICH_MEDIA_VIDEO_THIRD_QUARTILE_COMPLETES" | 
 | 	//   "METRIC_TEA_TRUEVIEW_IMPRESSIONS" | 
 | 	//   "METRIC_TEA_TRUEVIEW_UNIQUE_COOKIES" | 
 | 	//   "METRIC_TOTAL_CONVERSIONS" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ADVERTISER" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPAPC_ADVERTISER" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPAPC_PARTNER" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPAPC_USD" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPAPV_ADVERTISER" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPAPV_PARTNER" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPAPV_USD" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPA_ADVERTISER" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPA_PARTNER" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPA_USD" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPCV_ADVERTISER" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPCV_PARTNER" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPCV_USD" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPC_ADVERTISER" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPC_PARTNER" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPC_USD" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPM_ADVERTISER" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPM_PARTNER" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_ECPM_USD" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_PARTNER" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_USD" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_PARTNER" | 
 | 	//   "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_USD" | 
 | 	//   "METRIC_TRUEVIEW_AVERAGE_CPE_ADVERTISER" | 
 | 	//   "METRIC_TRUEVIEW_AVERAGE_CPE_PARTNER" | 
 | 	//   "METRIC_TRUEVIEW_AVERAGE_CPE_USD" | 
 | 	//   "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_ADVERTISER" | 
 | 	//   "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_PARTNER" | 
 | 	//   "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_USD" | 
 | 	//   "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_ADVERTISER" | 
 | 	//   "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_PARTNER" | 
 | 	//   "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_USD" | 
 | 	//   "METRIC_TRUEVIEW_CONVERSION_MANY_PER_VIEW" | 
 | 	//   "METRIC_TRUEVIEW_CONVERSION_ONE_PER_VIEW" | 
 | 	//   "METRIC_TRUEVIEW_CONVERSION_RATE_ONE_PER_VIEW" | 
 | 	//   "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_ADVERTISER" | 
 | 	//   "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_PARTNER" | 
 | 	//   "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_USD" | 
 | 	//   "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_ADVERTISER" | 
 | 	//   "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_PARTNER" | 
 | 	//   "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_USD" | 
 | 	//   "METRIC_TRUEVIEW_COST_CONVERSION_MANY_PER_VIEW_RATIO" | 
 | 	//   "METRIC_TRUEVIEW_COST_CONVERSION_ONE_PER_VIEW_RATIO" | 
 | 	//   "METRIC_TRUEVIEW_CPV_ADVERTISER" | 
 | 	//   "METRIC_TRUEVIEW_CPV_PARTNER" | 
 | 	//   "METRIC_TRUEVIEW_CPV_USD" | 
 | 	//   "METRIC_TRUEVIEW_EARNED_LIKES" | 
 | 	//   "METRIC_TRUEVIEW_EARNED_PLAYLIST_ADDITIONS" | 
 | 	//   "METRIC_TRUEVIEW_EARNED_SHARES" | 
 | 	//   "METRIC_TRUEVIEW_EARNED_SUBSCRIBERS" | 
 | 	//   "METRIC_TRUEVIEW_EARNED_VIEWS" | 
 | 	//   "METRIC_TRUEVIEW_ENGAGEMENTS" | 
 | 	//   "METRIC_TRUEVIEW_ENGAGEMENT_RATE" | 
 | 	//   "METRIC_TRUEVIEW_IMPRESSION_SHARE" | 
 | 	//   "METRIC_TRUEVIEW_LOST_IS_BUDGET" | 
 | 	//   "METRIC_TRUEVIEW_LOST_IS_RANK" | 
 | 	//   "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUE" | 
 | 	//   "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_ADVERTISER" | 
 | 	//   "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_PARTNER" | 
 | 	//   "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_USD" | 
 | 	//   "METRIC_TRUEVIEW_UNIQUE_VIEWERS" | 
 | 	//   "METRIC_TRUEVIEW_VALUE_CONVERSION_MANY_PER_VIEW_RATIO" | 
 | 	//   "METRIC_TRUEVIEW_VALUE_CONVERSION_ONE_PER_VIEW_RATIO" | 
 | 	//   "METRIC_TRUEVIEW_VIEWS" | 
 | 	//   "METRIC_TRUEVIEW_VIEW_RATE" | 
 | 	//   "METRIC_TRUEVIEW_VIEW_THROUGH_CONVERSION" | 
 | 	//   "METRIC_UNIQUE_VISITORS_COOKIES" | 
 | 	//   "METRIC_UNKNOWN" | 
 | 	//   "METRIC_VIDEO_COMPANION_CLICKS" | 
 | 	//   "METRIC_VIDEO_COMPANION_IMPRESSIONS" | 
 | 	//   "METRIC_VIDEO_COMPLETION_RATE" | 
 | 	//   "METRIC_VIEWABLE_BID_REQUESTS" | 
 | 	Metrics []string `json:"metrics,omitempty"` | 
 |  | 
 | 	// Type: Report type. | 
 | 	// | 
 | 	// Possible values: | 
 | 	//   "TYPE_ACTIVE_GRP" | 
 | 	//   "TYPE_AUDIENCE_COMPOSITION" | 
 | 	//   "TYPE_AUDIENCE_PERFORMANCE" | 
 | 	//   "TYPE_CLIENT_SAFE" | 
 | 	//   "TYPE_COMSCORE_VCE" | 
 | 	//   "TYPE_CROSS_FEE" | 
 | 	//   "TYPE_CROSS_PARTNER" | 
 | 	//   "TYPE_CROSS_PARTNER_THIRD_PARTY_DATA_PROVIDER" | 
 | 	//   "TYPE_ESTIMATED_CONVERSION" | 
 | 	//   "TYPE_FEE" | 
 | 	//   "TYPE_GENERAL" | 
 | 	//   "TYPE_INVENTORY_AVAILABILITY" | 
 | 	//   "TYPE_KEYWORD" | 
 | 	//   "TYPE_LINEAR_TV_SEARCH_LIFT" | 
 | 	//   "TYPE_NIELSEN_AUDIENCE_PROFILE" | 
 | 	//   "TYPE_NIELSEN_DAILY_REACH_BUILD" | 
 | 	//   "TYPE_NIELSEN_ONLINE_GLOBAL_MARKET" | 
 | 	//   "TYPE_NIELSEN_SITE" | 
 | 	//   "TYPE_NOT_SUPPORTED" | 
 | 	//   "TYPE_ORDER_ID" | 
 | 	//   "TYPE_PAGE_CATEGORY" | 
 | 	//   "TYPE_PETRA_NIELSEN_AUDIENCE_PROFILE" | 
 | 	//   "TYPE_PETRA_NIELSEN_DAILY_REACH_BUILD" | 
 | 	//   "TYPE_PETRA_NIELSEN_ONLINE_GLOBAL_MARKET" | 
 | 	//   "TYPE_PIXEL_LOAD" | 
 | 	//   "TYPE_REACH_AND_FREQUENCY" | 
 | 	//   "TYPE_REACH_AUDIENCE" | 
 | 	//   "TYPE_THIRD_PARTY_DATA_PROVIDER" | 
 | 	//   "TYPE_TRUEVIEW" | 
 | 	//   "TYPE_TRUEVIEW_IAR" | 
 | 	//   "TYPE_VERIFICATION" | 
 | 	//   "TYPE_YOUTUBE_VERTICAL" | 
 | 	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) | 
 | } | 
 |  | 
 | // 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: | 
 | 	//   "ALL_TIME" | 
 | 	//   "CURRENT_DAY" | 
 | 	//   "CUSTOM_DATES" | 
 | 	//   "LAST_14_DAYS" | 
 | 	//   "LAST_30_DAYS" | 
 | 	//   "LAST_365_DAYS" | 
 | 	//   "LAST_7_DAYS" | 
 | 	//   "LAST_90_DAYS" | 
 | 	//   "MONTH_TO_DATE" | 
 | 	//   "PREVIOUS_DAY" | 
 | 	//   "PREVIOUS_HALF_MONTH" | 
 | 	//   "PREVIOUS_MONTH" | 
 | 	//   "PREVIOUS_QUARTER" | 
 | 	//   "PREVIOUS_WEEK" | 
 | 	//   "PREVIOUS_YEAR" | 
 | 	//   "QUARTER_TO_DATE" | 
 | 	//   "TYPE_NOT_SUPPORTED" | 
 | 	//   "WEEK_TO_DATE" | 
 | 	//   "YEAR_TO_DATE" | 
 | 	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: | 
 | 	//   "DAILY" | 
 | 	//   "MONTHLY" | 
 | 	//   "ONE_TIME" | 
 | 	//   "QUARTERLY" | 
 | 	//   "SEMI_MONTHLY" | 
 | 	//   "WEEKLY" | 
 | 	Frequency string `json:"frequency,omitempty"` | 
 |  | 
 | 	// NextRunMinuteOfDay: Time of day at which a new report will be | 
 | 	// generated, represented as minutes past midnight. Range is 0 to 1439. | 
 | 	// Only applies to scheduled reports. | 
 | 	NextRunMinuteOfDay int64 `json:"nextRunMinuteOfDay,omitempty"` | 
 |  | 
 | 	// NextRunTimezoneCode: Canonical timezone code for report generation | 
 | 	// time. Defaults to America/New_York. | 
 | 	NextRunTimezoneCode string `json:"nextRunTimezoneCode,omitempty"` | 
 |  | 
 | 	// 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" | 
 | 	//   "DEPRECATED_REPORTING_INVALID_QUERY" | 
 | 	//   "REPORTING_BUCKET_NOT_FOUND" | 
 | 	//   "REPORTING_CREATE_BUCKET_FAILED" | 
 | 	//   "REPORTING_DELETE_BUCKET_FAILED" | 
 | 	//   "REPORTING_FATAL_ERROR" | 
 | 	//   "REPORTING_ILLEGAL_FILENAME" | 
 | 	//   "REPORTING_IMCOMPATIBLE_METRICS" | 
 | 	//   "REPORTING_INVALID_QUERY_MISSING_PARTNER_AND_ADVERTISER_FILTERS" | 
 | 	//   "REPORTING_INVALID_QUERY_TITLE_MISSING" | 
 | 	//   "REPORTING_INVALID_QUERY_TOO_MANY_UNFILTERED_LARGE_GROUP_BYS" | 
 | 	//   "REPORTING_QUERY_NOT_FOUND" | 
 | 	//   "REPORTING_TRANSIENT_ERROR" | 
 | 	//   "REPORTING_UPDATE_BUCKET_PERMISSION_FAILED" | 
 | 	//   "REPORTING_WRITE_BUCKET_OBJECT_FAILED" | 
 | 	//   "SERVER_ERROR" | 
 | 	//   "UNAUTHORIZED_API_ACCESS" | 
 | 	//   "VALIDATION_ERROR" | 
 | 	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: | 
 | 	//   "DONE" | 
 | 	//   "FAILED" | 
 | 	//   "RUNNING" | 
 | 	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) | 
 | } | 
 |  | 
 | // 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: | 
 | 	//   "ALL_TIME" | 
 | 	//   "CURRENT_DAY" | 
 | 	//   "CUSTOM_DATES" | 
 | 	//   "LAST_14_DAYS" | 
 | 	//   "LAST_30_DAYS" | 
 | 	//   "LAST_365_DAYS" | 
 | 	//   "LAST_7_DAYS" | 
 | 	//   "LAST_90_DAYS" | 
 | 	//   "MONTH_TO_DATE" | 
 | 	//   "PREVIOUS_DAY" | 
 | 	//   "PREVIOUS_HALF_MONTH" | 
 | 	//   "PREVIOUS_MONTH" | 
 | 	//   "PREVIOUS_QUARTER" | 
 | 	//   "PREVIOUS_WEEK" | 
 | 	//   "PREVIOUS_YEAR" | 
 | 	//   "QUARTER_TO_DATE" | 
 | 	//   "TYPE_NOT_SUPPORTED" | 
 | 	//   "WEEK_TO_DATE" | 
 | 	//   "YEAR_TO_DATE" | 
 | 	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. TrueView 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/1.11.0 gdcl/20190802") | 
 | 	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. TrueView line items are not supported.", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "doubleclickbidmanager.lineitems.downloadlineitems", | 
 | 	//   "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. TrueView 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/1.11.0 gdcl/20190802") | 
 | 	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. TrueView line items are not supported.", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "doubleclickbidmanager.lineitems.uploadlineitems", | 
 | 	//   "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 | 
 | } | 
 |  | 
 | // 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/1.11.0 gdcl/20190802") | 
 | 	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.", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "doubleclickbidmanager.queries.createquery", | 
 | 	//   "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/1.11.0 gdcl/20190802") | 
 | 	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.", | 
 | 	//   "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/1.11.0 gdcl/20190802") | 
 | 	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.", | 
 | 	//   "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 | 
 | } | 
 |  | 
 | // 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/1.11.0 gdcl/20190802") | 
 | 	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, "queries") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "doubleclickbidmanager.queries.listqueries" call. | 
 | // Exactly one of *ListQueriesResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ListQueriesResponse.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 *QueriesListqueriesCall) Do(opts ...googleapi.CallOption) (*ListQueriesResponse, 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 := &ListQueriesResponse{ | 
 | 		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 stored queries.", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "doubleclickbidmanager.queries.listqueries", | 
 | 	//   "path": "queries", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ListQueriesResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/doubleclickbidmanager" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "doubleclickbidmanager.queries.runquery": | 
 |  | 
 | type QueriesRunqueryCall struct { | 
 | 	s               *Service | 
 | 	queryId         int64 | 
 | 	runqueryrequest *RunQueryRequest | 
 | 	urlParams_      gensupport.URLParams | 
 | 	ctx_            context.Context | 
 | 	header_         http.Header | 
 | } | 
 |  | 
 | // Runquery: Runs a stored query to generate a report. | 
 | func (r *QueriesService) Runquery(queryId int64, runqueryrequest *RunQueryRequest) *QueriesRunqueryCall { | 
 | 	c := &QueriesRunqueryCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.queryId = queryId | 
 | 	c.runqueryrequest = runqueryrequest | 
 | 	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 *QueriesRunqueryCall) Fields(s ...googleapi.Field) *QueriesRunqueryCall { | 
 | 	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 *QueriesRunqueryCall) Context(ctx context.Context) *QueriesRunqueryCall { | 
 | 	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 *QueriesRunqueryCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *QueriesRunqueryCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190802") | 
 | 	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.runqueryrequest) | 
 | 	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/{queryId}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"queryId": strconv.FormatInt(c.queryId, 10), | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "doubleclickbidmanager.queries.runquery" call. | 
 | func (c *QueriesRunqueryCall) 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": "Runs a stored query to generate a report.", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "doubleclickbidmanager.queries.runquery", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "queryId" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "queryId": { | 
 | 	//       "description": "Query ID to run.", | 
 | 	//       "format": "int64", | 
 | 	//       "location": "path", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "query/{queryId}", | 
 | 	//   "request": { | 
 | 	//     "$ref": "RunQueryRequest" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/doubleclickbidmanager" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "doubleclickbidmanager.reports.listreports": | 
 |  | 
 | type ReportsListreportsCall struct { | 
 | 	s            *Service | 
 | 	queryId      int64 | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // Listreports: Retrieves stored reports. | 
 | func (r *ReportsService) Listreports(queryId int64) *ReportsListreportsCall { | 
 | 	c := &ReportsListreportsCall{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 *ReportsListreportsCall) Fields(s ...googleapi.Field) *ReportsListreportsCall { | 
 | 	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 *ReportsListreportsCall) IfNoneMatch(entityTag string) *ReportsListreportsCall { | 
 | 	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 *ReportsListreportsCall) Context(ctx context.Context) *ReportsListreportsCall { | 
 | 	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 *ReportsListreportsCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *ReportsListreportsCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190802") | 
 | 	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, "queries/{queryId}/reports") | 
 | 	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.reports.listreports" call. | 
 | // Exactly one of *ListReportsResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ListReportsResponse.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 *ReportsListreportsCall) Do(opts ...googleapi.CallOption) (*ListReportsResponse, 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 := &ListReportsResponse{ | 
 | 		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 stored reports.", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "doubleclickbidmanager.reports.listreports", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "queryId" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "queryId": { | 
 | 	//       "description": "Query ID with which the reports are associated.", | 
 | 	//       "format": "int64", | 
 | 	//       "location": "path", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "queries/{queryId}/reports", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ListReportsResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/doubleclickbidmanager" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "doubleclickbidmanager.sdf.download": | 
 |  | 
 | type SdfDownloadCall struct { | 
 | 	s               *Service | 
 | 	downloadrequest *DownloadRequest | 
 | 	urlParams_      gensupport.URLParams | 
 | 	ctx_            context.Context | 
 | 	header_         http.Header | 
 | } | 
 |  | 
 | // Download: Retrieves entities in SDF format. | 
 | func (r *SdfService) Download(downloadrequest *DownloadRequest) *SdfDownloadCall { | 
 | 	c := &SdfDownloadCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.downloadrequest = downloadrequest | 
 | 	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 *SdfDownloadCall) Fields(s ...googleapi.Field) *SdfDownloadCall { | 
 | 	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 *SdfDownloadCall) Context(ctx context.Context) *SdfDownloadCall { | 
 | 	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 *SdfDownloadCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *SdfDownloadCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190802") | 
 | 	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.downloadrequest) | 
 | 	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, "sdf/download") | 
 | 	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.sdf.download" call. | 
 | // Exactly one of *DownloadResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *DownloadResponse.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 *SdfDownloadCall) Do(opts ...googleapi.CallOption) (*DownloadResponse, 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 := &DownloadResponse{ | 
 | 		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 entities in SDF format.", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "doubleclickbidmanager.sdf.download", | 
 | 	//   "path": "sdf/download", | 
 | 	//   "request": { | 
 | 	//     "$ref": "DownloadRequest" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "DownloadResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/doubleclickbidmanager" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } |