blob: 447bfe8401ee733ca595bcd6655eba844f0dedb4 [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 adexchangebuyer2 provides access to the Ad Exchange Buyer API II.
//
// See https://developers.google.com/authorized-buyers/apis/reference/rest/
//
// Usage example:
//
// import "google.golang.org/api/adexchangebuyer2/v2beta1"
// ...
// adexchangebuyer2Service, err := adexchangebuyer2.New(oauthHttpClient)
package adexchangebuyer2 // import "google.golang.org/api/adexchangebuyer2/v2beta1"
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 = "adexchangebuyer2:v2beta1"
const apiName = "adexchangebuyer2"
const apiVersion = "v2beta1"
const basePath = "https://adexchangebuyer.googleapis.com/"
// OAuth2 scopes used by this API.
const (
// Manage your Ad Exchange buyer account configuration
AdexchangeBuyerScope = "https://www.googleapis.com/auth/adexchange.buyer"
)
func New(client *http.Client) (*Service, error) {
if client == nil {
return nil, errors.New("client is nil")
}
s := &Service{client: client, BasePath: basePath}
s.Accounts = NewAccountsService(s)
s.Bidders = NewBiddersService(s)
return s, nil
}
type Service struct {
client *http.Client
BasePath string // API endpoint base URL
UserAgent string // optional additional User-Agent fragment
Accounts *AccountsService
Bidders *BiddersService
}
func (s *Service) userAgent() string {
if s.UserAgent == "" {
return googleapi.UserAgent
}
return googleapi.UserAgent + " " + s.UserAgent
}
func NewAccountsService(s *Service) *AccountsService {
rs := &AccountsService{s: s}
rs.Clients = NewAccountsClientsService(s)
rs.Creatives = NewAccountsCreativesService(s)
rs.FinalizedProposals = NewAccountsFinalizedProposalsService(s)
rs.Products = NewAccountsProductsService(s)
rs.Proposals = NewAccountsProposalsService(s)
rs.PublisherProfiles = NewAccountsPublisherProfilesService(s)
return rs
}
type AccountsService struct {
s *Service
Clients *AccountsClientsService
Creatives *AccountsCreativesService
FinalizedProposals *AccountsFinalizedProposalsService
Products *AccountsProductsService
Proposals *AccountsProposalsService
PublisherProfiles *AccountsPublisherProfilesService
}
func NewAccountsClientsService(s *Service) *AccountsClientsService {
rs := &AccountsClientsService{s: s}
rs.Invitations = NewAccountsClientsInvitationsService(s)
rs.Users = NewAccountsClientsUsersService(s)
return rs
}
type AccountsClientsService struct {
s *Service
Invitations *AccountsClientsInvitationsService
Users *AccountsClientsUsersService
}
func NewAccountsClientsInvitationsService(s *Service) *AccountsClientsInvitationsService {
rs := &AccountsClientsInvitationsService{s: s}
return rs
}
type AccountsClientsInvitationsService struct {
s *Service
}
func NewAccountsClientsUsersService(s *Service) *AccountsClientsUsersService {
rs := &AccountsClientsUsersService{s: s}
return rs
}
type AccountsClientsUsersService struct {
s *Service
}
func NewAccountsCreativesService(s *Service) *AccountsCreativesService {
rs := &AccountsCreativesService{s: s}
rs.DealAssociations = NewAccountsCreativesDealAssociationsService(s)
return rs
}
type AccountsCreativesService struct {
s *Service
DealAssociations *AccountsCreativesDealAssociationsService
}
func NewAccountsCreativesDealAssociationsService(s *Service) *AccountsCreativesDealAssociationsService {
rs := &AccountsCreativesDealAssociationsService{s: s}
return rs
}
type AccountsCreativesDealAssociationsService struct {
s *Service
}
func NewAccountsFinalizedProposalsService(s *Service) *AccountsFinalizedProposalsService {
rs := &AccountsFinalizedProposalsService{s: s}
return rs
}
type AccountsFinalizedProposalsService struct {
s *Service
}
func NewAccountsProductsService(s *Service) *AccountsProductsService {
rs := &AccountsProductsService{s: s}
return rs
}
type AccountsProductsService struct {
s *Service
}
func NewAccountsProposalsService(s *Service) *AccountsProposalsService {
rs := &AccountsProposalsService{s: s}
return rs
}
type AccountsProposalsService struct {
s *Service
}
func NewAccountsPublisherProfilesService(s *Service) *AccountsPublisherProfilesService {
rs := &AccountsPublisherProfilesService{s: s}
return rs
}
type AccountsPublisherProfilesService struct {
s *Service
}
func NewBiddersService(s *Service) *BiddersService {
rs := &BiddersService{s: s}
rs.Accounts = NewBiddersAccountsService(s)
rs.FilterSets = NewBiddersFilterSetsService(s)
return rs
}
type BiddersService struct {
s *Service
Accounts *BiddersAccountsService
FilterSets *BiddersFilterSetsService
}
func NewBiddersAccountsService(s *Service) *BiddersAccountsService {
rs := &BiddersAccountsService{s: s}
rs.Creatives = NewBiddersAccountsCreativesService(s)
rs.FilterSets = NewBiddersAccountsFilterSetsService(s)
return rs
}
type BiddersAccountsService struct {
s *Service
Creatives *BiddersAccountsCreativesService
FilterSets *BiddersAccountsFilterSetsService
}
func NewBiddersAccountsCreativesService(s *Service) *BiddersAccountsCreativesService {
rs := &BiddersAccountsCreativesService{s: s}
return rs
}
type BiddersAccountsCreativesService struct {
s *Service
}
func NewBiddersAccountsFilterSetsService(s *Service) *BiddersAccountsFilterSetsService {
rs := &BiddersAccountsFilterSetsService{s: s}
rs.BidMetrics = NewBiddersAccountsFilterSetsBidMetricsService(s)
rs.BidResponseErrors = NewBiddersAccountsFilterSetsBidResponseErrorsService(s)
rs.BidResponsesWithoutBids = NewBiddersAccountsFilterSetsBidResponsesWithoutBidsService(s)
rs.FilteredBidRequests = NewBiddersAccountsFilterSetsFilteredBidRequestsService(s)
rs.FilteredBids = NewBiddersAccountsFilterSetsFilteredBidsService(s)
rs.ImpressionMetrics = NewBiddersAccountsFilterSetsImpressionMetricsService(s)
rs.LosingBids = NewBiddersAccountsFilterSetsLosingBidsService(s)
rs.NonBillableWinningBids = NewBiddersAccountsFilterSetsNonBillableWinningBidsService(s)
return rs
}
type BiddersAccountsFilterSetsService struct {
s *Service
BidMetrics *BiddersAccountsFilterSetsBidMetricsService
BidResponseErrors *BiddersAccountsFilterSetsBidResponseErrorsService
BidResponsesWithoutBids *BiddersAccountsFilterSetsBidResponsesWithoutBidsService
FilteredBidRequests *BiddersAccountsFilterSetsFilteredBidRequestsService
FilteredBids *BiddersAccountsFilterSetsFilteredBidsService
ImpressionMetrics *BiddersAccountsFilterSetsImpressionMetricsService
LosingBids *BiddersAccountsFilterSetsLosingBidsService
NonBillableWinningBids *BiddersAccountsFilterSetsNonBillableWinningBidsService
}
func NewBiddersAccountsFilterSetsBidMetricsService(s *Service) *BiddersAccountsFilterSetsBidMetricsService {
rs := &BiddersAccountsFilterSetsBidMetricsService{s: s}
return rs
}
type BiddersAccountsFilterSetsBidMetricsService struct {
s *Service
}
func NewBiddersAccountsFilterSetsBidResponseErrorsService(s *Service) *BiddersAccountsFilterSetsBidResponseErrorsService {
rs := &BiddersAccountsFilterSetsBidResponseErrorsService{s: s}
return rs
}
type BiddersAccountsFilterSetsBidResponseErrorsService struct {
s *Service
}
func NewBiddersAccountsFilterSetsBidResponsesWithoutBidsService(s *Service) *BiddersAccountsFilterSetsBidResponsesWithoutBidsService {
rs := &BiddersAccountsFilterSetsBidResponsesWithoutBidsService{s: s}
return rs
}
type BiddersAccountsFilterSetsBidResponsesWithoutBidsService struct {
s *Service
}
func NewBiddersAccountsFilterSetsFilteredBidRequestsService(s *Service) *BiddersAccountsFilterSetsFilteredBidRequestsService {
rs := &BiddersAccountsFilterSetsFilteredBidRequestsService{s: s}
return rs
}
type BiddersAccountsFilterSetsFilteredBidRequestsService struct {
s *Service
}
func NewBiddersAccountsFilterSetsFilteredBidsService(s *Service) *BiddersAccountsFilterSetsFilteredBidsService {
rs := &BiddersAccountsFilterSetsFilteredBidsService{s: s}
rs.Creatives = NewBiddersAccountsFilterSetsFilteredBidsCreativesService(s)
rs.Details = NewBiddersAccountsFilterSetsFilteredBidsDetailsService(s)
return rs
}
type BiddersAccountsFilterSetsFilteredBidsService struct {
s *Service
Creatives *BiddersAccountsFilterSetsFilteredBidsCreativesService
Details *BiddersAccountsFilterSetsFilteredBidsDetailsService
}
func NewBiddersAccountsFilterSetsFilteredBidsCreativesService(s *Service) *BiddersAccountsFilterSetsFilteredBidsCreativesService {
rs := &BiddersAccountsFilterSetsFilteredBidsCreativesService{s: s}
return rs
}
type BiddersAccountsFilterSetsFilteredBidsCreativesService struct {
s *Service
}
func NewBiddersAccountsFilterSetsFilteredBidsDetailsService(s *Service) *BiddersAccountsFilterSetsFilteredBidsDetailsService {
rs := &BiddersAccountsFilterSetsFilteredBidsDetailsService{s: s}
return rs
}
type BiddersAccountsFilterSetsFilteredBidsDetailsService struct {
s *Service
}
func NewBiddersAccountsFilterSetsImpressionMetricsService(s *Service) *BiddersAccountsFilterSetsImpressionMetricsService {
rs := &BiddersAccountsFilterSetsImpressionMetricsService{s: s}
return rs
}
type BiddersAccountsFilterSetsImpressionMetricsService struct {
s *Service
}
func NewBiddersAccountsFilterSetsLosingBidsService(s *Service) *BiddersAccountsFilterSetsLosingBidsService {
rs := &BiddersAccountsFilterSetsLosingBidsService{s: s}
return rs
}
type BiddersAccountsFilterSetsLosingBidsService struct {
s *Service
}
func NewBiddersAccountsFilterSetsNonBillableWinningBidsService(s *Service) *BiddersAccountsFilterSetsNonBillableWinningBidsService {
rs := &BiddersAccountsFilterSetsNonBillableWinningBidsService{s: s}
return rs
}
type BiddersAccountsFilterSetsNonBillableWinningBidsService struct {
s *Service
}
func NewBiddersFilterSetsService(s *Service) *BiddersFilterSetsService {
rs := &BiddersFilterSetsService{s: s}
rs.BidMetrics = NewBiddersFilterSetsBidMetricsService(s)
rs.BidResponseErrors = NewBiddersFilterSetsBidResponseErrorsService(s)
rs.BidResponsesWithoutBids = NewBiddersFilterSetsBidResponsesWithoutBidsService(s)
rs.FilteredBidRequests = NewBiddersFilterSetsFilteredBidRequestsService(s)
rs.FilteredBids = NewBiddersFilterSetsFilteredBidsService(s)
rs.ImpressionMetrics = NewBiddersFilterSetsImpressionMetricsService(s)
rs.LosingBids = NewBiddersFilterSetsLosingBidsService(s)
rs.NonBillableWinningBids = NewBiddersFilterSetsNonBillableWinningBidsService(s)
return rs
}
type BiddersFilterSetsService struct {
s *Service
BidMetrics *BiddersFilterSetsBidMetricsService
BidResponseErrors *BiddersFilterSetsBidResponseErrorsService
BidResponsesWithoutBids *BiddersFilterSetsBidResponsesWithoutBidsService
FilteredBidRequests *BiddersFilterSetsFilteredBidRequestsService
FilteredBids *BiddersFilterSetsFilteredBidsService
ImpressionMetrics *BiddersFilterSetsImpressionMetricsService
LosingBids *BiddersFilterSetsLosingBidsService
NonBillableWinningBids *BiddersFilterSetsNonBillableWinningBidsService
}
func NewBiddersFilterSetsBidMetricsService(s *Service) *BiddersFilterSetsBidMetricsService {
rs := &BiddersFilterSetsBidMetricsService{s: s}
return rs
}
type BiddersFilterSetsBidMetricsService struct {
s *Service
}
func NewBiddersFilterSetsBidResponseErrorsService(s *Service) *BiddersFilterSetsBidResponseErrorsService {
rs := &BiddersFilterSetsBidResponseErrorsService{s: s}
return rs
}
type BiddersFilterSetsBidResponseErrorsService struct {
s *Service
}
func NewBiddersFilterSetsBidResponsesWithoutBidsService(s *Service) *BiddersFilterSetsBidResponsesWithoutBidsService {
rs := &BiddersFilterSetsBidResponsesWithoutBidsService{s: s}
return rs
}
type BiddersFilterSetsBidResponsesWithoutBidsService struct {
s *Service
}
func NewBiddersFilterSetsFilteredBidRequestsService(s *Service) *BiddersFilterSetsFilteredBidRequestsService {
rs := &BiddersFilterSetsFilteredBidRequestsService{s: s}
return rs
}
type BiddersFilterSetsFilteredBidRequestsService struct {
s *Service
}
func NewBiddersFilterSetsFilteredBidsService(s *Service) *BiddersFilterSetsFilteredBidsService {
rs := &BiddersFilterSetsFilteredBidsService{s: s}
rs.Creatives = NewBiddersFilterSetsFilteredBidsCreativesService(s)
rs.Details = NewBiddersFilterSetsFilteredBidsDetailsService(s)
return rs
}
type BiddersFilterSetsFilteredBidsService struct {
s *Service
Creatives *BiddersFilterSetsFilteredBidsCreativesService
Details *BiddersFilterSetsFilteredBidsDetailsService
}
func NewBiddersFilterSetsFilteredBidsCreativesService(s *Service) *BiddersFilterSetsFilteredBidsCreativesService {
rs := &BiddersFilterSetsFilteredBidsCreativesService{s: s}
return rs
}
type BiddersFilterSetsFilteredBidsCreativesService struct {
s *Service
}
func NewBiddersFilterSetsFilteredBidsDetailsService(s *Service) *BiddersFilterSetsFilteredBidsDetailsService {
rs := &BiddersFilterSetsFilteredBidsDetailsService{s: s}
return rs
}
type BiddersFilterSetsFilteredBidsDetailsService struct {
s *Service
}
func NewBiddersFilterSetsImpressionMetricsService(s *Service) *BiddersFilterSetsImpressionMetricsService {
rs := &BiddersFilterSetsImpressionMetricsService{s: s}
return rs
}
type BiddersFilterSetsImpressionMetricsService struct {
s *Service
}
func NewBiddersFilterSetsLosingBidsService(s *Service) *BiddersFilterSetsLosingBidsService {
rs := &BiddersFilterSetsLosingBidsService{s: s}
return rs
}
type BiddersFilterSetsLosingBidsService struct {
s *Service
}
func NewBiddersFilterSetsNonBillableWinningBidsService(s *Service) *BiddersFilterSetsNonBillableWinningBidsService {
rs := &BiddersFilterSetsNonBillableWinningBidsService{s: s}
return rs
}
type BiddersFilterSetsNonBillableWinningBidsService struct {
s *Service
}
// AbsoluteDateRange: An absolute date range, specified by its start
// date and end date.
// The supported range of dates begins 30 days before today and ends
// today.
// Validity checked upon filter set creation. If a filter set with an
// absolute
// date range is run at a later date more than 30 days after start_date,
// it will
// fail.
type AbsoluteDateRange struct {
// EndDate: The end date of the range (inclusive).
// Must be within the 30 days leading up to current date, and must be
// equal to
// or after start_date.
EndDate *Date `json:"endDate,omitempty"`
// StartDate: The start date of the range (inclusive).
// Must be within the 30 days leading up to current date, and must be
// equal to
// or before end_date.
StartDate *Date `json:"startDate,omitempty"`
// ForceSendFields is a list of field names (e.g. "EndDate") 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. "EndDate") 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 *AbsoluteDateRange) MarshalJSON() ([]byte, error) {
type NoMethod AbsoluteDateRange
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AcceptProposalRequest: Request to accept a proposal.
type AcceptProposalRequest struct {
// ProposalRevision: The last known client revision number of the
// proposal.
ProposalRevision int64 `json:"proposalRevision,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "ProposalRevision") 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. "ProposalRevision") 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 *AcceptProposalRequest) MarshalJSON() ([]byte, error) {
type NoMethod AcceptProposalRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AdSize: Represents size of a single ad slot, or a creative.
type AdSize struct {
// Height: The height of the ad slot in pixels.
// This field will be present only when size type is `PIXEL`.
Height int64 `json:"height,omitempty,string"`
// SizeType: The size type of the ad slot.
//
// Possible values:
// "SIZE_TYPE_UNSPECIFIED" - A placeholder for an undefined size type.
// "PIXEL" - Ad slot with size specified by height and width in
// pixels.
// "INTERSTITIAL" - Special size to describe an interstitial ad slot.
// "NATIVE" - Native (mobile) ads rendered by the publisher.
// "FLUID" - Fluid size (i.e., responsive size) can be resized
// automatically with the
// change of outside environment.
SizeType string `json:"sizeType,omitempty"`
// Width: The width of the ad slot in pixels.
// This field will be present only when size type is `PIXEL`.
Width int64 `json:"width,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "Height") 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. "Height") 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 *AdSize) MarshalJSON() ([]byte, error) {
type NoMethod AdSize
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AddDealAssociationRequest: A request for associating a deal and a
// creative.
type AddDealAssociationRequest struct {
// Association: The association between a creative and a deal that
// should be added.
Association *CreativeDealAssociation `json:"association,omitempty"`
// ForceSendFields is a list of field names (e.g. "Association") 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. "Association") 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 *AddDealAssociationRequest) MarshalJSON() ([]byte, error) {
type NoMethod AddDealAssociationRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AddNoteRequest: Request message for adding a note to a given
// proposal.
type AddNoteRequest struct {
// Note: Details of the note to add.
Note *Note `json:"note,omitempty"`
// ForceSendFields is a list of field names (e.g. "Note") 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. "Note") 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 *AddNoteRequest) MarshalJSON() ([]byte, error) {
type NoMethod AddNoteRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AppContext: @OutputOnly The app type the restriction applies to for
// mobile device.
type AppContext struct {
// AppTypes: The app types this restriction applies to.
//
// Possible values:
// "NATIVE" - Native app context.
// "WEB" - Mobile web app context.
AppTypes []string `json:"appTypes,omitempty"`
// ForceSendFields is a list of field names (e.g. "AppTypes") 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. "AppTypes") 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 *AppContext) MarshalJSON() ([]byte, error) {
type NoMethod AppContext
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AuctionContext: @OutputOnly The auction type the restriction applies
// to.
type AuctionContext struct {
// AuctionTypes: The auction types this restriction applies to.
//
// Possible values:
// "OPEN_AUCTION" - The restriction applies to open auction.
// "DIRECT_DEALS" - The restriction applies to direct deals.
AuctionTypes []string `json:"auctionTypes,omitempty"`
// ForceSendFields is a list of field names (e.g. "AuctionTypes") 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. "AuctionTypes") 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 *AuctionContext) MarshalJSON() ([]byte, error) {
type NoMethod AuctionContext
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BidMetricsRow: The set of metrics that are measured in numbers of
// bids, representing how
// many bids with the specified dimension values were considered
// eligible at
// each stage of the bidding funnel;
type BidMetricsRow struct {
// Bids: The number of bids that Ad Exchange received from the buyer.
Bids *MetricValue `json:"bids,omitempty"`
// BidsInAuction: The number of bids that were permitted to compete in
// the auction.
BidsInAuction *MetricValue `json:"bidsInAuction,omitempty"`
// BilledImpressions: The number of bids for which the buyer was billed.
BilledImpressions *MetricValue `json:"billedImpressions,omitempty"`
// ImpressionsWon: The number of bids that won an impression.
ImpressionsWon *MetricValue `json:"impressionsWon,omitempty"`
// MeasurableImpressions: The number of bids for which the corresponding
// impression was measurable
// for viewability (as defined by Active View).
MeasurableImpressions *MetricValue `json:"measurableImpressions,omitempty"`
// RowDimensions: The values of all dimensions associated with metric
// values in this row.
RowDimensions *RowDimensions `json:"rowDimensions,omitempty"`
// ViewableImpressions: The number of bids for which the corresponding
// impression was viewable (as
// defined by Active View).
ViewableImpressions *MetricValue `json:"viewableImpressions,omitempty"`
// ForceSendFields is a list of field names (e.g. "Bids") 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. "Bids") 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 *BidMetricsRow) MarshalJSON() ([]byte, error) {
type NoMethod BidMetricsRow
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BidResponseWithoutBidsStatusRow: The number of impressions with the
// specified dimension values that were
// considered to have no applicable bids, as described by the specified
// status.
type BidResponseWithoutBidsStatusRow struct {
// ImpressionCount: The number of impressions for which there was a bid
// response with the
// specified status.
ImpressionCount *MetricValue `json:"impressionCount,omitempty"`
// RowDimensions: The values of all dimensions associated with metric
// values in this row.
RowDimensions *RowDimensions `json:"rowDimensions,omitempty"`
// Status: The status specifying why the bid responses were considered
// to have no
// applicable bids.
//
// Possible values:
// "STATUS_UNSPECIFIED" - A placeholder for an undefined status.
// This value will never be returned in responses.
// "RESPONSES_WITHOUT_BIDS" - The response had no bids.
// "RESPONSES_WITHOUT_BIDS_FOR_ACCOUNT" - The response had no bids for
// the specified account, though it may have
// included bids on behalf of other accounts.
// "RESPONSES_WITHOUT_BIDS_FOR_DEAL" - The response had no bids for
// the specified deal, though it may have
// included bids on other deals on behalf of the account to which the
// deal
// belongs.
Status string `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "ImpressionCount") 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. "ImpressionCount") 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 *BidResponseWithoutBidsStatusRow) MarshalJSON() ([]byte, error) {
type NoMethod BidResponseWithoutBidsStatusRow
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Buyer: Represents a buyer of inventory. Each buyer is identified by a
// unique
// Authorized Buyers account ID.
type Buyer struct {
// AccountId: Authorized Buyers account ID of the buyer.
AccountId string `json:"accountId,omitempty"`
// ForceSendFields is a list of field names (e.g. "AccountId") 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. "AccountId") 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 *Buyer) MarshalJSON() ([]byte, error) {
type NoMethod Buyer
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CalloutStatusRow: The number of impressions with the specified
// dimension values where the
// corresponding bid request or bid response was not successful, as
// described by
// the specified callout status.
type CalloutStatusRow struct {
// CalloutStatusId: The ID of the callout status.
// See
// [callout-status-codes](https://developers.google.com/authorized-buyers
// /rtb/downloads/callout-status-codes).
CalloutStatusId int64 `json:"calloutStatusId,omitempty"`
// ImpressionCount: The number of impressions for which there was a bid
// request or bid response
// with the specified callout status.
ImpressionCount *MetricValue `json:"impressionCount,omitempty"`
// RowDimensions: The values of all dimensions associated with metric
// values in this row.
RowDimensions *RowDimensions `json:"rowDimensions,omitempty"`
// ForceSendFields is a list of field names (e.g. "CalloutStatusId") 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. "CalloutStatusId") 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 *CalloutStatusRow) MarshalJSON() ([]byte, error) {
type NoMethod CalloutStatusRow
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CancelNegotiationRequest: Request to cancel an ongoing negotiation.
type CancelNegotiationRequest struct {
}
// Client: A client resource represents a client buyer—an agency,
// a brand, or an
// advertiser customer of the sponsor buyer. Users associated with the
// client
// buyer have restricted access to the Marketplace and certain other
// sections of
// the Authorized Buyers UI based on the role granted to the client
// buyer. All
// fields are required unless otherwise specified.
type Client struct {
// ClientAccountId: The globally-unique numerical ID of the client.
// The value of this field is ignored in create and update operations.
ClientAccountId int64 `json:"clientAccountId,omitempty,string"`
// ClientName: Name used to represent this client to publishers.
// You may have multiple clients that map to the same entity,
// but for each client the combination of `clientName` and entity
// must be unique.
// You can specify this field as empty.
ClientName string `json:"clientName,omitempty"`
// EntityId: Numerical identifier of the client entity.
// The entity can be an advertiser, a brand, or an agency.
// This identifier is unique among all the entities with the same
// type.
//
// A list of all known advertisers with their identifiers is available
// in
// the
// [advertisers.txt](https://storage.googleapis.com/adx-rtb-dictionar
// ies/advertisers.txt)
// file.
//
// A list of all known brands with their identifiers is available in
// the
// [brands.txt](https://storage.googleapis.com/adx-rtb-dictionaries/b
// rands.txt)
// file.
//
// A list of all known agencies with their identifiers is available in
// the
// [agencies.txt](https://storage.googleapis.com/adx-rtb-dictionaries
// /agencies.txt)
// file.
EntityId int64 `json:"entityId,omitempty,string"`
// EntityName: The name of the entity. This field is automatically
// fetched based on
// the type and ID.
// The value of this field is ignored in create and update operations.
EntityName string `json:"entityName,omitempty"`
// EntityType: The type of the client entity: `ADVERTISER`, `BRAND`, or
// `AGENCY`.
//
// Possible values:
// "ENTITY_TYPE_UNSPECIFIED" - A placeholder for an undefined client
// entity type. Should not be used.
// "ADVERTISER" - An advertiser.
// "BRAND" - A brand.
// "AGENCY" - An advertising agency.
EntityType string `json:"entityType,omitempty"`
// PartnerClientId: Optional arbitrary unique identifier of this client
// buyer from the
// standpoint of its Ad Exchange sponsor buyer.
//
// This field can be used to associate a client buyer with the
// identifier
// in the namespace of its sponsor buyer, lookup client buyers by
// that
// identifier and verify whether an Ad Exchange counterpart of a given
// client
// buyer already exists.
//
// If present, must be unique among all the client buyers for its
// Ad Exchange sponsor buyer.
PartnerClientId string `json:"partnerClientId,omitempty"`
// Role: The role which is assigned to the client buyer. Each role
// implies a set of
// permissions granted to the client. Must be one of
// `CLIENT_DEAL_VIEWER`,
// `CLIENT_DEAL_NEGOTIATOR` or `CLIENT_DEAL_APPROVER`.
//
// Possible values:
// "CLIENT_ROLE_UNSPECIFIED" - A placeholder for an undefined client
// role.
// "CLIENT_DEAL_VIEWER" - Users associated with this client can see
// publisher deal offers
// in the Marketplace.
// They can neither negotiate proposals nor approve deals.
// If this client is visible to publishers, they can send deal
// proposals
// to this client.
// "CLIENT_DEAL_NEGOTIATOR" - Users associated with this client can
// respond to deal proposals
// sent to them by publishers. They can also initiate deal proposals
// of their own.
// "CLIENT_DEAL_APPROVER" - Users associated with this client can
// approve eligible deals
// on your behalf. Some deals may still explicitly require
// publisher
// finalization. If this role is not selected, the sponsor buyer
// will need to manually approve each of their deals.
Role string `json:"role,omitempty"`
// Status: The status of the client buyer.
//
// Possible values:
// "CLIENT_STATUS_UNSPECIFIED" - A placeholder for an undefined client
// status.
// "DISABLED" - A client that is currently disabled.
// "ACTIVE" - A client that is currently active.
Status string `json:"status,omitempty"`
// VisibleToSeller: Whether the client buyer will be visible to sellers.
VisibleToSeller bool `json:"visibleToSeller,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ClientAccountId") 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. "ClientAccountId") 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 *Client) MarshalJSON() ([]byte, error) {
type NoMethod Client
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ClientUser: A client user is created under a client buyer and has
// restricted access to
// the Marketplace and certain other sections of the Authorized Buyers
// UI based
// on the role granted to the associated client buyer.
//
// The only way a new client user can be created is via accepting
// an
// email invitation
// (see the
// accounts.clients.invitations.create
// method).
//
// All fields are required unless otherwise specified.
type ClientUser struct {
// ClientAccountId: Numerical account ID of the client buyer
// with which the user is associated; the
// buyer must be a client of the current sponsor buyer.
// The value of this field is ignored in an update operation.
ClientAccountId int64 `json:"clientAccountId,omitempty,string"`
// Email: User's email address. The value of this field
// is ignored in an update operation.
Email string `json:"email,omitempty"`
// Status: The status of the client user.
//
// Possible values:
// "USER_STATUS_UNSPECIFIED" - A placeholder for an undefined user
// status.
// "PENDING" - A user who was already created but hasn't accepted the
// invitation yet.
// "ACTIVE" - A user that is currently active.
// "DISABLED" - A user that is currently disabled.
Status string `json:"status,omitempty"`
// UserId: The unique numerical ID of the client user
// that has accepted an invitation.
// The value of this field is ignored in an update operation.
UserId int64 `json:"userId,omitempty,string"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ClientAccountId") 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. "ClientAccountId") 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 *ClientUser) MarshalJSON() ([]byte, error) {
type NoMethod ClientUser
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ClientUserInvitation: An invitation for a new client user to get
// access to the Authorized Buyers
// UI. All fields are required unless otherwise specified.
type ClientUserInvitation struct {
// ClientAccountId: Numerical account ID of the client buyer
// that the invited user is associated with.
// The value of this field is ignored in create operations.
ClientAccountId int64 `json:"clientAccountId,omitempty,string"`
// Email: The email address to which the invitation is sent.
// Email
// addresses should be unique among all client users under each
// sponsor
// buyer.
Email string `json:"email,omitempty"`
// InvitationId: The unique numerical ID of the invitation that is sent
// to the user.
// The value of this field is ignored in create operations.
InvitationId int64 `json:"invitationId,omitempty,string"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ClientAccountId") 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. "ClientAccountId") 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 *ClientUserInvitation) MarshalJSON() ([]byte, error) {
type NoMethod ClientUserInvitation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CompleteSetupRequest: Request message for indicating that the
// proposal's setup step is complete.
type CompleteSetupRequest struct {
}
// ContactInformation: Contains information on how a buyer or seller can
// be reached.
type ContactInformation struct {
// Email: Email address for the contact.
Email string `json:"email,omitempty"`
// Name: The name of the contact.
Name string `json:"name,omitempty"`
// ForceSendFields is a list of field names (e.g. "Email") 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. "Email") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ContactInformation) MarshalJSON() ([]byte, error) {
type NoMethod ContactInformation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Correction: @OutputOnly Shows any corrections that were applied to
// this creative.
type Correction struct {
// Contexts: The contexts for the correction.
Contexts []*ServingContext `json:"contexts,omitempty"`
// Details: Additional details about what was corrected.
Details []string `json:"details,omitempty"`
// Type: The type of correction that was applied to the creative.
//
// Possible values:
// "CORRECTION_TYPE_UNSPECIFIED" - The correction type is unknown.
// Refer to the details for more information.
// "VENDOR_IDS_ADDED" - The ad's declared vendors did not match the
// vendors that were detected.
// The detected vendors were added.
// "SSL_ATTRIBUTE_REMOVED" - The ad had the SSL attribute declared but
// was not SSL-compliant.
// The SSL attribute was removed.
// "FLASH_FREE_ATTRIBUTE_REMOVED" - The ad was declared as Flash-free
// but contained Flash, so the Flash-free
// attribute was removed.
// "FLASH_FREE_ATTRIBUTE_ADDED" - The ad was not declared as
// Flash-free but it did not reference any flash
// content, so the Flash-free attribute was added.
// "REQUIRED_ATTRIBUTE_ADDED" - The ad did not declare a required
// creative attribute.
// The attribute was added.
// "REQUIRED_VENDOR_ADDED" - The ad did not declare a required
// technology vendor.
// The technology vendor was added.
// "SSL_ATTRIBUTE_ADDED" - The ad did not declare the SSL attribute
// but was SSL-compliant, so the
// SSL attribute was added.
// "IN_BANNER_VIDEO_ATTRIBUTE_ADDED" - Properties consistent with
// In-banner video were found, so an
// In-Banner Video attribute was added.
// "MRAID_ATTRIBUTE_ADDED" - The ad makes calls to the MRAID API so
// the MRAID attribute was added.
// "FLASH_ATTRIBUTE_REMOVED" - The ad unnecessarily declared the Flash
// attribute, so the Flash attribute
// was removed.
// "VIDEO_IN_SNIPPET_ATTRIBUTE_ADDED" - The ad contains video content.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Contexts") 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. "Contexts") 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 *Correction) MarshalJSON() ([]byte, error) {
type NoMethod Correction
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Creative: A creative and its classification data.
//
// Next ID: 39
type Creative struct {
// AccountId: The account that this creative belongs to.
// Can be used to filter the response of the
// creatives.list
// method.
AccountId string `json:"accountId,omitempty"`
// AdChoicesDestinationUrl: The link to AdChoices destination page.
AdChoicesDestinationUrl string `json:"adChoicesDestinationUrl,omitempty"`
// AdvertiserName: The name of the company being advertised in the
// creative.
AdvertiserName string `json:"advertiserName,omitempty"`
// AgencyId: The agency ID for this creative.
AgencyId int64 `json:"agencyId,omitempty,string"`
// ApiUpdateTime: @OutputOnly The last update timestamp of the creative
// via API.
ApiUpdateTime string `json:"apiUpdateTime,omitempty"`
// Attributes: All attributes for the ads that may be shown from this
// creative.
// Can be used to filter the response of the
// creatives.list
// method.
//
// Possible values:
// "ATTRIBUTE_UNSPECIFIED" - Do not use. This is a placeholder value
// only.
// "IS_TAGGED" - The creative is tagged.
// "IS_COOKIE_TARGETED" - The creative is cookie targeted.
// "IS_USER_INTEREST_TARGETED" - The creative is user interest
// targeted.
// "EXPANDING_DIRECTION_NONE" - The creative does not expand.
// "EXPANDING_DIRECTION_UP" - The creative expands up.
// "EXPANDING_DIRECTION_DOWN" - The creative expands down.
// "EXPANDING_DIRECTION_LEFT" - The creative expands left.
// "EXPANDING_DIRECTION_RIGHT" - The creative expands right.
// "EXPANDING_DIRECTION_UP_LEFT" - The creative expands up and left.
// "EXPANDING_DIRECTION_UP_RIGHT" - The creative expands up and right.
// "EXPANDING_DIRECTION_DOWN_LEFT" - The creative expands down and
// left.
// "EXPANDING_DIRECTION_DOWN_RIGHT" - The creative expands down and
// right.
// "CREATIVE_TYPE_HTML" - The creative type is HTML.
// "CREATIVE_TYPE_VAST_VIDEO" - The creative type is VAST video.
// "EXPANDING_DIRECTION_UP_OR_DOWN" - The creative expands up or down.
// "EXPANDING_DIRECTION_LEFT_OR_RIGHT" - The creative expands left or
// right.
// "EXPANDING_DIRECTION_ANY_DIAGONAL" - The creative expands on any
// diagonal.
// "EXPANDING_ACTION_ROLLOVER_TO_EXPAND" - The creative expands when
// rolled over.
// "INSTREAM_VAST_VIDEO_TYPE_VPAID_FLASH" - The instream vast video
// type is vpaid flash.
// "RICH_MEDIA_CAPABILITY_TYPE_MRAID" - The creative is MRAID.
// "RICH_MEDIA_CAPABILITY_TYPE_FLASH" - The creative is Flash.
// "RICH_MEDIA_CAPABILITY_TYPE_HTML5" - The creative is HTML5.
// "RICH_MEDIA_CAPABILITY_TYPE_SSL" - The creative is SSL.
// "RICH_MEDIA_CAPABILITY_TYPE_NON_SSL" - The creative is non-SSL.
// "RICH_MEDIA_CAPABILITY_TYPE_INTERSTITIAL" - The creative is an
// interstitial.
// "NATIVE_ELIGIBILITY_ELIGIBLE" - The creative is eligible for
// native.
// "NATIVE_ELIGIBILITY_NOT_ELIGIBLE" - The creative is not eligible
// for native.
// "IN_BANNER_VIDEO" - The video type is in-banner video.
// "RENDERING_SIZELESS_ADX" - The creative can dynamically resize to
// fill a variety of slot sizes.
// "OMSDK_1_0" - The open measurement SDK is supported.
Attributes []string `json:"attributes,omitempty"`
// ClickThroughUrls: The set of destination URLs for the creative.
ClickThroughUrls []string `json:"clickThroughUrls,omitempty"`
// Corrections: @OutputOnly Shows any corrections that were applied to
// this creative.
Corrections []*Correction `json:"corrections,omitempty"`
// CreativeId: The buyer-defined creative ID of this creative.
// Can be used to filter the response of the
// creatives.list
// method.
CreativeId string `json:"creativeId,omitempty"`
// DealsStatus: @OutputOnly The top-level deals status of this
// creative.
// If disapproved, an entry for 'auctionType=DIRECT_DEALS' (or 'ALL')
// in
// serving_restrictions will also exist. Note
// that this may be nuanced with other contextual restrictions, in which
// case,
// it may be preferable to read from serving_restrictions directly.
// Can be used to filter the response of the
// creatives.list
// method.
//
// Possible values:
// "STATUS_UNSPECIFIED" - The status is unknown.
// "NOT_CHECKED" - The creative has not been checked.
// "CONDITIONALLY_APPROVED" - The creative has been conditionally
// approved.
// See serving_restrictions for details.
// "APPROVED" - The creative has been approved.
// "DISAPPROVED" - The creative has been disapproved.
DealsStatus string `json:"dealsStatus,omitempty"`
// DeclaredClickThroughUrls: The set of declared destination URLs for
// the creative.
DeclaredClickThroughUrls []string `json:"declaredClickThroughUrls,omitempty"`
// DetectedAdvertiserIds: @OutputOnly Detected advertiser IDs, if any.
DetectedAdvertiserIds googleapi.Int64s `json:"detectedAdvertiserIds,omitempty"`
// DetectedDomains: @OutputOnly
// The detected domains for this creative.
DetectedDomains []string `json:"detectedDomains,omitempty"`
// DetectedLanguages: @OutputOnly
// The detected languages for this creative. The order is arbitrary. The
// codes
// are 2 or 5 characters and are documented
// at
// https://developers.google.com/adwords/api/docs/appendix/languagecod
// es.
DetectedLanguages []string `json:"detectedLanguages,omitempty"`
// DetectedProductCategories: @OutputOnly Detected product categories,
// if any.
// See the ad-product-categories.txt file in the technical
// documentation
// for a list of IDs.
DetectedProductCategories []int64 `json:"detectedProductCategories,omitempty"`
// DetectedSensitiveCategories: @OutputOnly Detected sensitive
// categories, if any.
// See the ad-sensitive-categories.txt file in the technical
// documentation for
// a list of IDs. You should use these IDs along with
// the
// excluded-sensitive-category field in the bid request to filter your
// bids.
DetectedSensitiveCategories []int64 `json:"detectedSensitiveCategories,omitempty"`
// FilteringStats: @OutputOnly The filtering stats for this creative.
FilteringStats *FilteringStats `json:"filteringStats,omitempty"`
// Html: An HTML creative.
Html *HtmlContent `json:"html,omitempty"`
// ImpressionTrackingUrls: The set of URLs to be called to record an
// impression.
ImpressionTrackingUrls []string `json:"impressionTrackingUrls,omitempty"`
// Native: A native creative.
Native *NativeContent `json:"native,omitempty"`
// OpenAuctionStatus: @OutputOnly The top-level open auction status of
// this creative.
// If disapproved, an entry for 'auctionType = OPEN_AUCTION' (or 'ALL')
// in
// serving_restrictions will also exist. Note
// that this may be nuanced with other contextual restrictions, in which
// case,
// it may be preferable to read from serving_restrictions directly.
// Can be used to filter the response of the
// creatives.list
// method.
//
// Possible values:
// "STATUS_UNSPECIFIED" - The status is unknown.
// "NOT_CHECKED" - The creative has not been checked.
// "CONDITIONALLY_APPROVED" - The creative has been conditionally
// approved.
// See serving_restrictions for details.
// "APPROVED" - The creative has been approved.
// "DISAPPROVED" - The creative has been disapproved.
OpenAuctionStatus string `json:"openAuctionStatus,omitempty"`
// RestrictedCategories: All restricted categories for the ads that may
// be shown from this creative.
//
// Possible values:
// "NO_RESTRICTED_CATEGORIES" - The ad has no restricted categories
// "ALCOHOL" - The alcohol restricted category.
RestrictedCategories []string `json:"restrictedCategories,omitempty"`
// ServingRestrictions: @OutputOnly The granular status of this ad in
// specific contexts.
// A context here relates to where something ultimately serves (for
// example,
// a physical location, a platform, an HTTPS vs HTTP request, or the
// type
// of auction).
ServingRestrictions []*ServingRestriction `json:"servingRestrictions,omitempty"`
// VendorIds: All vendor IDs for the ads that may be shown from this
// creative.
// See
// https://storage.googleapis.com/adx-rtb-dictionaries/vendors.txt
// for possible values.
VendorIds []int64 `json:"vendorIds,omitempty"`
// Version: @OutputOnly The version of this creative.
Version int64 `json:"version,omitempty"`
// Video: A video creative.
Video *VideoContent `json:"video,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "AccountId") 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. "AccountId") 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 *Creative) MarshalJSON() ([]byte, error) {
type NoMethod Creative
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CreativeDealAssociation: The association between a creative and a
// deal.
type CreativeDealAssociation struct {
// AccountId: The account the creative belongs to.
AccountId string `json:"accountId,omitempty"`
// CreativeId: The ID of the creative associated with the deal.
CreativeId string `json:"creativeId,omitempty"`
// DealsId: The externalDealId for the deal associated with the
// creative.
DealsId string `json:"dealsId,omitempty"`
// ForceSendFields is a list of field names (e.g. "AccountId") 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. "AccountId") 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 *CreativeDealAssociation) MarshalJSON() ([]byte, error) {
type NoMethod CreativeDealAssociation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CreativeRestrictions: Represents creative restrictions associated to
// Programmatic Guaranteed/
// Preferred Deal in Ad Manager.
// This doesn't apply to Private Auction and AdX Preferred Deals.
type CreativeRestrictions struct {
// CreativeFormat: The format of the environment that the creatives will
// be displayed in.
//
// Possible values:
// "CREATIVE_FORMAT_UNSPECIFIED" - A placeholder for an undefined
// creative format.
// "DISPLAY" - A creative that will be displayed in environments such
// as a browser.
// "VIDEO" - A video creative that will be displayed in environments
// such as a video
// player.
CreativeFormat string `json:"creativeFormat,omitempty"`
CreativeSpecifications []*CreativeSpecification `json:"creativeSpecifications,omitempty"`
// SkippableAdType: Skippable video ads allow viewers to skip ads after
// 5 seconds.
//
// Possible values:
// "SKIPPABLE_AD_TYPE_UNSPECIFIED" - A placeholder for an undefined
// skippable ad type.
// "SKIPPABLE" - This video ad can be skipped after 5 seconds.
// "INSTREAM_SELECT" - This video ad can be skipped after 5 seconds,
// and is counted as
// engaged view after 30 seconds. The creative is hosted on
// YouTube only, and viewcount of the YouTube video increments
// after the engaged view.
// "NOT_SKIPPABLE" - This video ad is not skippable.
SkippableAdType string `json:"skippableAdType,omitempty"`
// ForceSendFields is a list of field names (e.g. "CreativeFormat") 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. "CreativeFormat") 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 *CreativeRestrictions) MarshalJSON() ([]byte, error) {
type NoMethod CreativeRestrictions
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CreativeSize: Specifies the size of the creative.
type CreativeSize struct {
// AllowedFormats: What formats are allowed by the publisher.
// If this repeated field is empty then all formats are allowed.
// For example, if this field contains AllowedFormatType.AUDIO then
// the
// publisher only allows an audio ad (without any video).
//
// Possible values:
// "UNKNOWN" - A placeholder for an undefined allowed format.
// "AUDIO" - An audio-only ad (without any video).
AllowedFormats []string `json:"allowedFormats,omitempty"`
// CompanionSizes: For video creatives specifies the sizes of companion
// ads (if present).
// Companion sizes may be filled in only when creative_size_type = VIDEO
CompanionSizes []*Size `json:"companionSizes,omitempty"`
// CreativeSizeType: The creative size type.
//
// Possible values:
// "CREATIVE_SIZE_TYPE_UNSPECIFIED" - A placeholder for an undefined
// creative size type.
// "REGULAR" - The creative is a regular desktop creative.
// "INTERSTITIAL" - The creative is an interstitial creative.
// "VIDEO" - The creative is a video creative.
// "NATIVE" - The creative is a native (mobile) creative.
CreativeSizeType string `json:"creativeSizeType,omitempty"`
// NativeTemplate: The native template for this creative. It will have a
// value only if
// creative_size_type = CreativeSizeType.NATIVE.
// @OutputOnly
//
// Possible values:
// "UNKNOWN_NATIVE_TEMPLATE" - A placeholder for an undefined native
// template.
// "NATIVE_CONTENT_AD" - The creative is linked to native content ad.
// "NATIVE_APP_INSTALL_AD" - The creative is linked to native app
// install ad.
// "NATIVE_VIDEO_CONTENT_AD" - The creative is linked to native video
// content ad.
// "NATIVE_VIDEO_APP_INSTALL_AD" - The creative is linked to native
// video app install ad.
NativeTemplate string `json:"nativeTemplate,omitempty"`
// Size: For regular or video creative size type, specifies the size
// of the creative
Size *Size `json:"size,omitempty"`
// SkippableAdType: The type of skippable ad for this creative. It will
// have a value only if
// creative_size_type = CreativeSizeType.VIDEO.
//
// Possible values:
// "SKIPPABLE_AD_TYPE_UNSPECIFIED" - A placeholder for an undefined
// skippable ad type.
// "GENERIC" - This video ad can be skipped after 5 seconds.
// "INSTREAM_SELECT" - This video ad can be skipped after 5 seconds,
// and count as
// engaged view after 30 seconds. The creative is hosted on
// YouTube only, and viewcount of the YouTube video increments
// after the engaged view.
// "NOT_SKIPPABLE" - This video ad is not skippable.
SkippableAdType string `json:"skippableAdType,omitempty"`
// ForceSendFields is a list of field names (e.g. "AllowedFormats") 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. "AllowedFormats") 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 *CreativeSize) MarshalJSON() ([]byte, error) {
type NoMethod CreativeSize
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CreativeSpecification: Represents information for a creative that is
// associated with a Programmatic
// Guaranteed/Preferred Deal in Ad Manager.
type CreativeSpecification struct {
// CreativeCompanionSizes: Companion sizes may be filled in only when
// this is a video creative.
CreativeCompanionSizes []*AdSize `json:"creativeCompanionSizes,omitempty"`
// CreativeSize: The size of the creative.
CreativeSize *AdSize `json:"creativeSize,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "CreativeCompanionSizes") 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. "CreativeCompanionSizes")
// 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 *CreativeSpecification) MarshalJSON() ([]byte, error) {
type NoMethod CreativeSpecification
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CreativeStatusRow: The number of bids with the specified dimension
// values that did not win the
// auction (either were filtered pre-auction or lost the auction), as
// described
// by the specified creative status.
type CreativeStatusRow struct {
// BidCount: The number of bids with the specified status.
BidCount *MetricValue `json:"bidCount,omitempty"`
// CreativeStatusId: The ID of the creative status.
// See
// [creative-status-codes](https://developers.google.com/authorized-buyer
// s/rtb/downloads/creative-status-codes).
CreativeStatusId int64 `json:"creativeStatusId,omitempty"`
// RowDimensions: The values of all dimensions associated with metric
// values in this row.
RowDimensions *RowDimensions `json:"rowDimensions,omitempty"`
// ForceSendFields is a list of field names (e.g. "BidCount") 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. "BidCount") 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 *CreativeStatusRow) MarshalJSON() ([]byte, error) {
type NoMethod CreativeStatusRow
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CriteriaTargeting: Generic targeting used for targeting dimensions
// that contains a list of
// included and excluded numeric IDs.
type CriteriaTargeting struct {
// ExcludedCriteriaIds: A list of numeric IDs to be excluded.
ExcludedCriteriaIds googleapi.Int64s `json:"excludedCriteriaIds,omitempty"`
// TargetedCriteriaIds: A list of numeric IDs to be included.
TargetedCriteriaIds googleapi.Int64s `json:"targetedCriteriaIds,omitempty"`
// ForceSendFields is a list of field names (e.g. "ExcludedCriteriaIds")
// 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. "ExcludedCriteriaIds") 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 *CriteriaTargeting) MarshalJSON() ([]byte, error) {
type NoMethod CriteriaTargeting
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Date: Represents a whole or partial calendar date, e.g. a birthday.
// The time of day
// and time zone are either specified elsewhere or are not significant.
// The date
// is relative to the Proleptic Gregorian Calendar. This can
// represent:
//
// * A full date, with non-zero year, month and day values
// * A month and day value, with a zero year, e.g. an anniversary
// * A year on its own, with zero month and day values
// * A year and month value, with a zero day, e.g. a credit card
// expiration date
//
// Related types are google.type.TimeOfDay and
// `google.protobuf.Timestamp`.
type Date struct {
// Day: Day of month. Must be from 1 to 31 and valid for the year and
// month, or 0
// if specifying a year by itself or a year and month where the day is
// not
// significant.
Day int64 `json:"day,omitempty"`
// Month: Month of year. Must be from 1 to 12, or 0 if specifying a year
// without a
// month and day.
Month int64 `json:"month,omitempty"`
// Year: Year of date. Must be from 1 to 9999, or 0 if specifying a date
// without
// a year.
Year int64 `json:"year,omitempty"`
// ForceSendFields is a list of field names (e.g. "Day") 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. "Day") 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 *Date) MarshalJSON() ([]byte, error) {
type NoMethod Date
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DayPart: Daypart targeting message that specifies if the ad can be
// shown
// only during certain parts of a day/week.
type DayPart struct {
// DayOfWeek: The day of the week to target. If unspecified, applicable
// to all days.
//
// Possible values:
// "DAY_OF_WEEK_UNSPECIFIED" - A placeholder for when the day of the
// week is not specified.
// "MONDAY" - Monday
// "TUESDAY" - Tuesday
// "WEDNESDAY" - Wednesday
// "THURSDAY" - Thursday
// "FRIDAY" - Friday
// "SATURDAY" - Saturday
// "SUNDAY" - Sunday
DayOfWeek string `json:"dayOfWeek,omitempty"`
// EndTime: The ending time of the day for the ad to show (minute level
// granularity).
// The end time is exclusive.
// This field is not available for filtering in PQL queries.
EndTime *TimeOfDay `json:"endTime,omitempty"`
// StartTime: The starting time of day for the ad to show (minute level
// granularity).
// The start time is inclusive.
// This field is not available for filtering in PQL queries.
StartTime *TimeOfDay `json:"startTime,omitempty"`
// ForceSendFields is a list of field names (e.g. "DayOfWeek") 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. "DayOfWeek") 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 *DayPart) MarshalJSON() ([]byte, error) {
type NoMethod DayPart
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DayPartTargeting: Specifies the day part targeting criteria.
type DayPartTargeting struct {
// DayParts: A list of day part targeting criterion.
DayParts []*DayPart `json:"dayParts,omitempty"`
// TimeZoneType: The timezone to use for interpreting the day part
// targeting.
//
// Possible values:
// "TIME_ZONE_SOURCE_UNSPECIFIED" - A placeholder for an undefined
// time zone source.
// "PUBLISHER" - Use publisher's time zone setting.
// "USER" - Use the user's time zone setting.
TimeZoneType string `json:"timeZoneType,omitempty"`
// ForceSendFields is a list of field names (e.g. "DayParts") 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. "DayParts") 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 *DayPartTargeting) MarshalJSON() ([]byte, error) {
type NoMethod DayPartTargeting
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Deal: A deal represents a segment of inventory for displaying ads
// on.
// A proposal can contain multiple deals. A deal contains the terms and
// targeting information that
// is used for serving.
type Deal struct {
// AvailableEndTime: Proposed flight end time of the deal.
// This will generally be stored in a granularity of a second.
// A value is not required for Private Auction deals or Preferred Deals.
AvailableEndTime string `json:"availableEndTime,omitempty"`
// AvailableStartTime: Optional proposed flight start time of the
// deal.
// This will generally be stored in the granularity of one second since
// deal serving
// starts at seconds boundary. Any time specified with more
// granularity
// (e.g., in milliseconds) will be truncated towards the start of time
// in seconds.
AvailableStartTime string `json:"availableStartTime,omitempty"`
// BuyerPrivateData: Buyer private data (hidden from seller).
BuyerPrivateData *PrivateData `json:"buyerPrivateData,omitempty"`
// CreateProductId: The product ID from which this deal was
// created.
//
// Note: This field may be set only when creating the resource.
// Modifying
// this field while updating the resource will result in an error.
CreateProductId string `json:"createProductId,omitempty"`
// CreateProductRevision: Optional revision number of the product that
// the deal was created from.
// If present on create, and the server `product_revision` has advanced
// sinced
// the passed-in `create_product_revision`, an `ABORTED` error will
// be
// returned.
//
// Note: This field may be set only when creating the resource.
// Modifying
// this field while updating the resource will result in an error.
CreateProductRevision int64 `json:"createProductRevision,omitempty,string"`
// CreateTime: The time of the deal creation.
// @OutputOnly
CreateTime string `json:"createTime,omitempty"`
// CreativePreApprovalPolicy: Specifies the creative pre-approval
// policy.
// @OutputOnly
//
// Possible values:
// "CREATIVE_PRE_APPROVAL_POLICY_UNSPECIFIED" - A placeholder for an
// undefined creative pre-approval policy.
// "SELLER_PRE_APPROVAL_REQUIRED" - The seller needs to approve each
// creative before it can serve.
// "SELLER_PRE_APPROVAL_NOT_REQUIRED" - The seller does not need to
// approve each creative before it can serve.
CreativePreApprovalPolicy string `json:"creativePreApprovalPolicy,omitempty"`
// CreativeRestrictions: Restricitions about the creatives associated
// with the deal (i.e., size)
// This is available for Programmatic Guaranteed/Preferred Deals in Ad
// Manager.
// @OutputOnly
CreativeRestrictions *CreativeRestrictions `json:"creativeRestrictions,omitempty"`
// CreativeSafeFrameCompatibility: Specifies whether the creative is
// safeFrame compatible.
// @OutputOnly
//
// Possible values:
// "CREATIVE_SAFE_FRAME_COMPATIBILITY_UNSPECIFIED" - A placeholder for
// an undefined creative safe-frame compatibility.
// "COMPATIBLE" - The creatives need to be compatible with the safe
// frame option.
// "INCOMPATIBLE" - The creatives can be incompatible with the safe
// frame option.
CreativeSafeFrameCompatibility string `json:"creativeSafeFrameCompatibility,omitempty"`
// DealId: A unique deal ID for the deal (server-assigned).
// @OutputOnly
DealId string `json:"dealId,omitempty"`
// DealServingMetadata: Metadata about the serving status of this
// deal.
// @OutputOnly
DealServingMetadata *DealServingMetadata `json:"dealServingMetadata,omitempty"`
// DealTerms: The negotiable terms of the deal.
DealTerms *DealTerms `json:"dealTerms,omitempty"`
// DeliveryControl: The set of fields around delivery control that are
// interesting for a buyer
// to see but are non-negotiable. These are set by the publisher.
DeliveryControl *DeliveryControl `json:"deliveryControl,omitempty"`
// Description: Description for the deal terms.
Description string `json:"description,omitempty"`
// DisplayName: The name of the deal.
DisplayName string `json:"displayName,omitempty"`
// ExternalDealId: The external deal ID assigned to this deal once the
// deal is finalized.
// This is the deal ID that shows up in serving/reporting
// etc.
// @OutputOnly
ExternalDealId string `json:"externalDealId,omitempty"`
// IsSetupComplete: True, if the buyside inventory setup is complete for
// this deal.
// @OutputOnly
IsSetupComplete bool `json:"isSetupComplete,omitempty"`
// ProgrammaticCreativeSource: Specifies the creative source for
// programmatic deals. PUBLISHER means
// creative is provided by seller and ADVERTISER means creative
// is
// provided by buyer.
// @OutputOnly
//
// Possible values:
// "PROGRAMMATIC_CREATIVE_SOURCE_UNSPECIFIED" - A placeholder for an
// undefined programmatic creative source.
// "ADVERTISER" - The advertiser provides the creatives.
// "PUBLISHER" - The publisher provides the creatives to be served.
ProgrammaticCreativeSource string `json:"programmaticCreativeSource,omitempty"`
// ProposalId: ID of the proposal that this deal is part of.
// @OutputOnly
ProposalId string `json:"proposalId,omitempty"`
// SellerContacts: Seller contact information for the deal.
// @OutputOnly
SellerContacts []*ContactInformation `json:"sellerContacts,omitempty"`
// SyndicationProduct: The syndication product associated with the
// deal.
//
// Note: This field may be set only when creating the resource.
// Modifying
// this field while updating the resource will result in an error.
//
// Possible values:
// "SYNDICATION_PRODUCT_UNSPECIFIED" - A placeholder for an undefined
// syndication product.
// "CONTENT" - This typically represents a web page.
// "MOBILE" - This represents a mobile property.
// "VIDEO" - This represents video ad formats.
// "GAMES" - This represents ads shown within games.
SyndicationProduct string `json:"syndicationProduct,omitempty"`
// Targeting: Specifies the subset of inventory targeted by the
// deal.
// @OutputOnly
Targeting *MarketplaceTargeting `json:"targeting,omitempty"`
// TargetingCriterion: The shared targeting visible to buyers and
// sellers. Each shared
// targeting entity is AND'd together.
TargetingCriterion []*TargetingCriteria `json:"targetingCriterion,omitempty"`
// UpdateTime: The time when the deal was last updated.
// @OutputOnly
UpdateTime string `json:"updateTime,omitempty"`
// WebPropertyCode: The web property code for the seller copied over
// from the product.
WebPropertyCode string `json:"webPropertyCode,omitempty"`
// ForceSendFields is a list of field names (e.g. "AvailableEndTime") 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. "AvailableEndTime") 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 *Deal) MarshalJSON() ([]byte, error) {
type NoMethod Deal
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DealPauseStatus: Tracks which parties (if any) have paused a
// deal.
// The deal is considered paused if either hasBuyerPaused
// or
// hasSellPaused is true.
type DealPauseStatus struct {
// BuyerPauseReason: The buyer's reason for pausing, if the buyer paused
// the deal.
BuyerPauseReason string `json:"buyerPauseReason,omitempty"`
// FirstPausedBy: The role of the person who first paused this deal.
//
// Possible values:
// "BUYER_SELLER_ROLE_UNSPECIFIED" - A placeholder for an undefined
// buyer/seller role.
// "BUYER" - Specifies the role as buyer.
// "SELLER" - Specifies the role as seller.
FirstPausedBy string `json:"firstPausedBy,omitempty"`
// HasBuyerPaused: True, if the buyer has paused the deal unilaterally.
HasBuyerPaused bool `json:"hasBuyerPaused,omitempty"`
// HasSellerPaused: True, if the seller has paused the deal
// unilaterally.
HasSellerPaused bool `json:"hasSellerPaused,omitempty"`
// SellerPauseReason: The seller's reason for pausing, if the seller
// paused the deal.
SellerPauseReason string `json:"sellerPauseReason,omitempty"`
// ForceSendFields is a list of field names (e.g. "BuyerPauseReason") 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. "BuyerPauseReason") 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 *DealPauseStatus) MarshalJSON() ([]byte, error) {
type NoMethod DealPauseStatus
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DealServingMetadata: Message captures metadata about the serving
// status of a deal.
type DealServingMetadata struct {
// DealPauseStatus: Tracks which parties (if any) have paused a
// deal.
// @OutputOnly
DealPauseStatus *DealPauseStatus `json:"dealPauseStatus,omitempty"`
// ForceSendFields is a list of field names (e.g. "DealPauseStatus") 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. "DealPauseStatus") 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 *DealServingMetadata) MarshalJSON() ([]byte, error) {
type NoMethod DealServingMetadata
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DealTerms: The deal terms specify the details of a Product/deal. They
// specify things
// like price per buyer, the type of pricing model (e.g., fixed price,
// auction)
// and expected impressions from the publisher.
type DealTerms struct {
// BrandingType: Visibility of the URL in bid requests. (default:
// BRANDED)
//
// Possible values:
// "BRANDING_TYPE_UNSPECIFIED" - A placeholder for an undefined
// branding type.
// "BRANDED" - Full URL is included in bid requests.
// "SEMI_TRANSPARENT" - A TopLevelDomain or masked URL is sent in bid
// requests
// rather than the full one.
BrandingType string `json:"brandingType,omitempty"`
// Description: Publisher provided description for the terms.
Description string `json:"description,omitempty"`
// EstimatedGrossSpend: Non-binding estimate of the estimated gross
// spend for this deal.
// Can be set by buyer or seller.
EstimatedGrossSpend *Price `json:"estimatedGrossSpend,omitempty"`
// EstimatedImpressionsPerDay: Non-binding estimate of the impressions
// served per day.
// Can be set by buyer or seller.
EstimatedImpressionsPerDay int64 `json:"estimatedImpressionsPerDay,omitempty,string"`
// GuaranteedFixedPriceTerms: The terms for guaranteed fixed price
// deals.
GuaranteedFixedPriceTerms *GuaranteedFixedPriceTerms `json:"guaranteedFixedPriceTerms,omitempty"`
// NonGuaranteedAuctionTerms: The terms for non-guaranteed auction
// deals.
NonGuaranteedAuctionTerms *NonGuaranteedAuctionTerms `json:"nonGuaranteedAuctionTerms,omitempty"`
// NonGuaranteedFixedPriceTerms: The terms for non-guaranteed fixed
// price deals.
NonGuaranteedFixedPriceTerms *NonGuaranteedFixedPriceTerms `json:"nonGuaranteedFixedPriceTerms,omitempty"`
// SellerTimeZone: The time zone name. For deals with Cost Per Day
// billing, defines the
// time zone used to mark the boundaries of a day. It should be an
// IANA TZ name, such as "America/Los_Angeles". For more
// information,
// see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
SellerTimeZone string `json:"sellerTimeZone,omitempty"`
// ForceSendFields is a list of field names (e.g. "BrandingType") 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. "BrandingType") 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 *DealTerms) MarshalJSON() ([]byte, error) {
type NoMethod DealTerms
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DeliveryControl: Message contains details about how the deals will be
// paced.
type DeliveryControl struct {
// CreativeBlockingLevel: Specified the creative blocking levels to be
// applied.
// @OutputOnly
//
// Possible values:
// "CREATIVE_BLOCKING_LEVEL_UNSPECIFIED" - A placeholder for an
// undefined creative blocking level.
// "PUBLISHER_BLOCKING_RULES" - Publisher blocking rules will be
// applied.
// "ADX_POLICY_BLOCKING_ONLY" - The Ad Exchange policy blocking rules
// will be applied.
CreativeBlockingLevel string `json:"creativeBlockingLevel,omitempty"`
// DeliveryRateType: Specifies how the impression delivery will be
// paced.
// @OutputOnly
//
// Possible values:
// "DELIVERY_RATE_TYPE_UNSPECIFIED" - A placeholder for an undefined
// delivery rate type.
// "EVENLY" - Impressions are served uniformly over the life of the
// deal.
// "FRONT_LOADED" - Impressions are served front-loaded.
// "AS_FAST_AS_POSSIBLE" - Impressions are served as fast as possible.
DeliveryRateType string `json:"deliveryRateType,omitempty"`
// FrequencyCaps: Specifies any frequency caps.
// @OutputOnly
FrequencyCaps []*FrequencyCap `json:"frequencyCaps,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "CreativeBlockingLevel") 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. "CreativeBlockingLevel") 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 *DeliveryControl) MarshalJSON() ([]byte, error) {
type NoMethod DeliveryControl
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Disapproval: @OutputOnly The reason and details for a disapproval.
type Disapproval struct {
// Details: Additional details about the reason for disapproval.
Details []string `json:"details,omitempty"`
// Reason: The categorized reason for disapproval.
//
// Possible values:
// "LENGTH_OF_IMAGE_ANIMATION" - The length of the image animation is
// longer than allowed.
// "BROKEN_URL" - The click through URL doesn't work properly.
// "MEDIA_NOT_FUNCTIONAL" - Something is wrong with the creative
// itself.
// "INVALID_FOURTH_PARTY_CALL" - The ad makes a fourth party call to
// an unapproved vendor.
// "INCORRECT_REMARKETING_DECLARATION" - The ad targets consumers
// using remarketing lists and/or collects
// data for subsequent use in retargeting, but does not correctly
// declare
// that use.
// "LANDING_PAGE_ERROR" - Clicking on the ad leads to an error page.
// "AD_SIZE_DOES_NOT_MATCH_AD_SLOT" - The ad size when rendered does
// not match the declaration.
// "NO_BORDER" - Ads with a white background require a border, which
// was missing.
// "FOURTH_PARTY_BROWSER_COOKIES" - The creative attempts to set
// cookies from a fourth party that is not
// certified.
// "LSO_OBJECTS" - The creative sets an LSO object.
// "BLANK_CREATIVE" - The ad serves a blank.
// "DESTINATION_URLS_UNDECLARED" - The ad uses rotation, but not all
// destination URLs were declared.
// "PROBLEM_WITH_CLICK_MACRO" - There is a problem with the way the
// click macro is used.
// "INCORRECT_AD_TECHNOLOGY_DECLARATION" - The ad technology
// declaration is not accurate.
// "INCORRECT_DESTINATION_URL_DECLARATION" - The actual destination
// URL does not match the declared destination URL.
// "EXPANDABLE_INCORRECT_DIRECTION" - The declared expanding direction
// does not match the actual direction.
// "EXPANDABLE_DIRECTION_NOT_SUPPORTED" - The ad does not expand in a
// supported direction.
// "EXPANDABLE_INVALID_VENDOR" - The ad uses an expandable vendor that
// is not supported.
// "EXPANDABLE_FUNCTIONALITY" - There was an issue with the expandable
// ad.
// "VIDEO_INVALID_VENDOR" - The ad uses a video vendor that is not
// supported.
// "VIDEO_UNSUPPORTED_LENGTH" - The length of the video ad is not
// supported.
// "VIDEO_UNSUPPORTED_FORMAT" - The format of the video ad is not
// supported.
// "VIDEO_FUNCTIONALITY" - There was an issue with the video ad.
// "LANDING_PAGE_DISABLED" - The landing page does not conform to Ad
// Exchange policy.
// "MALWARE_SUSPECTED" - The ad or the landing page may contain
// malware.
// "ADULT_IMAGE_OR_VIDEO" - The ad contains adult images or video
// content.
// "INACCURATE_AD_TEXT" - The ad contains text that is unclear or
// inaccurate.
// "COUNTERFEIT_DESIGNER_GOODS" - The ad promotes counterfeit designer
// goods.
// "POP_UP" - The ad causes a popup window to appear.
// "INVALID_RTB_PROTOCOL_USAGE" - The creative does not follow
// policies set for the RTB protocol.
// "RAW_IP_ADDRESS_IN_SNIPPET" - The ad contains a URL that uses a
// numeric IP address for the domain.
// "UNACCEPTABLE_CONTENT_SOFTWARE" - The ad or landing page contains
// unacceptable content because it initiated
// a software or executable download.
// "UNAUTHORIZED_COOKIE_ON_GOOGLE_DOMAIN" - The ad set an unauthorized
// cookie on a Google domain.
// "UNDECLARED_FLASH_OBJECTS" - Flash content found when no flash was
// declared.
// "INVALID_SSL_DECLARATION" - SSL support declared but not working
// correctly.
// "DIRECT_DOWNLOAD_IN_AD" - Rich Media - Direct Download in Ad (ex.
// PDF download).
// "MAXIMUM_DOWNLOAD_SIZE_EXCEEDED" - Maximum download size exceeded.
// "DESTINATION_URL_SITE_NOT_CRAWLABLE" - Bad Destination URL: Site
// Not Crawlable.
// "BAD_URL_LEGAL_DISAPPROVAL" - Bad URL: Legal disapproval.
// "PHARMA_GAMBLING_ALCOHOL_NOT_ALLOWED" - Pharmaceuticals, Gambling,
// Alcohol not allowed and at least one was
// detected.
// "DYNAMIC_DNS_AT_DESTINATION_URL" - Dynamic DNS at Destination URL.
// "POOR_IMAGE_OR_VIDEO_QUALITY" - Poor Image / Video Quality.
// "UNACCEPTABLE_IMAGE_CONTENT" - For example, Image Trick to Click.
// "INCORRECT_IMAGE_LAYOUT" - Incorrect Image Layout.
// "IRRELEVANT_IMAGE_OR_VIDEO" - Irrelevant Image / Video.
// "DESTINATION_SITE_DOES_NOT_ALLOW_GOING_BACK" - Broken back button.
// "MISLEADING_CLAIMS_IN_AD" - Misleading/Inaccurate claims in ads.
// "RESTRICTED_PRODUCTS" - Restricted Products.
// "UNACCEPTABLE_CONTENT" - Unacceptable content. For example,
// malware.
// "AUTOMATED_AD_CLICKING" - The ad automatically redirects to the
// destination site without a click,
// or reports a click when none were made.
// "INVALID_URL_PROTOCOL" - The ad uses URL protocols that do not
// exist or are not allowed on AdX.
// "UNDECLARED_RESTRICTED_CONTENT" - Restricted content (for example,
// alcohol) was found in the ad but not
// declared.
// "INVALID_REMARKETING_LIST_USAGE" - Violation of the remarketing
// list policy.
// "DESTINATION_SITE_NOT_CRAWLABLE_ROBOTS_TXT" - The destination
// site's robot.txt file prevents it from being crawled.
// "CLICK_TO_DOWNLOAD_NOT_AN_APP" - Click to download must link to an
// app.
// "INACCURATE_REVIEW_EXTENSION" - A review extension must be an
// accurate review.
// "SEXUALLY_EXPLICIT_CONTENT" - Sexually explicit content.
// "GAINING_AN_UNFAIR_ADVANTAGE" - The ad tries to gain an unfair
// traffic advantage.
// "GAMING_THE_GOOGLE_NETWORK" - The ad tries to circumvent Google's
// advertising systems.
// "DANGEROUS_PRODUCTS_KNIVES" - The ad promotes dangerous knives.
// "DANGEROUS_PRODUCTS_EXPLOSIVES" - The ad promotes explosives.
// "DANGEROUS_PRODUCTS_GUNS" - The ad promotes guns & parts.
// "DANGEROUS_PRODUCTS_DRUGS" - The ad promotes recreational
// drugs/services & related equipment.
// "DANGEROUS_PRODUCTS_TOBACCO" - The ad promotes tobacco
// products/services & related equipment.
// "DANGEROUS_PRODUCTS_WEAPONS" - The ad promotes weapons.
// "UNCLEAR_OR_IRRELEVANT_AD" - The ad is unclear or irrelevant to the
// destination site.
// "PROFESSIONAL_STANDARDS" - The ad does not meet professional
// standards.
// "DYSFUNCTIONAL_PROMOTION" - The promotion is unnecessarily
// difficult to navigate.
// "INVALID_INTEREST_BASED_AD" - Violation of Google's policy for
// interest-based ads.
// "MISUSE_OF_PERSONAL_INFORMATION" - Misuse of personal information.
// "OMISSION_OF_RELEVANT_INFORMATION" - Omission of relevant
// information.
// "UNAVAILABLE_PROMOTIONS" - Unavailable promotions.
// "MISLEADING_PROMOTIONS" - Misleading or unrealistic promotions.
// "INAPPROPRIATE_CONTENT" - Offensive or inappropriate content.
// "SENSITIVE_EVENTS" - Capitalizing on sensitive events.
// "SHOCKING_CONTENT" - Shocking content.
// "ENABLING_DISHONEST_BEHAVIOR" - Products & Services that enable
// dishonest behavior.
// "TECHNICAL_REQUIREMENTS" - The ad does not meet technical
// requirements.
// "RESTRICTED_POLITICAL_CONTENT" - Restricted political content.
// "UNSUPPORTED_CONTENT" - Unsupported content.
// "INVALID_BIDDING_METHOD" - Invalid bidding method.
// "VIDEO_TOO_LONG" - Video length exceeds limits.
// "VIOLATES_JAPANESE_PHARMACY_LAW" - Unacceptable content: Japanese
// healthcare.
// "UNACCREDITED_PET_PHARMACY" - Online pharmacy ID required.
// "ABORTION" - Unacceptable content: Abortion.
// "CONTRACEPTIVES" - Unacceptable content: Birth control.
// "NEED_CERTIFICATES_TO_ADVERTISE_IN_CHINA" - Restricted in China.
// "KCDSP_REGISTRATION" - Unacceptable content: Korean healthcare.
// "NOT_FAMILY_SAFE" - Non-family safe or adult content.
// "CLINICAL_TRIAL_RECRUITMENT" - Clinical trial recruitment.
// "MAXIMUM_NUMBER_OF_HTTP_CALLS_EXCEEDED" - Maximum number of HTTP
// calls exceeded.
// "MAXIMUM_NUMBER_OF_COOKIES_EXCEEDED" - Maximum number of cookies
// exceeded.
// "PERSONAL_LOANS" - Financial service ad does not adhere to
// specifications.
// "UNSUPPORTED_FLASH_CONTENT" - Flash content was found in an
// unsupported context.
// "MISUSE_BY_OMID_SCRIPT" - Misuse by an Open Measurement SDK script.
// "NON_WHITELISTED_OMID_VENDOR" - Use of an Open Measurement SDK
// vendor not on approved whitelist.
// "DESTINATION_EXPERIENCE" - Unacceptable landing page.
// "UNSUPPORTED_LANGUAGE" - Unsupported language.
// "NON_SSL_COMPLIANT" - Non-SSL compliant.
// "TEMPORARY_PAUSE" - Temporary pausing of creative.
// "BAIL_BONDS" - Promotes services related to bail bonds.
Reason string `json:"reason,omitempty"`
// ForceSendFields is a list of field names (e.g. "Details") 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. "Details") 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 *Disapproval) MarshalJSON() ([]byte, error) {
type NoMethod Disapproval
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Empty: A generic empty message that you can re-use to avoid defining
// duplicated
// empty messages in your APIs. A typical example is to use it as the
// request
// or the response type of an API method. For instance:
//
// service Foo {
// rpc Bar(google.protobuf.Empty) returns
// (google.protobuf.Empty);
// }
//
// The JSON representation for `Empty` is empty JSON object `{}`.
type Empty struct {
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
}
// FilterSet: A set of filters that is applied to a request for
// data.
// Within a filter set, an AND operation is performed across the
// filters
// represented by each field. An OR operation is performed across the
// filters
// represented by the multiple values of a repeated field,
// e.g.,
// "format=VIDEO AND deal_id=12 AND (seller_network_id=34
// OR
// seller_network_id=56)".
type FilterSet struct {
// AbsoluteDateRange: An absolute date range, defined by a start date
// and an end date.
// Interpreted relative to Pacific time zone.
AbsoluteDateRange *AbsoluteDateRange `json:"absoluteDateRange,omitempty"`
// BreakdownDimensions: The set of dimensions along which to break down
// the response; may be empty.
// If multiple dimensions are requested, the breakdown is along the
// Cartesian
// product of the requested dimensions.
//
// Possible values:
// "BREAKDOWN_DIMENSION_UNSPECIFIED" - A placeholder for an
// unspecified dimension; should not be used.
// "PUBLISHER_IDENTIFIER" - The response should be broken down by
// publisher identifier.
// This option is available only for Open Bidding buyers.
BreakdownDimensions []string `json:"breakdownDimensions,omitempty"`
// CreativeId: The ID of the creative on which to filter; optional. This
// field may be set
// only for a filter set that accesses account-level troubleshooting
// data,
// i.e., one whose name matches the
// `bidders/*/accounts/*/filterSets/*`
// pattern.
CreativeId string `json:"creativeId,omitempty"`
// DealId: The ID of the deal on which to filter; optional. This field
// may be set
// only for a filter set that accesses account-level troubleshooting
// data,
// i.e., one whose name matches the
// `bidders/*/accounts/*/filterSets/*`
// pattern.
DealId int64 `json:"dealId,omitempty,string"`
// Environment: The environment on which to filter; optional.
//
// Possible values:
// "ENVIRONMENT_UNSPECIFIED" - A placeholder for an undefined
// environment; indicates that no environment
// filter will be applied.
// "WEB" - The ad impression appears on the web.
// "APP" - The ad impression appears in an app.
Environment string `json:"environment,omitempty"`
// Formats: The list of formats on which to filter; may be empty. The
// filters
// represented by multiple formats are ORed together (i.e., if
// non-empty,
// results must match any one of the formats).
//
// Possible values:
// "FORMAT_UNSPECIFIED" - A placeholder for an undefined format;
// indicates that no format filter
// will be applied.
// "NATIVE_DISPLAY" - The ad impression is a native ad, and display
// (i.e., image) format.
// "NATIVE_VIDEO" - The ad impression is a native ad, and video
// format.
// "NON_NATIVE_DISPLAY" - The ad impression is not a native ad, and
// display (i.e., image) format.
// "NON_NATIVE_VIDEO" - The ad impression is not a native ad, and
// video format.
Formats []string `json:"formats,omitempty"`
// Name: A user-defined name of the filter set. Filter set names must be
// unique
// globally and match one of the patterns:
//
// - `bidders/*/filterSets/*` (for accessing bidder-level
// troubleshooting
// data)
// - `bidders/*/accounts/*/filterSets/*` (for accessing
// account-level
// troubleshooting data)
//
// This field is required in create operations.
Name string `json:"name,omitempty"`
// Platforms: The list of platforms on which to filter; may be empty.
// The filters
// represented by multiple platforms are ORed together (i.e., if
// non-empty,
// results must match any one of the platforms).
//
// Possible values:
// "PLATFORM_UNSPECIFIED" - A placeholder for an undefined platform;
// indicates that no platform
// filter will be applied.
// "DESKTOP" - The ad impression appears on a desktop.
// "TABLET" - The ad impression appears on a tablet.
// "MOBILE" - The ad impression appears on a mobile device.
Platforms []string `json:"platforms,omitempty"`
// PublisherIdentifiers: For Open Bidding partners only.
// The list of publisher identifiers on which to filter; may be
// empty.
// The filters represented by multiple publisher identifiers are
// ORed
// together.
PublisherIdentifiers []string `json:"publisherIdentifiers,omitempty"`
// RealtimeTimeRange: An open-ended realtime time range, defined by the
// aggregation start
// timestamp.
RealtimeTimeRange *RealtimeTimeRange `json:"realtimeTimeRange,omitempty"`
// RelativeDateRange: A relative date range, defined by an offset from
// today and a duration.
// Interpreted relative to Pacific time zone.
RelativeDateRange *RelativeDateRange `json:"relativeDateRange,omitempty"`
// SellerNetworkIds: For Authorized Buyers only.
// The list of IDs of the seller (publisher) networks on which to
// filter;
// may be empty. The filters represented by multiple seller network IDs
// are
// ORed together (i.e., if non-empty, results must match any one of
// the
// publisher networks).
// See
// [seller-network-ids](https://developers.google.com/authorized-buye
// rs/rtb/downloads/seller-network-ids)
// file for the set of existing seller network IDs.
SellerNetworkIds []int64 `json:"sellerNetworkIds,omitempty"`
// TimeSeriesGranularity: The granularity of time intervals if a time
// series breakdown is desired;
// optional.
//
// Possible values:
// "TIME_SERIES_GRANULARITY_UNSPECIFIED" - A placeholder for an
// unspecified interval; no time series is applied.
// All rows in response will contain data for the entire requested time
// range.
// "HOURLY" - Indicates that data will be broken down by the hour.
// "DAILY" - Indicates that data will be broken down by the day.
TimeSeriesGranularity string `json:"timeSeriesGranularity,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "AbsoluteDateRange")
// 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. "AbsoluteDateRange") 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 *FilterSet) MarshalJSON() ([]byte, error) {
type NoMethod FilterSet
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// FilteredBidCreativeRow: The number of filtered bids with the
// specified dimension values that have the
// specified creative.
type FilteredBidCreativeRow struct {
// BidCount: The number of bids with the specified creative.
BidCount *MetricValue `json:"bidCount,omitempty"`
// CreativeId: The ID of the creative.
CreativeId string `json:"creativeId,omitempty"`
// RowDimensions: The values of all dimensions associated with metric
// values in this row.
RowDimensions *RowDimensions `json:"rowDimensions,omitempty"`
// ForceSendFields is a list of field names (e.g. "BidCount") 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. "BidCount") 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 *FilteredBidCreativeRow) MarshalJSON() ([]byte, error) {
type NoMethod FilteredBidCreativeRow
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// FilteredBidDetailRow: The number of filtered bids with the specified
// dimension values, among those
// filtered due to the requested filtering reason (i.e. creative
// status), that
// have the specified detail.
type FilteredBidDetailRow struct {
// BidCount: The number of bids with the specified detail.
BidCount *MetricValue `json:"bidCount,omitempty"`
// DetailId: The ID of the detail. The associated value can be looked up
// in the
// dictionary file corresponding to the DetailType in the response
// message.
DetailId int64 `json:"detailId,omitempty"`
// RowDimensions: The values of all dimensions associated with metric
// values in this row.
RowDimensions *RowDimensions `json:"rowDimensions,omitempty"`
// ForceSendFields is a list of field names (e.g. "BidCount") 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. "BidCount") 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 *FilteredBidDetailRow) MarshalJSON() ([]byte, error) {
type NoMethod FilteredBidDetailRow
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// FilteringStats: @OutputOnly Filtering reasons for this creative
// during a period of a single
// day (from midnight to midnight Pacific).
type FilteringStats struct {
// Date: The day during which the data was collected.
// The data is collected from 00:00:00 to 23:59:59 PT.
// During switches from PST to PDT and back, the day may
// contain 23 or 25 hours of data instead of the usual 24.
Date *Date `json:"date,omitempty"`
// Reasons: The set of filtering reasons for this date.
Reasons []*Reason `json:"reasons,omitempty"`
// ForceSendFields is a list of field names (e.g. "Date") 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. "Date") 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 *FilteringStats) MarshalJSON() ([]byte, error) {
type NoMethod FilteringStats
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// FirstPartyMobileApplicationTargeting: Represents a list of targeted
// and excluded mobile application IDs that
// publishers own.
// Mobile application IDs are from App Store and Google Play
// Store.
// Android App ID, for example, com.google.android.apps.maps, can be
// found in
// Google Play Store URL.
// iOS App ID (which is a number) can be found at the end of iTunes
// store URL.
// First party mobile applications is either included or excluded.
type FirstPartyMobileApplicationTargeting struct {
// ExcludedAppIds: A list of application IDs to be excluded.
ExcludedAppIds []string `json:"excludedAppIds,omitempty"`
// TargetedAppIds: A list of application IDs to be included.
TargetedAppIds []string `json:"targetedAppIds,omitempty"`
// ForceSendFields is a list of field names (e.g. "ExcludedAppIds") 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. "ExcludedAppIds") 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 *FirstPartyMobileApplicationTargeting) MarshalJSON() ([]byte, error) {
type NoMethod FirstPartyMobileApplicationTargeting
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// FrequencyCap: Frequency cap.
type FrequencyCap struct {
// MaxImpressions: The maximum number of impressions that can be served
// to a user within the
// specified time period.
MaxImpressions int64 `json:"maxImpressions,omitempty"`
// NumTimeUnits: The amount of time, in the units specified by
// time_unit_type. Defines the
// amount of time over which impressions per user are counted and
// capped.
NumTimeUnits int64 `json:"numTimeUnits,omitempty"`
// TimeUnitType: The time unit. Along with num_time_units defines the
// amount of time over
// which impressions per user are counted and capped.
//
// Possible values:
// "TIME_UNIT_TYPE_UNSPECIFIED" - A placeholder for an undefined time
// unit type. This just indicates the
// variable with this value hasn't been initialized.
// "MINUTE" - Minute
// "HOUR" - Hour
// "DAY" - Day
// "WEEK" - Week
// "MONTH" - Month
// "LIFETIME" - Lifetime
TimeUnitType string `json:"timeUnitType,omitempty"`
// ForceSendFields is a list of field names (e.g. "MaxImpressions") 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. "MaxImpressions") 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 *FrequencyCap) MarshalJSON() ([]byte, error) {
type NoMethod FrequencyCap
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GuaranteedFixedPriceTerms: Terms for Programmatic Guaranteed Deals.
type GuaranteedFixedPriceTerms struct {
// FixedPrices: Fixed price for the specified buyer.
FixedPrices []*PricePerBuyer `json:"fixedPrices,omitempty"`
// GuaranteedImpressions: Guaranteed impressions as a percentage. This
// is the percentage
// of guaranteed looks that the buyer is guaranteeing to buy.
GuaranteedImpressions int64 `json:"guaranteedImpressions,omitempty,string"`
// GuaranteedLooks: Count of guaranteed looks. Required for deal,
// optional for product.
GuaranteedLooks int64 `json:"guaranteedLooks,omitempty,string"`
// MinimumDailyLooks: Daily minimum looks for CPD deal types.
MinimumDailyLooks int64 `json:"minimumDailyLooks,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "FixedPrices") 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. "FixedPrices") 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 *GuaranteedFixedPriceTerms) MarshalJSON() ([]byte, error) {
type NoMethod GuaranteedFixedPriceTerms
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// HtmlContent: HTML content for a creative.
type HtmlContent struct {
// Height: The height of the HTML snippet in pixels.
Height int64 `json:"height,omitempty"`
// Snippet: The HTML snippet that displays the ad when inserted in the
// web page.
Snippet string `json:"snippet,omitempty"`
// Width: The width of the HTML snippet in pixels.
Width int64 `json:"width,omitempty"`
// ForceSendFields is a list of field names (e.g. "Height") 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. "Height") 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 *HtmlContent) MarshalJSON() ([]byte, error) {
type NoMethod HtmlContent
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Image: An image resource. You may provide a larger image than was
// requested,
// so long as the aspect ratio is preserved.
type Image struct {
// Height: Image height in pixels.
Height int64 `json:"height,omitempty"`
// Url: The URL of the image.
Url string `json:"url,omitempty"`
// Width: Image width in pixels.
Width int64 `json:"width,omitempty"`
// ForceSendFields is a list of field names (e.g. "Height") 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. "Height") 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 *Image) MarshalJSON() ([]byte, error) {
type NoMethod Image
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ImpressionMetricsRow: The set of metrics that are measured in numbers
// of impressions, representing
// how many impressions with the specified dimension values were
// considered
// eligible at each stage of the bidding funnel.
type ImpressionMetricsRow struct {
// AvailableImpressions: The number of impressions available to the
// buyer on Ad Exchange.
// In some cases this value may be unavailable.
AvailableImpressions *MetricValue `json:"availableImpressions,omitempty"`
// BidRequests: The number of impressions for which Ad Exchange sent the
// buyer a bid
// request.
BidRequests *MetricValue `json:"bidRequests,omitempty"`
// InventoryMatches: The number of impressions that match the buyer's
// inventory pretargeting.
InventoryMatches *MetricValue `json:"inventoryMatches,omitempty"`
// ResponsesWithBids: The number of impressions for which Ad Exchange
// received a response from
// the buyer that contained at least one applicable bid.
ResponsesWithBids *MetricValue `json:"responsesWithBids,omitempty"`
// RowDimensions: The values of all dimensions associated with metric
// values in this row.
RowDimensions *RowDimensions `json:"rowDimensions,omitempty"`
// SuccessfulResponses: The number of impressions for which the buyer
// successfully sent a response
// to Ad Exchange.
SuccessfulResponses *MetricValue `json:"successfulResponses,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "AvailableImpressions") 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. "AvailableImpressions") 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 *ImpressionMetricsRow) MarshalJSON() ([]byte, error) {
type NoMethod ImpressionMetricsRow
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// InventorySizeTargeting: Represents the size of an ad unit that can be
// targeted on an ad
// request. It only applies to Private Auction, AdX Preferred Deals
// and
// Auction Packages. This targeting does not apply to Programmatic
// Guaranteed
// and Preferred Deals in Ad Manager.
type InventorySizeTargeting struct {
// ExcludedInventorySizes: A list of inventory sizes to be excluded.
ExcludedInventorySizes []*AdSize `json:"excludedInventorySizes,omitempty"`
// TargetedInventorySizes: A list of inventory sizes to be included.
TargetedInventorySizes []*AdSize `json:"targetedInventorySizes,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "ExcludedInventorySizes") 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. "ExcludedInventorySizes")
// 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 *InventorySizeTargeting) MarshalJSON() ([]byte, error) {
type NoMethod InventorySizeTargeting
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListBidMetricsResponse: Response message for listing the metrics that
// are measured in number of bids.
type ListBidMetricsResponse struct {
// BidMetricsRows: List of rows, each containing a set of bid metrics.
BidMetricsRows []*BidMetricsRow `json:"bidMetricsRows,omitempty"`
// NextPageToken: A token to retrieve the next page of results.
// Pass this value in the
// ListBidMetricsRequest.pageToken
// field in the subsequent call to the bidMetrics.list
// method to retrieve the next page of results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "BidMetricsRows") 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. "BidMetricsRows") 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 *ListBidMetricsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListBidMetricsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListBidResponseErrorsResponse: Response message for listing all
// reasons that bid responses resulted in an
// error.
type ListBidResponseErrorsResponse struct {
// CalloutStatusRows: List of rows, with counts of bid responses
// aggregated by callout status.
CalloutStatusRows []*CalloutStatusRow `json:"calloutStatusRows,omitempty"`
// NextPageToken: A token to retrieve the next page of results.
// Pass this value in the
// ListBidResponseErrorsRequest.pageToken
// field in the subsequent call to the bidResponseErrors.list
// method to retrieve the next page of results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "CalloutStatusRows")
// 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. "CalloutStatusRows") 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 *ListBidResponseErrorsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListBidResponseErrorsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListBidResponsesWithoutBidsResponse: Response message for listing all
// reasons that bid responses were considered
// to have no applicable bids.
type ListBidResponsesWithoutBidsResponse struct {
// BidResponseWithoutBidsStatusRows: List of rows, with counts of bid
// responses without bids aggregated by
// status.
BidResponseWithoutBidsStatusRows []*BidResponseWithoutBidsStatusRow `json:"bidResponseWithoutBidsStatusRows,omitempty"`
// NextPageToken: A token to retrieve the next page of results.
// Pass this value in
// the
// ListBidResponsesWithoutBidsRequest.pageToken
// field in the subsequent call to the
// bidResponsesWithoutBids.list
// method to retrieve the next page of results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g.
// "BidResponseWithoutBidsStatusRows") 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.
// "BidResponseWithoutBidsStatusRows") 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 *ListBidResponsesWithoutBidsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListBidResponsesWithoutBidsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type ListClientUserInvitationsResponse struct {
// Invitations: The returned list of client users.
Invitations []*ClientUserInvitation `json:"invitations,omitempty"`
// NextPageToken: A token to retrieve the next page of results.
// Pass this value in
// the
// ListClientUserInvitationsRequest.pageToken
// field in the subsequent call to the
// clients.invitations.list
// method to retrieve the next
// page of results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Invitations") 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. "Invitations") 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 *ListClientUserInvitationsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListClientUserInvitationsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type ListClientUsersResponse struct {
// NextPageToken: A token to retrieve the next page of results.
// Pass this value in the
// ListClientUsersRequest.pageToken
// field in the subsequent call to the
// clients.invitations.list
// method to retrieve the next
// page of results.
NextPageToken string `json:"nextPageToken,omitempty"`
// Users: The returned list of client users.
Users []*ClientUser `json:"users,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "NextPageToken") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "NextPageToken") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListClientUsersResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListClientUsersResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type ListClientsResponse struct {
// Clients: The returned list of clients.
Clients []*Client `json:"clients,omitempty"`
// NextPageToken: A token to retrieve the next page of results.
// Pass this value in the
// ListClientsRequest.pageToken
// field in the subsequent call to the
// accounts.clients.list
// method to retrieve the next page of results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Clients") 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. "Clients") 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 *ListClientsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListClientsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListCreativeStatusBreakdownByCreativeResponse: Response message for
// listing all creatives associated with a given filtered
// bid reason.
type ListCreativeStatusBreakdownByCreativeResponse struct {
// FilteredBidCreativeRows: List of rows, with counts of bids with a
// given creative status aggregated
// by creative.
FilteredBidCreativeRows []*FilteredBidCreativeRow `json:"filteredBidCreativeRows,omitempty"`
// NextPageToken: A token to retrieve the next page of results.
// Pass this value in
// the
// ListCreativeStatusBreakdownByCreativeRequest.pageToken
// field in the subsequent call to the
// filteredBids.creatives.list
// method to retrieve the next page of results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g.
// "FilteredBidCreativeRows") 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. "FilteredBidCreativeRows")
// 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 *ListCreativeStatusBreakdownByCreativeResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListCreativeStatusBreakdownByCreativeResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListCreativeStatusBreakdownByDetailResponse: Response message for
// listing all details associated with a given filtered bid
// reason.
type ListCreativeStatusBreakdownByDetailResponse struct {
// DetailType: The type of detail that the detail IDs represent.
//
// Possible values:
// "DETAIL_TYPE_UNSPECIFIED" - A placeholder for an undefined
// status.
// This value will never be returned in responses.
// "CREATIVE_ATTRIBUTE" - Indicates that the detail ID refers to a
// creative attribute;
// see
// [publisher-excludable-creative-attributes](https://developers.goog
// le.com/authorized-buyers/rtb/downloads/publisher-excludable-creative-a
// ttributes).
// "VENDOR" - Indicates that the detail ID refers to a vendor;
// see
// [vendors](https://developers.google.com/authorized-buyers/rtb/down
// loads/vendors).
// "SENSITIVE_CATEGORY" - Indicates that the detail ID refers to a
// sensitive category;
// see
// [ad-sensitive-categories](https://developers.google.com/authorized
// -buyers/rtb/downloads/ad-sensitive-categories).
// "PRODUCT_CATEGORY" - Indicates that the detail ID refers to a
// product category;
// see
// [ad-product-categories](https://developers.google.com/authorized-b
// uyers/rtb/downloads/ad-product-categories).
// "DISAPPROVAL_REASON" - Indicates that the detail ID refers to a
// disapproval reason; see
// DisapprovalReason enum in
// [snippet-status-report-proto](https://developers.google.com/authorized
// -buyers/rtb/downloads/snippet-status-report-proto).
DetailType string `json:"detailType,omitempty"`
// FilteredBidDetailRows: List of rows, with counts of bids with a given
// creative status aggregated
// by detail.
FilteredBidDetailRows []*FilteredBidDetailRow `json:"filteredBidDetailRows,omitempty"`
// NextPageToken: A token to retrieve the next page of results.
// Pass this value in
// the
// ListCreativeStatusBreakdownByDetailRequest.pageToken
// field in the subsequent call to the filteredBids.details.list
// method to retrieve the next page of results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "DetailType") 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. "DetailType") 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 *ListCreativeStatusBreakdownByDetailResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListCreativeStatusBreakdownByDetailResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListCreativesResponse: A response for listing creatives.
type ListCreativesResponse struct {
// Creatives: The list of creatives.
Creatives []*Creative `json:"creatives,omitempty"`
// NextPageToken: A token to retrieve the next page of results.
// Pass this value in the