blob: f9762b46da8ce01363bdd8761744078d64a32aa7 [file] [log] [blame]
// Copyright 2019 Google Inc. All rights reserved.
// 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.
//
// See https://developers.google.com/bid-manager/
//
// Usage example:
//
// import "google.golang.org/api/doubleclickbidmanager/v1"
// ...
// doubleclickbidmanagerService, err := doubleclickbidmanager.New(oauthHttpClient)
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"
)
// 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"
)
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.
//
// Acceptable values are:
// - "AD"
// - "AD_GROUP"
// - "CAMPAIGN"
// - "INSERTION_ORDER"
// - "LINE_ITEM"
// - "INVENTORY_SOURCE"
//
// 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.
//
// 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_ID"
// "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_DV360_ACTIVITY_ID"
// "FILTER_EXCHANGE_ID"
// "FILTER_FLOODLIGHT_ACTIVITY_ID"
// "FILTER_FLOODLIGHT_PIXEL_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_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_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_ID"
// "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_DV360_ACTIVITY_ID"
// "FILTER_EXCHANGE_ID"
// "FILTER_FLOODLIGHT_ACTIVITY_ID"
// "FILTER_FLOODLIGHT_PIXEL_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_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_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: Whether to include data from Invite Media.
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_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_TEA_TRUEVIEW_UNIQUE_PEOPLE"
// "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)
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)
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)
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)
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)
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)
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)
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)
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)
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"
// ]
// }
}