blob: da635eba092b756f72b4580d5a38d7fe797cccf0 [file] [log] [blame]
// Copyright 2018 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 adexchangebuyer provides access to the Ad Exchange Buyer API.
//
// See https://developers.google.com/ad-exchange/buyer-rest
//
// Usage example:
//
// import "google.golang.org/api/adexchangebuyer/v1.4"
// ...
// adexchangebuyerService, err := adexchangebuyer.New(oauthHttpClient)
package adexchangebuyer // import "google.golang.org/api/adexchangebuyer/v1.4"
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 = "adexchangebuyer:v1.4"
const apiName = "adexchangebuyer"
const apiVersion = "v1.4"
const basePath = "https://www.googleapis.com/adexchangebuyer/v1.4/"
// 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.BillingInfo = NewBillingInfoService(s)
s.Budget = NewBudgetService(s)
s.Creatives = NewCreativesService(s)
s.Marketplacedeals = NewMarketplacedealsService(s)
s.Marketplacenotes = NewMarketplacenotesService(s)
s.Marketplaceprivateauction = NewMarketplaceprivateauctionService(s)
s.PerformanceReport = NewPerformanceReportService(s)
s.PretargetingConfig = NewPretargetingConfigService(s)
s.Products = NewProductsService(s)
s.Proposals = NewProposalsService(s)
s.Pubprofiles = NewPubprofilesService(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
BillingInfo *BillingInfoService
Budget *BudgetService
Creatives *CreativesService
Marketplacedeals *MarketplacedealsService
Marketplacenotes *MarketplacenotesService
Marketplaceprivateauction *MarketplaceprivateauctionService
PerformanceReport *PerformanceReportService
PretargetingConfig *PretargetingConfigService
Products *ProductsService
Proposals *ProposalsService
Pubprofiles *PubprofilesService
}
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}
return rs
}
type AccountsService struct {
s *Service
}
func NewBillingInfoService(s *Service) *BillingInfoService {
rs := &BillingInfoService{s: s}
return rs
}
type BillingInfoService struct {
s *Service
}
func NewBudgetService(s *Service) *BudgetService {
rs := &BudgetService{s: s}
return rs
}
type BudgetService struct {
s *Service
}
func NewCreativesService(s *Service) *CreativesService {
rs := &CreativesService{s: s}
return rs
}
type CreativesService struct {
s *Service
}
func NewMarketplacedealsService(s *Service) *MarketplacedealsService {
rs := &MarketplacedealsService{s: s}
return rs
}
type MarketplacedealsService struct {
s *Service
}
func NewMarketplacenotesService(s *Service) *MarketplacenotesService {
rs := &MarketplacenotesService{s: s}
return rs
}
type MarketplacenotesService struct {
s *Service
}
func NewMarketplaceprivateauctionService(s *Service) *MarketplaceprivateauctionService {
rs := &MarketplaceprivateauctionService{s: s}
return rs
}
type MarketplaceprivateauctionService struct {
s *Service
}
func NewPerformanceReportService(s *Service) *PerformanceReportService {
rs := &PerformanceReportService{s: s}
return rs
}
type PerformanceReportService struct {
s *Service
}
func NewPretargetingConfigService(s *Service) *PretargetingConfigService {
rs := &PretargetingConfigService{s: s}
return rs
}
type PretargetingConfigService struct {
s *Service
}
func NewProductsService(s *Service) *ProductsService {
rs := &ProductsService{s: s}
return rs
}
type ProductsService struct {
s *Service
}
func NewProposalsService(s *Service) *ProposalsService {
rs := &ProposalsService{s: s}
return rs
}
type ProposalsService struct {
s *Service
}
func NewPubprofilesService(s *Service) *PubprofilesService {
rs := &PubprofilesService{s: s}
return rs
}
type PubprofilesService struct {
s *Service
}
// Account: Configuration data for an Ad Exchange buyer account.
type Account struct {
// ApplyPretargetingToNonGuaranteedDeals: When this is false, bid
// requests that include a deal ID for a private auction or preferred
// deal are always sent to your bidder. When true, all active
// pretargeting configs will be applied to private auctions and
// preferred deals. Programmatic Guaranteed deals (when enabled) are
// always sent to your bidder.
ApplyPretargetingToNonGuaranteedDeals bool `json:"applyPretargetingToNonGuaranteedDeals,omitempty"`
// BidderLocation: Your bidder locations that have distinct URLs.
BidderLocation []*AccountBidderLocation `json:"bidderLocation,omitempty"`
// CookieMatchingNid: The nid parameter value used in cookie match
// requests. Please contact your technical account manager if you need
// to change this.
CookieMatchingNid string `json:"cookieMatchingNid,omitempty"`
// CookieMatchingUrl: The base URL used in cookie match requests.
CookieMatchingUrl string `json:"cookieMatchingUrl,omitempty"`
// Id: Account id.
Id int64 `json:"id,omitempty"`
// Kind: Resource type.
Kind string `json:"kind,omitempty"`
// MaximumActiveCreatives: The maximum number of active creatives that
// an account can have, where a creative is active if it was inserted or
// bid with in the last 30 days. Please contact your technical account
// manager if you need to change this.
MaximumActiveCreatives int64 `json:"maximumActiveCreatives,omitempty"`
// MaximumTotalQps: The sum of all bidderLocation.maximumQps values
// cannot exceed this. Please contact your technical account manager if
// you need to change this.
MaximumTotalQps int64 `json:"maximumTotalQps,omitempty"`
// NumberActiveCreatives: The number of creatives that this account
// inserted or bid with in the last 30 days.
NumberActiveCreatives int64 `json:"numberActiveCreatives,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g.
// "ApplyPretargetingToNonGuaranteedDeals") 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.
// "ApplyPretargetingToNonGuaranteedDeals") 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 *Account) MarshalJSON() ([]byte, error) {
type NoMethod Account
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AccountBidderLocation struct {
// BidProtocol: The protocol that the bidder endpoint is using. OpenRTB
// protocols with prefix PROTOCOL_OPENRTB_PROTOBUF use proto buffer,
// otherwise use JSON. Allowed values:
// - PROTOCOL_ADX
// - PROTOCOL_OPENRTB_2_2
// - PROTOCOL_OPENRTB_2_3
// - PROTOCOL_OPENRTB_2_4
// - PROTOCOL_OPENRTB_2_5
// - PROTOCOL_OPENRTB_PROTOBUF_2_3
// - PROTOCOL_OPENRTB_PROTOBUF_2_4
// - PROTOCOL_OPENRTB_PROTOBUF_2_5
BidProtocol string `json:"bidProtocol,omitempty"`
// MaximumQps: The maximum queries per second the Ad Exchange will send.
MaximumQps int64 `json:"maximumQps,omitempty"`
// Region: The geographical region the Ad Exchange should send requests
// from. Only used by some quota systems, but always setting the value
// is recommended. Allowed values:
// - ASIA
// - EUROPE
// - US_EAST
// - US_WEST
Region string `json:"region,omitempty"`
// Url: The URL to which the Ad Exchange will send bid requests.
Url string `json:"url,omitempty"`
// ForceSendFields is a list of field names (e.g. "BidProtocol") 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. "BidProtocol") 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 *AccountBidderLocation) MarshalJSON() ([]byte, error) {
type NoMethod AccountBidderLocation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AccountsList: An account feed lists Ad Exchange buyer accounts that
// the user has access to. Each entry in the feed corresponds to a
// single buyer account.
type AccountsList struct {
// Items: A list of accounts.
Items []*Account `json:"items,omitempty"`
// Kind: Resource type.
Kind string `json:"kind,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Items") 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. "Items") 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 *AccountsList) MarshalJSON() ([]byte, error) {
type NoMethod AccountsList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AddOrderDealsRequest struct {
// Deals: The list of deals to add
Deals []*MarketplaceDeal `json:"deals,omitempty"`
// ProposalRevisionNumber: The last known proposal revision number.
ProposalRevisionNumber int64 `json:"proposalRevisionNumber,omitempty,string"`
// UpdateAction: Indicates an optional action to take on the proposal
UpdateAction string `json:"updateAction,omitempty"`
// ForceSendFields is a list of field names (e.g. "Deals") 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. "Deals") 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 *AddOrderDealsRequest) MarshalJSON() ([]byte, error) {
type NoMethod AddOrderDealsRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AddOrderDealsResponse struct {
// Deals: List of deals added (in the same proposal as passed in the
// request)
Deals []*MarketplaceDeal `json:"deals,omitempty"`
// ProposalRevisionNumber: The updated revision number for the proposal.
ProposalRevisionNumber int64 `json:"proposalRevisionNumber,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. "Deals") 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. "Deals") 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 *AddOrderDealsResponse) MarshalJSON() ([]byte, error) {
type NoMethod AddOrderDealsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AddOrderNotesRequest struct {
// Notes: The list of notes to add.
Notes []*MarketplaceNote `json:"notes,omitempty"`
// ForceSendFields is a list of field names (e.g. "Notes") 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. "Notes") 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 *AddOrderNotesRequest) MarshalJSON() ([]byte, error) {
type NoMethod AddOrderNotesRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AddOrderNotesResponse struct {
Notes []*MarketplaceNote `json:"notes,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Notes") 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. "Notes") 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 *AddOrderNotesResponse) MarshalJSON() ([]byte, error) {
type NoMethod AddOrderNotesResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BillingInfo: The configuration data for an Ad Exchange billing info.
type BillingInfo struct {
// AccountId: Account id.
AccountId int64 `json:"accountId,omitempty"`
// AccountName: Account name.
AccountName string `json:"accountName,omitempty"`
// BillingId: A list of adgroup IDs associated with this particular
// account. These IDs may show up as part of a realtime bidding
// BidRequest, which indicates a bid request for this account.
BillingId []string `json:"billingId,omitempty"`
// Kind: Resource type.
Kind string `json:"kind,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 *BillingInfo) MarshalJSON() ([]byte, error) {
type NoMethod BillingInfo
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BillingInfoList: A billing info feed lists Billing Info the Ad
// Exchange buyer account has access to. Each entry in the feed
// corresponds to a single billing info.
type BillingInfoList struct {
// Items: A list of billing info relevant for your account.
Items []*BillingInfo `json:"items,omitempty"`
// Kind: Resource type.
Kind string `json:"kind,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Items") 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. "Items") 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 *BillingInfoList) MarshalJSON() ([]byte, error) {
type NoMethod BillingInfoList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Budget: The configuration data for Ad Exchange RTB - Budget API.
type Budget struct {
// AccountId: The id of the account. This is required for get and update
// requests.
AccountId int64 `json:"accountId,omitempty,string"`
// BillingId: The billing id to determine which adgroup to provide
// budget information for. This is required for get and update requests.
BillingId int64 `json:"billingId,omitempty,string"`
// BudgetAmount: The daily budget amount in unit amount of the account
// currency to apply for the billingId provided. This is required for
// update requests.
BudgetAmount int64 `json:"budgetAmount,omitempty,string"`
// CurrencyCode: The currency code for the buyer. This cannot be altered
// here.
CurrencyCode string `json:"currencyCode,omitempty"`
// Id: The unique id that describes this item.
Id string `json:"id,omitempty"`
// Kind: The kind of the resource, i.e. "adexchangebuyer#budget".
Kind string `json:"kind,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 *Budget) MarshalJSON() ([]byte, error) {
type NoMethod Budget
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type Buyer struct {
// AccountId: Adx 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)
}
type ContactInformation struct {
// Email: Email address of 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)
}
type CreateOrdersRequest struct {
// Proposals: The list of proposals to create.
Proposals []*Proposal `json:"proposals,omitempty"`
// WebPropertyCode: Web property id of the seller creating these orders
WebPropertyCode string `json:"webPropertyCode,omitempty"`
// ForceSendFields is a list of field names (e.g. "Proposals") 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. "Proposals") 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 *CreateOrdersRequest) MarshalJSON() ([]byte, error) {
type NoMethod CreateOrdersRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type CreateOrdersResponse struct {
// Proposals: The list of proposals successfully created.
Proposals []*Proposal `json:"proposals,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Proposals") 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. "Proposals") 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 *CreateOrdersResponse) MarshalJSON() ([]byte, error) {
type NoMethod CreateOrdersResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Creative: A creative and its classification data.
type Creative struct {
// HTMLSnippet: The HTML snippet that displays the ad when inserted in
// the web page. If set, videoURL, videoVastXML, and nativeAd should not
// be set.
HTMLSnippet string `json:"HTMLSnippet,omitempty"`
// AccountId: Account id.
AccountId int64 `json:"accountId,omitempty"`
// AdChoicesDestinationUrl: The link to the Ad Preferences page. This is
// only supported for native ads.
AdChoicesDestinationUrl string `json:"adChoicesDestinationUrl,omitempty"`
// AdvertiserId: Detected advertiser id, if any. Read-only. This field
// should not be set in requests.
AdvertiserId googleapi.Int64s `json:"advertiserId,omitempty"`
// AdvertiserName: The name of the company being advertised in the
// creative. The value provided must exist in the advertisers.txt file.
AdvertiserName string `json:"advertiserName,omitempty"`
// AgencyId: The agency id for this creative.
AgencyId int64 `json:"agencyId,omitempty,string"`
// ApiUploadTimestamp: The last upload timestamp of this creative if it
// was uploaded via API. Read-only. The value of this field is
// generated, and will be ignored for uploads. (formatted RFC 3339
// timestamp).
ApiUploadTimestamp string `json:"apiUploadTimestamp,omitempty"`
// Attribute: List of buyer selectable attributes for the ads that may
// be shown from this snippet. Each attribute is represented by an
// integer as defined in buyer-declarable-creative-attributes.txt.
Attribute []int64 `json:"attribute,omitempty"`
// BuyerCreativeId: A buyer-specific id identifying the creative in this
// ad.
BuyerCreativeId string `json:"buyerCreativeId,omitempty"`
// ClickThroughUrl: The set of destination urls for the snippet.
ClickThroughUrl []string `json:"clickThroughUrl,omitempty"`
// Corrections: Shows any corrections that were applied to this
// creative. Read-only. This field should not be set in requests.
Corrections []*CreativeCorrections `json:"corrections,omitempty"`
// CreativeStatusIdentityType: Creative status identity type that the
// creative item applies to. Ad Exchange real-time bidding is migrating
// to the sizeless creative verification. Originally, Ad Exchange
// assigned creative verification status to a unique combination of a
// buyer creative ID and creative dimensions. Post-migration, a single
// verification status will be assigned at the buyer creative ID level.
// This field allows to distinguish whether a given creative status
// applies to a unique combination of a buyer creative ID and creative
// dimensions, or to a buyer creative ID as a whole.
CreativeStatusIdentityType string `json:"creativeStatusIdentityType,omitempty"`
// DealsStatus: Top-level deals status. Read-only. This field should not
// be set in requests. If disapproved, an entry for
// auctionType=DIRECT_DEALS (or ALL) in servingRestrictions will also
// exist. Note that this may be nuanced with other contextual
// restrictions, in which case it may be preferable to read from
// servingRestrictions directly.
DealsStatus string `json:"dealsStatus,omitempty"`
// DetectedDomains: Detected domains for this creative. Read-only. This
// field should not be set in requests.
DetectedDomains []string `json:"detectedDomains,omitempty"`
// FilteringReasons: The filtering reasons for the creative. Read-only.
// This field should not be set in requests.
FilteringReasons *CreativeFilteringReasons `json:"filteringReasons,omitempty"`
// Height: Ad height.
Height int64 `json:"height,omitempty"`
// ImpressionTrackingUrl: The set of urls to be called to record an
// impression.
ImpressionTrackingUrl []string `json:"impressionTrackingUrl,omitempty"`
// Kind: Resource type.
Kind string `json:"kind,omitempty"`
// Languages: Detected languages for this creative. Read-only. This
// field should not be set in requests.
Languages []string `json:"languages,omitempty"`
// NativeAd: If nativeAd is set, HTMLSnippet, videoVastXML, and the
// videoURL outside of nativeAd should not be set. (The videoURL inside
// nativeAd can be set.)
NativeAd *CreativeNativeAd `json:"nativeAd,omitempty"`
// OpenAuctionStatus: Top-level open auction status. Read-only. This
// field should not be set in requests. If disapproved, an entry for
// auctionType=OPEN_AUCTION (or ALL) in servingRestrictions will also
// exist. Note that this may be nuanced with other contextual
// restrictions, in which case it may be preferable to read from
// ServingRestrictions directly.
OpenAuctionStatus string `json:"openAuctionStatus,omitempty"`
// ProductCategories: Detected product categories, if any. Each category
// is represented by an integer as defined in
// ad-product-categories.txt. Read-only. This field should not be set in
// requests.
ProductCategories []int64 `json:"productCategories,omitempty"`
// RestrictedCategories: All restricted categories for the ads that may
// be shown from this snippet. Each category is represented by an
// integer as defined in the ad-restricted-categories.txt.
RestrictedCategories []int64 `json:"restrictedCategories,omitempty"`
// SensitiveCategories: Detected sensitive categories, if any. Each
// category is represented by an integer as defined in
// ad-sensitive-categories.txt. Read-only. This field should not be set
// in requests.
SensitiveCategories []int64 `json:"sensitiveCategories,omitempty"`
// ServingRestrictions: 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). Read-only. This field should not be
// set in requests. See the examples in the Creatives guide for more
// details.
ServingRestrictions []*CreativeServingRestrictions `json:"servingRestrictions,omitempty"`
// VendorType: List of vendor types for the ads that may be shown from
// this snippet. Each vendor type is represented by an integer as
// defined in vendors.txt.
VendorType []int64 `json:"vendorType,omitempty"`
// Version: The version for this creative. Read-only. This field should
// not be set in requests.
Version int64 `json:"version,omitempty"`
// VideoURL: The URL to fetch a video ad. If set, HTMLSnippet,
// videoVastXML, and nativeAd should not be set. Note, this is different
// from resource.native_ad.video_url above.
VideoURL string `json:"videoURL,omitempty"`
// VideoVastXML: The contents of a VAST document for a video ad. This
// document should conform to the VAST 2.0 or 3.0 standard. If set,
// HTMLSnippet, videoURL, and nativeAd and should not be set.
VideoVastXML string `json:"videoVastXML,omitempty"`
// Width: Ad width.
Width int64 `json:"width,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "HTMLSnippet") 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. "HTMLSnippet") 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)
}
type CreativeCorrections struct {
// Contexts: All known serving contexts containing serving status
// information.
Contexts []*CreativeCorrectionsContexts `json:"contexts,omitempty"`
// Details: Additional details about the correction.
Details []string `json:"details,omitempty"`
// Reason: The type of correction that was applied to the creative.
Reason string `json:"reason,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 *CreativeCorrections) MarshalJSON() ([]byte, error) {
type NoMethod CreativeCorrections
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type CreativeCorrectionsContexts struct {
// AuctionType: Only set when contextType=AUCTION_TYPE. Represents the
// auction types this correction applies to.
AuctionType []string `json:"auctionType,omitempty"`
// ContextType: The type of context (e.g., location, platform, auction
// type, SSL-ness).
ContextType string `json:"contextType,omitempty"`
// GeoCriteriaId: Only set when contextType=LOCATION. Represents the geo
// criterias this correction applies to.
GeoCriteriaId []int64 `json:"geoCriteriaId,omitempty"`
// Platform: Only set when contextType=PLATFORM. Represents the
// platforms this correction applies to.
Platform []string `json:"platform,omitempty"`
// ForceSendFields is a list of field names (e.g. "AuctionType") 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. "AuctionType") 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 *CreativeCorrectionsContexts) MarshalJSON() ([]byte, error) {
type NoMethod CreativeCorrectionsContexts
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CreativeFilteringReasons: The filtering reasons for the creative.
// Read-only. This field should not be set in requests.
type CreativeFilteringReasons struct {
// Date: The date in ISO 8601 format for the data. The data is collected
// from 00:00:00 to 23:59:59 in PST.
Date string `json:"date,omitempty"`
// Reasons: The filtering reasons.
Reasons []*CreativeFilteringReasonsReasons `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 *CreativeFilteringReasons) MarshalJSON() ([]byte, error) {
type NoMethod CreativeFilteringReasons
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type CreativeFilteringReasonsReasons struct {
// FilteringCount: The number of times the creative was filtered for the
// status. The count is aggregated across all publishers on the
// exchange.
FilteringCount int64 `json:"filteringCount,omitempty,string"`
// FilteringStatus: The filtering status code as defined in
// creative-status-codes.txt.
FilteringStatus int64 `json:"filteringStatus,omitempty"`
// ForceSendFields is a list of field names (e.g. "FilteringCount") 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. "FilteringCount") 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 *CreativeFilteringReasonsReasons) MarshalJSON() ([]byte, error) {
type NoMethod CreativeFilteringReasonsReasons
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CreativeNativeAd: If nativeAd is set, HTMLSnippet, videoVastXML, and
// the videoURL outside of nativeAd should not be set. (The videoURL
// inside nativeAd can be set.)
type CreativeNativeAd struct {
Advertiser string `json:"advertiser,omitempty"`
// AppIcon: The app icon, for app download ads.
AppIcon *CreativeNativeAdAppIcon `json:"appIcon,omitempty"`
// Body: A long description of the ad.
Body string `json:"body,omitempty"`
// CallToAction: A label for the button that the user is supposed to
// click.
CallToAction string `json:"callToAction,omitempty"`
// ClickLinkUrl: The URL that the browser/SDK will load when the user
// clicks the ad.
ClickLinkUrl string `json:"clickLinkUrl,omitempty"`
// ClickTrackingUrl: The URL to use for click tracking.
ClickTrackingUrl string `json:"clickTrackingUrl,omitempty"`
// Headline: A short title for the ad.
Headline string `json:"headline,omitempty"`
// Image: A large image.
Image *CreativeNativeAdImage `json:"image,omitempty"`
// ImpressionTrackingUrl: The URLs are called when the impression is
// rendered.
ImpressionTrackingUrl []string `json:"impressionTrackingUrl,omitempty"`
// Logo: A smaller image, for the advertiser logo.
Logo *CreativeNativeAdLogo `json:"logo,omitempty"`
// Price: The price of the promoted app including the currency info.
Price string `json:"price,omitempty"`
// StarRating: The app rating in the app store. Must be in the range
// [0-5].
StarRating float64 `json:"starRating,omitempty"`
// Store: The URL to the app store to purchase/download the promoted
// app.
Store string `json:"store,omitempty"`
// VideoURL: The URL of the XML VAST for a native ad. Note this is a
// separate field from resource.video_url.
VideoURL string `json:"videoURL,omitempty"`
// ForceSendFields is a list of field names (e.g. "Advertiser") 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. "Advertiser") 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 *CreativeNativeAd) MarshalJSON() ([]byte, error) {
type NoMethod CreativeNativeAd
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *CreativeNativeAd) UnmarshalJSON(data []byte) error {
type NoMethod CreativeNativeAd
var s1 struct {
StarRating gensupport.JSONFloat64 `json:"starRating"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.StarRating = float64(s1.StarRating)
return nil
}
// CreativeNativeAdAppIcon: The app icon, for app download ads.
type CreativeNativeAdAppIcon struct {
Height int64 `json:"height,omitempty"`
Url string `json:"url,omitempty"`
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 *CreativeNativeAdAppIcon) MarshalJSON() ([]byte, error) {
type NoMethod CreativeNativeAdAppIcon
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CreativeNativeAdImage: A large image.
type CreativeNativeAdImage struct {
Height int64 `json:"height,omitempty"`
Url string `json:"url,omitempty"`
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 *CreativeNativeAdImage) MarshalJSON() ([]byte, error) {
type NoMethod CreativeNativeAdImage
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CreativeNativeAdLogo: A smaller image, for the advertiser logo.
type CreativeNativeAdLogo struct {
Height int64 `json:"height,omitempty"`
Url string `json:"url,omitempty"`
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 *CreativeNativeAdLogo) MarshalJSON() ([]byte, error) {
type NoMethod CreativeNativeAdLogo
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type CreativeServingRestrictions struct {
// Contexts: All known contexts/restrictions.
Contexts []*CreativeServingRestrictionsContexts `json:"contexts,omitempty"`
// DisapprovalReasons: The reasons for disapproval within this
// restriction, if any. Note that not all disapproval reasons may be
// categorized, so it is possible for the creative to have a status of
// DISAPPROVED or CONDITIONALLY_APPROVED with an empty list for
// disapproval_reasons. In this case, please reach out to your TAM to
// help debug the issue.
DisapprovalReasons []*CreativeServingRestrictionsDisapprovalReasons `json:"disapprovalReasons,omitempty"`
// Reason: Why the creative is ineligible to serve in this context
// (e.g., it has been explicitly disapproved or is pending review).
Reason string `json:"reason,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 *CreativeServingRestrictions) MarshalJSON() ([]byte, error) {
type NoMethod CreativeServingRestrictions
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type CreativeServingRestrictionsContexts struct {
// AuctionType: Only set when contextType=AUCTION_TYPE. Represents the
// auction types this restriction applies to.
AuctionType []string `json:"auctionType,omitempty"`
// ContextType: The type of context (e.g., location, platform, auction
// type, SSL-ness).
ContextType string `json:"contextType,omitempty"`
// GeoCriteriaId: Only set when contextType=LOCATION. Represents the geo
// criterias this restriction applies to. Impressions are considered to
// match a context if either the user location or publisher location
// matches a given geoCriteriaId.
GeoCriteriaId []int64 `json:"geoCriteriaId,omitempty"`
// Platform: Only set when contextType=PLATFORM. Represents the
// platforms this restriction applies to.
Platform []string `json:"platform,omitempty"`
// ForceSendFields is a list of field names (e.g. "AuctionType") 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. "AuctionType") 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 *CreativeServingRestrictionsContexts) MarshalJSON() ([]byte, error) {
type NoMethod CreativeServingRestrictionsContexts
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type CreativeServingRestrictionsDisapprovalReasons struct {
// Details: Additional details about the reason for disapproval.
Details []string `json:"details,omitempty"`
// Reason: The categorized reason for disapproval.
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 *CreativeServingRestrictionsDisapprovalReasons) MarshalJSON() ([]byte, error) {
type NoMethod CreativeServingRestrictionsDisapprovalReasons
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CreativeDealIds: The external deal ids associated with a creative.
type CreativeDealIds struct {
// DealStatuses: A list of external deal ids and ARC approval status.
DealStatuses []*CreativeDealIdsDealStatuses `json:"dealStatuses,omitempty"`
// Kind: Resource type.
Kind string `json:"kind,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "DealStatuses") 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. "DealStatuses") 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 *CreativeDealIds) MarshalJSON() ([]byte, error) {
type NoMethod CreativeDealIds
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type CreativeDealIdsDealStatuses struct {
// ArcStatus: ARC approval status.
ArcStatus string `json:"arcStatus,omitempty"`
// DealId: External deal ID.
DealId int64 `json:"dealId,omitempty,string"`
// WebPropertyId: Publisher ID.
WebPropertyId int64 `json:"webPropertyId,omitempty"`
// ForceSendFields is a list of field names (e.g. "ArcStatus") 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. "ArcStatus") 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 *CreativeDealIdsDealStatuses) MarshalJSON() ([]byte, error) {
type NoMethod CreativeDealIdsDealStatuses
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CreativesList: The creatives feed lists the active creatives for the
// Ad Exchange buyer accounts that the user has access to. Each entry in
// the feed corresponds to a single creative.
type CreativesList struct {
// Items: A list of creatives.
Items []*Creative `json:"items,omitempty"`
// Kind: Resource type.
Kind string `json:"kind,omitempty"`
// NextPageToken: Continuation token used to page through creatives. To
// retrieve the next page of results, set the next request's "pageToken"
// value to this.
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. "Items") 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. "Items") 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 *CreativesList) MarshalJSON() ([]byte, error) {
type NoMethod CreativesList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type DealServingMetadata struct {
// AlcoholAdsAllowed: True if alcohol ads are allowed for this deal
// (read-only). This field is only populated when querying for finalized
// orders using the method GetFinalizedOrderDeals
AlcoholAdsAllowed bool `json:"alcoholAdsAllowed,omitempty"`
// DealPauseStatus: Tracks which parties (if any) have paused a deal.
// (readonly, except via PauseResumeOrderDeals action)
DealPauseStatus *DealServingMetadataDealPauseStatus `json:"dealPauseStatus,omitempty"`
// ForceSendFields is a list of field names (e.g. "AlcoholAdsAllowed")
// 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. "AlcoholAdsAllowed") 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)
}
// DealServingMetadataDealPauseStatus: Tracks which parties (if any)
// have paused a deal. The deal is considered paused if has_buyer_paused
// || has_seller_paused. Each of the has_buyer_paused or the
// has_seller_paused bits can be set independently.
type DealServingMetadataDealPauseStatus struct {
BuyerPauseReason string `json:"buyerPauseReason,omitempty"`
// FirstPausedBy: If the deal is paused, records which party paused the
// deal first.
FirstPausedBy string `json:"firstPausedBy,omitempty"`
HasBuyerPaused bool `json:"hasBuyerPaused,omitempty"`
HasSellerPaused bool `json:"hasSellerPaused,omitempty"`
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 *DealServingMetadataDealPauseStatus) MarshalJSON() ([]byte, error) {
type NoMethod DealServingMetadataDealPauseStatus
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type DealTerms struct {
// BrandingType: Visibilty of the URL in bid requests.
BrandingType string `json:"brandingType,omitempty"`
// CrossListedExternalDealIdType: Indicates that this ExternalDealId
// exists under at least two different AdxInventoryDeals. Currently, the
// only case that the same ExternalDealId will exist is programmatic
// cross sell case.
CrossListedExternalDealIdType string `json:"crossListedExternalDealIdType,omitempty"`
// Description: Description for the proposed terms of the deal.
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 *DealTermsGuaranteedFixedPriceTerms `json:"guaranteedFixedPriceTerms,omitempty"`
// NonGuaranteedAuctionTerms: The terms for non-guaranteed auction
// deals.
NonGuaranteedAuctionTerms *DealTermsNonGuaranteedAuctionTerms `json:"nonGuaranteedAuctionTerms,omitempty"`
// NonGuaranteedFixedPriceTerms: The terms for non-guaranteed fixed
// price deals.
NonGuaranteedFixedPriceTerms *DealTermsNonGuaranteedFixedPriceTerms `json:"nonGuaranteedFixedPriceTerms,omitempty"`
// RubiconNonGuaranteedTerms: The terms for rubicon non-guaranteed
// deals.
RubiconNonGuaranteedTerms *DealTermsRubiconNonGuaranteedTerms `json:"rubiconNonGuaranteedTerms,omitempty"`
// SellerTimeZone: For deals with Cost Per Day billing, defines the
// timezone used to mark the boundaries of a day (buyer-readonly)
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)
}
type DealTermsGuaranteedFixedPriceTerms struct {
// BillingInfo: External billing info for this Deal. This field is
// relevant when external billing info such as price has a different
// currency code than DFP/AdX.
BillingInfo *DealTermsGuaranteedFixedPriceTermsBillingInfo `json:"billingInfo,omitempty"`
// 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. For CPD deals, buyer changes to
// guaranteed_looks will be ignored.
GuaranteedLooks int64 `json:"guaranteedLooks,omitempty,string"`
// MinimumDailyLooks: Count of minimum daily looks for a CPD deal. For
// CPD deals, buyer should negotiate on this field instead of
// guaranteed_looks.
MinimumDailyLooks int64 `json:"minimumDailyLooks,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "BillingInfo") 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. "BillingInfo") 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 *DealTermsGuaranteedFixedPriceTerms) MarshalJSON() ([]byte, error) {
type NoMethod DealTermsGuaranteedFixedPriceTerms
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type DealTermsGuaranteedFixedPriceTermsBillingInfo struct {
// CurrencyConversionTimeMs: The timestamp (in ms since epoch) when the
// original reservation price for the deal was first converted to DFP
// currency. This is used to convert the contracted price into buyer's
// currency without discrepancy.
CurrencyConversionTimeMs int64 `json:"currencyConversionTimeMs,omitempty,string"`
// DfpLineItemId: The DFP line item id associated with this deal. For
// features like CPD, buyers can retrieve the DFP line item for billing
// reconciliation.
DfpLineItemId int64 `json:"dfpLineItemId,omitempty,string"`
// OriginalContractedQuantity: The original contracted quantity (#
// impressions) for this deal. To ensure delivery, sometimes the
// publisher will book the deal with a impression buffer, such that
// guaranteed_looks is greater than the contracted quantity. However
// clients are billed using the original contracted quantity.
OriginalContractedQuantity int64 `json:"originalContractedQuantity,omitempty,string"`
// Price: The original reservation price for the deal, if the currency
// code is different from the one used in negotiation.
Price *Price `json:"price,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "CurrencyConversionTimeMs") 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. "CurrencyConversionTimeMs")
// 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 *DealTermsGuaranteedFixedPriceTermsBillingInfo) MarshalJSON() ([]byte, error) {
type NoMethod DealTermsGuaranteedFixedPriceTermsBillingInfo
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type DealTermsNonGuaranteedAuctionTerms struct {
// AutoOptimizePrivateAuction: True if open auction buyers are allowed
// to compete with invited buyers in this private auction
// (buyer-readonly).
AutoOptimizePrivateAuction bool `json:"autoOptimizePrivateAuction,omitempty"`
// ReservePricePerBuyers: Reserve price for the specified buyer.
ReservePricePerBuyers []*PricePerBuyer `json:"reservePricePerBuyers,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "AutoOptimizePrivateAuction") 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.
// "AutoOptimizePrivateAuction") 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 *DealTermsNonGuaranteedAuctionTerms) MarshalJSON() ([]byte, error) {
type NoMethod DealTermsNonGuaranteedAuctionTerms
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type DealTermsNonGuaranteedFixedPriceTerms struct {
// FixedPrices: Fixed price for the specified buyer.
FixedPrices []*PricePerBuyer `json:"fixedPrices,omitempty"`
// 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 *DealTermsNonGuaranteedFixedPriceTerms) MarshalJSON() ([]byte, error) {
type NoMethod DealTermsNonGuaranteedFixedPriceTerms
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type DealTermsRubiconNonGuaranteedTerms struct {
// PriorityPrice: Optional price for Rubicon priority access in the
// auction.
PriorityPrice *Price `json:"priorityPrice,omitempty"`
// StandardPrice: Optional price for Rubicon standard access in the
// auction.
StandardPrice *Price `json:"standardPrice,omitempty"`
// ForceSendFields is a list of field names (e.g. "PriorityPrice") 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. "PriorityPrice") 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 *DealTermsRubiconNonGuaranteedTerms) MarshalJSON() ([]byte, error) {
type NoMethod DealTermsRubiconNonGuaranteedTerms
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type DeleteOrderDealsRequest struct {
// DealIds: List of deals to delete for a given proposal
DealIds []string `json:"dealIds,omitempty"`
// ProposalRevisionNumber: The last known proposal revision number.
ProposalRevisionNumber int64 `json:"proposalRevisionNumber,omitempty,string"`
// UpdateAction: Indicates an optional action to take on the proposal
UpdateAction string `json:"updateAction,omitempty"`
// ForceSendFields is a list of field names (e.g. "DealIds") 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. "DealIds") 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 *DeleteOrderDealsRequest) MarshalJSON() ([]byte, error) {
type NoMethod DeleteOrderDealsRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type DeleteOrderDealsResponse struct {
// Deals: List of deals deleted (in the same proposal as passed in the
// request)
Deals []*MarketplaceDeal `json:"deals,omitempty"`
// ProposalRevisionNumber: The updated revision number for the proposal.
ProposalRevisionNumber int64 `json:"proposalRevisionNumber,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. "Deals") 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. "Deals") 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 *DeleteOrderDealsResponse) MarshalJSON() ([]byte, error) {
type NoMethod DeleteOrderDealsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type DeliveryControl struct {
CreativeBlockingLevel string `json:"creativeBlockingLevel,omitempty"`
DeliveryRateType string `json:"deliveryRateType,omitempty"`
FrequencyCaps []*DeliveryControlFrequencyCap `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)
}
type DeliveryControlFrequencyCap struct {
MaxImpressions int64 `json:"maxImpressions,omitempty"`
NumTimeUnits int64 `json:"numTimeUnits,omitempty"`
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 *DeliveryControlFrequencyCap) MarshalJSON() ([]byte, error) {
type NoMethod DeliveryControlFrequencyCap
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Dimension: This message carries publisher provided breakdown. E.g.
// {dimension_type: 'COUNTRY', [{dimension_value: {id: 1, name: 'US'}},
// {dimension_value: {id: 2, name: 'UK'}}]}
type Dimension struct {
DimensionType string `json:"dimensionType,omitempty"`
DimensionValues []*DimensionDimensionValue `json:"dimensionValues,omitempty"`
// ForceSendFields is a list of field names (e.g. "DimensionType") 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. "DimensionType") 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 *Dimension) MarshalJSON() ([]byte, error) {
type NoMethod Dimension
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DimensionDimensionValue: Value of the dimension.
type DimensionDimensionValue struct {
// Id: Id of the dimension.
Id int64 `json:"id,omitempty"`
// Name: Name of the dimension mainly for debugging purposes, except for
// the case of CREATIVE_SIZE. For CREATIVE_SIZE, strings are used
// instead of ids.
Name string `json:"name,omitempty"`
// Percentage: Percent of total impressions for a dimension type. e.g.
// {dimension_type: 'GENDER', [{dimension_value: {id: 1, name: 'MALE',
// percentage: 60}}]} Gender MALE is 60% of all impressions which have
// gender.
Percentage int64 `json:"percentage,omitempty"`
// ForceSendFields is a list of field names (e.g. "Id") 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. "Id") 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 *DimensionDimensionValue) MarshalJSON() ([]byte, error) {
type NoMethod DimensionDimensionValue
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type EditAllOrderDealsRequest struct {
// Deals: List of deals to edit. Service may perform 3 different
// operations based on comparison of deals in this list vs deals already
// persisted in database: 1. Add new deal to proposal If a deal in this
// list does not exist in the proposal, the service will create a new
// deal and add it to the proposal. Validation will follow
// AddOrderDealsRequest. 2. Update existing deal in the proposal If a
// deal in this list already exist in the proposal, the service will
// update that existing deal to this new deal in the request. Validation
// will follow UpdateOrderDealsRequest. 3. Delete deals from the
// proposal (just need the id) If a existing deal in the proposal is not
// present in this list, the service will delete that deal from the
// proposal. Validation will follow DeleteOrderDealsRequest.
Deals []*MarketplaceDeal `json:"deals,omitempty"`
// Proposal: If specified, also updates the proposal in the batch
// transaction. This is useful when the proposal and the deals need to
// be updated in one transaction.
Proposal *Proposal `json:"proposal,omitempty"`
// ProposalRevisionNumber: The last known revision number for the
// proposal.
ProposalRevisionNumber int64 `json:"proposalRevisionNumber,omitempty,string"`
// UpdateAction: Indicates an optional action to take on the proposal
UpdateAction string `json:"updateAction,omitempty"`
// ForceSendFields is a list of field names (e.g. "Deals") 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. "Deals") 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 *EditAllOrderDealsRequest) MarshalJSON() ([]byte, error) {
type NoMethod EditAllOrderDealsRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type EditAllOrderDealsResponse struct {
// Deals: List of all deals in the proposal after edit.
Deals []*MarketplaceDeal `json:"deals,omitempty"`
// OrderRevisionNumber: The latest revision number after the update has
// been applied.
OrderRevisionNumber int64 `json:"orderRevisionNumber,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. "Deals") 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. "Deals") 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 *EditAllOrderDealsResponse) MarshalJSON() ([]byte, error) {
type NoMethod EditAllOrderDealsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type GetOffersResponse struct {
// Products: The returned list of products.
Products []*Product `json:"products,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Products") 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. "Products") 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 *GetOffersResponse) MarshalJSON() ([]byte, error) {
type NoMethod GetOffersResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type GetOrderDealsResponse struct {
// Deals: List of deals for the proposal
Deals []*MarketplaceDeal `json:"deals,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Deals") 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. "Deals") 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 *GetOrderDealsResponse) MarshalJSON() ([]byte, error) {
type NoMethod GetOrderDealsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type GetOrderNotesResponse struct {
// Notes: The list of matching notes. The notes for a proposal are
// ordered from oldest to newest. If the notes span multiple proposals,
// they will be grouped by proposal, with the notes for the most
// recently modified proposal appearing first.
Notes []*MarketplaceNote `json:"notes,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Notes") 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. "Notes") 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 *GetOrderNotesResponse) MarshalJSON() ([]byte, error) {
type NoMethod GetOrderNotesResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type GetOrdersResponse struct {
// Proposals: The list of matching proposals.
Proposals []*Proposal `json:"proposals,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Proposals") 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. "Proposals") 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 *GetOrdersResponse) MarshalJSON() ([]byte, error) {
type NoMethod GetOrdersResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type GetPublisherProfilesByAccountIdResponse struct {
// Profiles: Profiles for the requested publisher
Profiles []*PublisherProfileApiProto `json:"profiles,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Profiles") 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. "Profiles") 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 *GetPublisherProfilesByAccountIdResponse) MarshalJSON() ([]byte, error) {
type NoMethod GetPublisherProfilesByAccountIdResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// MarketplaceDeal: A proposal can contain multiple deals. A deal
// contains the terms and targeting information that is used for
// serving.
type MarketplaceDeal struct {
// BuyerPrivateData: Buyer private data (hidden from seller).
BuyerPrivateData *PrivateData `json:"buyerPrivateData,omitempty"`
// CreationTimeMs: The time (ms since epoch) of the deal creation.
// (readonly)
CreationTimeMs int64 `json:"creationTimeMs,omitempty,string"`
// CreativePreApprovalPolicy: Specifies the creative pre-approval policy
// (buyer-readonly)
CreativePreApprovalPolicy string `json:"creativePreApprovalPolicy,omitempty"`
// CreativeSafeFrameCompatibility: Specifies whether the creative is
// safeFrame compatible (buyer-readonly)
CreativeSafeFrameCompatibility string `json:"creativeSafeFrameCompatibility,omitempty"`
// DealId: A unique deal-id for the deal (readonly).
DealId string `json:"dealId,omitempty"`
// DealServingMetadata: Metadata about the serving status of this deal
// (readonly, writes via custom actions)
DealServingMetadata *DealServingMetadata `json:"dealServingMetadata,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. This message is assigned an id of 100 since some
// day we would want to model this as a protobuf extension.
DeliveryControl *DeliveryControl `json:"deliveryControl,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. (readonly)
ExternalDealId string `json:"externalDealId,omitempty"`
// FlightEndTimeMs: Proposed flight end time of the deal (ms since
// epoch) This will generally be stored in a granularity of a second.
// (updatable)
FlightEndTimeMs int64 `json:"flightEndTimeMs,omitempty,string"`
// FlightStartTimeMs: Proposed flight start time of the deal (ms since
// epoch) This will generally be stored in a granularity of a second.
// (updatable)
FlightStartTimeMs int64 `json:"flightStartTimeMs,omitempty,string"`
// InventoryDescription: Description for the deal terms.
// (buyer-readonly)
InventoryDescription string `json:"inventoryDescription,omitempty"`
// IsRfpTemplate: Indicates whether the current deal is a RFP template.
// RFP template is created by buyer and not based on seller created
// products.
IsRfpTemplate bool `json:"isRfpTemplate,omitempty"`
// IsSetupComplete: True, if the buyside inventory setup is complete for
// this deal. (readonly, except via OrderSetupCompleted action)
IsSetupComplete bool `json:"isSetupComplete,omitempty"`
// Kind: Identifies what kind of resource this is. Value: the fixed
// string "adexchangebuyer#marketplaceDeal".
Kind string `json:"kind,omitempty"`
// LastUpdateTimeMs: The time (ms since epoch) when the deal was last
// updated. (readonly)
LastUpdateTimeMs int64 `json:"lastUpdateTimeMs,omitempty,string"`
// Name: The name of the deal. (updatable)
Name string `json:"name,omitempty"`
// ProductId: The product-id from which this deal was created.
// (readonly, except on create)
ProductId string `json:"productId,omitempty"`
// ProductRevisionNumber: The revision number of the product that the
// deal was created from (readonly, except on create)
ProductRevisionNumber int64 `json:"productRevisionNumber,omitempty,string"`
// ProgrammaticCreativeSource: Specifies the creative source for
// programmatic deals, PUBLISHER means creative is provided by seller
// and ADVERTISR means creative is provided by buyer. (buyer-readonly)
ProgrammaticCreativeSource string `json:"programmaticCreativeSource,omitempty"`
ProposalId string `json:"proposalId,omitempty"`
// SellerContacts: Optional Seller contact information for the deal
// (buyer-readonly)
SellerContacts []*ContactInformation `json:"sellerContacts,omitempty"`
// SharedTargetings: The shared targeting visible to buyers and sellers.
// Each shared targeting entity is AND'd together. (updatable)
SharedTargetings []*SharedTargeting `json:"sharedTargetings,omitempty"`
// SyndicationProduct: The syndication product associated with the deal.
// (readonly, except on create)
SyndicationProduct string `json:"syndicationProduct,omitempty"`
// Terms: The negotiable terms of the deal. (updatable)
Terms *DealTerms `json:"terms,omitempty"`
WebPropertyCode string `json:"webPropertyCode,omitempty"`
// ForceSendFields is a list of field names (e.g. "BuyerPrivateData") 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. "BuyerPrivateData") 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 *MarketplaceDeal) MarshalJSON() ([]byte, error) {
type NoMethod MarketplaceDeal
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type MarketplaceDealParty struct {
// Buyer: The buyer/seller associated with the deal. One of buyer/seller
// is specified for a deal-party.
Buyer *Buyer `json:"buyer,omitempty"`
// Seller: The buyer/seller associated with the deal. One of
// buyer/seller is specified for a deal party.
Seller *Seller `json:"seller,omitempty"`
// ForceSendFields is a list of field names (e.g. "Buyer") 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. "Buyer") 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 *MarketplaceDealParty) MarshalJSON() ([]byte, error) {
type NoMethod MarketplaceDealParty
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type MarketplaceLabel struct {
// AccountId: The accountId of the party that created the label.
AccountId string `json:"accountId,omitempty"`
// CreateTimeMs: The creation time (in ms since epoch) for the label.
CreateTimeMs int64 `json:"createTimeMs,omitempty,string"`
// DeprecatedMarketplaceDealParty: Information about the party that
// created the label.
DeprecatedMarketplaceDealParty *MarketplaceDealParty `json:"deprecatedMarketplaceDealParty,omitempty"`
// Label: The label to use.
Label string `json:"label,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 *MarketplaceLabel) MarshalJSON() ([]byte, error) {
type NoMethod MarketplaceLabel
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// MarketplaceNote: A proposal is associated with a bunch of notes which
// may optionally be associated with a deal and/or revision number.
type MarketplaceNote struct {
// CreatorRole: The role of the person (buyer/seller) creating the note.
// (readonly)
CreatorRole string `json:"creatorRole,omitempty"`
// DealId: Notes can optionally be associated with a deal. (readonly,
// except on create)
DealId string `json:"dealId,omitempty"`
// Kind: Identifies what kind of resource this is. Value: the fixed
// string "adexchangebuyer#marketplaceNote".
Kind string `json:"kind,omitempty"`
// Note: The actual note to attach. (readonly, except on create)
Note string `json:"note,omitempty"`
// NoteId: The unique id for the note. (readonly)
NoteId string `json:"noteId,omitempty"`
// ProposalId: The proposalId that a note is attached to. (readonly)
ProposalId string `json:"proposalId,omitempty"`
// ProposalRevisionNumber: If the note is associated with a proposal
// revision number, then store that here. (readonly, except on create)
ProposalRevisionNumber int64 `json:"proposalRevisionNumber,omitempty,string"`
// TimestampMs: The timestamp (ms since epoch) that this note was
// created. (readonly)
TimestampMs int64 `json:"timestampMs,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "CreatorRole") 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. "CreatorRole") 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 *MarketplaceNote) MarshalJSON() ([]byte, error) {
type NoMethod MarketplaceNote
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// PerformanceReport: The configuration data for an Ad Exchange
// performance report list.
type PerformanceReport struct {
// BidRate: The number of bid responses with an ad.
BidRate float64 `json:"bidRate,omitempty"`
// BidRequestRate: The number of bid requests sent to your bidder.
BidRequestRate float64 `json:"bidRequestRate,omitempty"`
// CalloutStatusRate: Rate of various prefiltering statuses per match.
// Please refer to the callout-status-codes.txt file for different
// statuses.
CalloutStatusRate []interface{} `json:"calloutStatusRate,omitempty"`
// CookieMatcherStatusRate: Average QPS for cookie matcher operations.
CookieMatcherStatusRate []interface{} `json:"cookieMatcherStatusRate,omitempty"`
// CreativeStatusRate: Rate of ads with a given status. Please refer to
// the creative-status-codes.txt file for different statuses.
CreativeStatusRate []interface{} `json:"creativeStatusRate,omitempty"`
// FilteredBidRate: The number of bid responses that were filtered due
// to a policy violation or other errors.
FilteredBidRate float64 `json:"filteredBidRate,omitempty"`
// HostedMatchStatusRate: Average QPS for hosted match operations.
HostedMatchStatusRate []interface{} `json:"hostedMatchStatusRate,omitempty"`
// InventoryMatchRate: The number of potential queries based on your
// pretargeting settings.
InventoryMatchRate float64 `json:"inventoryMatchRate,omitempty"`
// Kind: Resource type.
Kind string `json:"kind,omitempty"`
// Latency50thPercentile: The 50th percentile round trip latency(ms) as
// perceived from Google servers for the duration period covered by the
// report.
Latency50thPercentile float64 `json:"latency50thPercentile,omitempty"`
// Latency85thPercentile: The 85th percentile round trip latency(ms) as
// perceived from Google servers for the duration period covered by the
// report.
Latency85thPercentile float64 `json:"latency85thPercentile,omitempty"`
// Latency95thPercentile: The 95th percentile round trip latency(ms) as
// perceived from Google servers for the duration period covered by the
// report.
Latency95thPercentile float64 `json:"latency95thPercentile,omitempty"`
// NoQuotaInRegion: Rate of various quota account statuses per quota
// check.
NoQuotaInRegion float64 `json:"noQuotaInRegion,omitempty"`
// OutOfQuota: Rate of various quota account statuses per quota check.
OutOfQuota float64 `json:"outOfQuota,omitempty"`
// PixelMatchRequests: Average QPS for pixel match requests from
// clients.
PixelMatchRequests float64 `json:"pixelMatchRequests,omitempty"`
// PixelMatchResponses: Average QPS for pixel match responses from
// clients.
PixelMatchResponses float64 `json:"pixelMatchResponses,omitempty"`
// QuotaConfiguredLimit: The configured quota limits for this account.
QuotaConfiguredLimit float64 `json:"quotaConfiguredLimit,omitempty"`
// QuotaThrottledLimit: The throttled quota limits for this account.
QuotaThrottledLimit float64 `json:"quotaThrottledLimit,omitempty"`
// Region: The trading location of this data.
Region string `json:"region,omitempty"`
// SuccessfulRequestRate: The number of properly formed bid responses
// received by our servers within the deadline.
SuccessfulRequestRate float64 `json:"successfulRequestRate,omitempty"`
// Timestamp: The unix timestamp of the starting time of this
// performance data.
Timestamp int64 `json:"timestamp,omitempty,string"`
// UnsuccessfulRequestRate: The number of bid responses that were
// unsuccessful due to timeouts, incorrect formatting, etc.
UnsuccessfulRequestRate float64 `json:"unsuccessfulRequestRate,omitempty"`
// ForceSendFields is a list of field names (e.g. "BidRate") 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. "BidRate") 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 *PerformanceReport) MarshalJSON() ([]byte, error) {
type NoMethod PerformanceReport
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *PerformanceReport) UnmarshalJSON(data []byte) error {
type NoMethod PerformanceReport
var s1 struct {
BidRate gensupport.JSONFloat64 `json:"bidRate"`
BidRequestRate gensupport.JSONFloat64 `json:"bidRequestRate"`
FilteredBidRate gensupport.JSONFloat64 `json:"filteredBidRate"`
InventoryMatchRate gensupport.JSONFloat64 `json:"inventoryMatchRate"`
Latency50thPercentile gensupport.JSONFloat64 `json:"latency50thPercentile"`
Latency85thPercentile gensupport.JSONFloat64 `json:"latency85thPercentile"`
Latency95thPercentile gensupport.JSONFloat64 `json:"latency95thPercentile"`
NoQuotaInRegion gensupport.JSONFloat64 `json:"noQuotaInRegion"`
OutOfQuota gensupport.JSONFloat64 `json:"outOfQuota"`
PixelMatchRequests gensupport.JSONFloat64 `json:"pixelMatchRequests"`
PixelMatchResponses gensupport.JSONFloat64 `json:"pixelMatchResponses"`
QuotaConfiguredLimit gensupport.JSONFloat64 `json:"quotaConfiguredLimit"`
QuotaThrottledLimit gensupport.JSONFloat64 `json:"quotaThrottledLimit"`
SuccessfulRequestRate gensupport.JSONFloat64 `json:"successfulRequestRate"`
UnsuccessfulRequestRate gensupport.JSONFloat64 `json:"unsuccessfulRequestRate"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.BidRate = float64(s1.BidRate)
s.BidRequestRate = float64(s1.BidRequestRate)
s.FilteredBidRate = float64(s1.FilteredBidRate)
s.InventoryMatchRate = float64(s1.InventoryMatchRate)
s.Latency50thPercentile = float64(s1.Latency50thPercentile)
s.Latency85thPercentile = float64(s1.Latency85thPercentile)
s.Latency95thPercentile = float64(s1.Latency95thPercentile)
s.NoQuotaInRegion = float64(s1.NoQuotaInRegion)
s.OutOfQuota = float64(s1.OutOfQuota)
s.PixelMatchRequests = float64(s1.PixelMatchRequests)
s.PixelMatchResponses = float64(s1.PixelMatchResponses)
s.QuotaConfiguredLimit = float64(s1.QuotaConfiguredLimit)
s.QuotaThrottledLimit = float64(s1.QuotaThrottledLimit)
s.SuccessfulRequestRate = float64(s1.SuccessfulRequestRate)
s.UnsuccessfulRequestRate = float64(s1.UnsuccessfulRequestRate)
return nil
}
// PerformanceReportList: The configuration data for an Ad Exchange
// performance report list.
type PerformanceReportList struct {
// Kind: Resource type.
Kind string `json:"kind,omitempty"`
// PerformanceReport: A list of performance reports relevant for the
// account.
PerformanceReport []*PerformanceReport `json:"performanceReport,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Kind") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Kind") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *PerformanceReportList) MarshalJSON() ([]byte, error) {
type NoMethod PerformanceReportList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type PretargetingConfig struct {
// BillingId: The id for billing purposes, provided for reference. Leave
// this field blank for insert requests; the id will be generated
// automatically.
BillingId int64 `json:"billingId,omitempty,string"`
// ConfigId: The config id; generated automatically. Leave this field
// blank for insert requests.
ConfigId int64 `json:"configId,omitempty,string"`
// ConfigName: The name of the config. Must be unique. Required for all
// requests.
ConfigName string `json:"configName,omitempty"`
// CreativeType: List must contain exactly one of
// PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
CreativeType []string `json:"creativeType,omitempty"`
// Dimensions: Requests which allow one of these (width, height) pairs
// will match. All pairs must be supported ad dimensions.
Dimensions []*PretargetingConfigDimensions `json:"dimensions,omitempty"`
// ExcludedContentLabels: Requests with any of these content labels will
// not match. Values are from content-labels.txt in the downloadable
// files section.
ExcludedContentLabels googleapi.Int64s `json:"excludedContentLabels,omitempty"`
// ExcludedGeoCriteriaIds: Requests containing any of these geo criteria
// ids will not match.
ExcludedGeoCriteriaIds googleapi.Int64s `json:"excludedGeoCriteriaIds,omitempty"`
// ExcludedPlacements: Requests containing any of these placements will
// not match.
ExcludedPlacements []*PretargetingConfigExcludedPlacements `json:"excludedPlacements,omitempty"`
// ExcludedUserLists: Requests containing any of these users list ids
// will not match.
ExcludedUserLists googleapi.Int64s `json:"excludedUserLists,omitempty"`
// ExcludedVerticals: Requests containing any of these vertical ids will
// not match. Values are from the publisher-verticals.txt file in the
// downloadable files section.
ExcludedVerticals googleapi.Int64s `json:"excludedVerticals,omitempty"`
// GeoCriteriaIds: Requests containing any of these geo criteria ids
// will match.
GeoCriteriaIds googleapi.Int64s `json:"geoCriteriaIds,omitempty"`
// IsActive: Whether this config is active. Required for all requests.
IsActive bool `json:"isActive,omitempty"`
// Kind: The kind of the resource, i.e.
// "adexchangebuyer#pretargetingConfig".
Kind string `json:"kind,omitempty"`
// Languages: Request containing any of these language codes will match.
Languages []string `json:"languages,omitempty"`
// MinimumViewabilityDecile: Requests where the predicted viewability is
// below the specified decile will not match. E.g. if the buyer sets
// this value to 5, requests from slots where the predicted viewability
// is below 50% will not match. If the predicted viewability is unknown
// this field will be ignored.
MinimumViewabilityDecile int64 `json:"minimumViewabilityDecile,omitempty"`
// MobileCarriers: Requests containing any of these mobile carrier ids
// will match. Values are from mobile-carriers.csv in the downloadable
// files section.
MobileCarriers googleapi.Int64s `json:"mobileCarriers,omitempty"`
// MobileDevices: Requests containing any of these mobile device ids
// will match. Values are from mobile-devices.csv in the downloadable
// files section.
MobileDevices googleapi.Int64s `json:"mobileDevices,omitempty"`
// MobileOperatingSystemVersions: Requests containing any of these
// mobile operating system version ids will match. Values are from
// mobile-os.csv in the downloadable files section.
MobileOperatingSystemVersions googleapi.Int64s `json:"mobileOperatingSystemVersions,omitempty"`
// Placements: Requests containing any of these placements will match.
Placements []*PretargetingConfigPlacements `json:"placements,omitempty"`
// Platforms: Requests matching any of these platforms will match.
// Possible values are PRETARGETING_PLATFORM_MOBILE,
// PRETARGETING_PLATFORM_DESKTOP, and PRETARGETING_PLATFORM_TABLET.
Platforms []string `json:"platforms,omitempty"`
// SupportedCreativeAttributes: Creative attributes should be declared
// here if all creatives corresponding to this pretargeting
// configuration have that creative attribute. Values are from
// pretargetable-creative-attributes.txt in the downloadable files
// section.
SupportedCreativeAttributes googleapi.Int64s `json:"supportedCreativeAttributes,omitempty"`
// UserIdentifierDataRequired: Requests containing the specified type of
// user data will match. Possible values are HOSTED_MATCH_DATA, which
// means the request is cookie-targetable and has a match in the buyer's
// hosted match table, and COOKIE_OR_IDFA, which means the request has
// either a targetable cookie or an iOS IDFA.
UserIdentifierDataRequired []string `json:"userIdentifierDataRequired,omitempty"`
// UserLists: Requests containing any of these user list ids will match.
UserLists googleapi.Int64s `json:"userLists,omitempty"`
// VendorTypes: Requests that allow any of these vendor ids will match.
// Values are from vendors.txt in the downloadable files section.
VendorTypes googleapi.Int64s `json:"vendorTypes,omitempty"`
// Verticals: Requests containing any of these vertical ids will match.
Verticals googleapi.Int64s `json:"verticals,omitempty"`
// VideoPlayerSizes: Video requests satisfying any of these player size
// constraints will match.
VideoPlayerSizes []*PretargetingConfigVideoPlayerSizes `json:"videoPlayerSizes,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "BillingId") 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. "BillingId") 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 *PretargetingConfig) MarshalJSON() ([]byte, error) {
type NoMethod PretargetingConfig
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type PretargetingConfigDimensions struct {
// Height: Height in pixels.
Height int64 `json:"height,omitempty,string"`
// Width: Width in pixels.
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 *PretargetingConfigDimensions) MarshalJSON() ([]byte, error) {
type NoMethod PretargetingConfigDimensions
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type PretargetingConfigExcludedPlacements struct {
// Token: The value of the placement. Interpretation depends on the
// placement type, e.g. URL for a site placement, channel name for a
// channel placement, app id for a mobile app placement.
Token string `json:"token,omitempty"`
// Type: The type of the placement.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Token") 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. "Token") 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 *PretargetingConfigExcludedPlacements) MarshalJSON() ([]byte, error) {
type NoMethod PretargetingConfigExcludedPlacements
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type PretargetingConfigPlacements struct {
// Token: The value of the placement. Interpretation depends on the
// placement type, e.g. URL for a site placement, channel name for a
// channel placement, app id for a mobile app placement.
Token string `json:"token,omitempty"`
// Type: The type of the placement.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Token") 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. "Token") 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 *PretargetingConfigPlacements) MarshalJSON() ([]byte, error) {
type NoMethod PretargetingConfigPlacements
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type PretargetingConfigVideoPlayerSizes struct {
// AspectRatio: The type of aspect ratio. Leave this field blank to
// match all aspect ratios.
AspectRatio string `json:"aspectRatio,omitempty"`
// MinHeight: The minimum player height in pixels. Leave this field
// blank to match any player height.
MinHeight int64 `json:"minHeight,omitempty,string"`
// MinWidth: The minimum player width in pixels. Leave this field blank
// to match any player width.
MinWidth int64 `json:"minWidth,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "AspectRatio") 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. "AspectRatio") 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 *PretargetingConfigVideoPlayerSizes) MarshalJSON() ([]byte, error) {
type NoMethod PretargetingConfigVideoPlayerSizes
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type PretargetingConfigList struct {
// Items: A list of pretargeting configs
Items []*PretargetingConfig `json:"items,omitempty"`
// Kind: Resource type.
Kind string `json:"kind,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Items") 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. "Items") 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 *PretargetingConfigList) MarshalJSON() ([]byte, error) {
type NoMethod PretargetingConfigList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type Price struct {
// AmountMicros: The price value in micros.
AmountMicros float64 `json:"amountMicros,omitempty"`
// CurrencyCode: The currency code for the price.
CurrencyCode string `json:"currencyCode,omitempty"`
// ExpectedCpmMicros: In case of CPD deals, the expected CPM in micros.
ExpectedCpmMicros float64 `json:"expectedCpmMicros,omitempty"`
// PricingType: The pricing type for the deal/product.
PricingType string `json:"pricingType,omitempty"`
// ForceSendFields is a list of field names (e.g. "AmountMicros") 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. "AmountMicros") 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 *Price) MarshalJSON() ([]byte, error) {
type NoMethod Price
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *Price) UnmarshalJSON(data []byte) error {
type NoMethod Price
var s1 struct {
AmountMicros gensupport.JSONFloat64 `json:"amountMicros"`
ExpectedCpmMicros gensupport.JSONFloat64 `json:"expectedCpmMicros"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.AmountMicros = float64(s1.AmountMicros)
s.ExpectedCpmMicros = float64(s1.ExpectedCpmMicros)
return nil
}
// PricePerBuyer: Used to specify pricing rules for buyers. Each
// PricePerBuyer in a product can become [0,1] deals. To check if there
// is a PricePerBuyer for a particular buyer we look for the most
// specific matching rule - we first look for a rule matching the buyer
// and otherwise look for a matching rule where no buyer is set.
type PricePerBuyer struct {
// AuctionTier: Optional access type for this buyer.
AuctionTier string `json:"auctionTier,omitempty"`
// BilledBuyer: Reference to the buyer that will get billed.
BilledBuyer *Buyer `json:"billedBuyer,omitempty"`
// Buyer: The buyer who will pay this price. If unset, all buyers can
// pay this price (if the advertisers match, and there's no more
// specific rule matching the buyer).
Buyer *Buyer `json:"buyer,omitempty"`
// Price: The specified price
Price *Price `json:"price,omitempty"`
// ForceSendFields is a list of field names (e.g. "AuctionTier") 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. "AuctionTier") 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 *PricePerBuyer) MarshalJSON() ([]byte, error) {
type NoMethod PricePerBuyer
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type PrivateData struct {
ReferenceId string `json:"referenceId,omitempty"`
ReferencePayload string `json:"referencePayload,omitempty"`
// ForceSendFields is a list of field names (e.g. "ReferenceId") 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. "ReferenceId") 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 *PrivateData) MarshalJSON() ([]byte, error) {
type NoMethod PrivateData
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Product: A product is segment of inventory that a seller wishes to
// sell. It is associated with certain terms and targeting information
// which helps buyer know more about the inventory. Each field in a
// product can have one of the following setting:
//
// (readonly) - It is an error to try and set this field.
// (buyer-readonly) - Only the seller can set this field.
// (seller-readonly) - Only the buyer can set this field. (updatable) -
// The field is updatable at all times by either buyer or the seller.
type Product struct {
// BilledBuyer: The billed buyer corresponding to the buyer that created
// the offer. (readonly, except on create)
BilledBuyer *Buyer `json:"billedBuyer,omitempty"`
// Buyer: The buyer that created the offer if this is a buyer initiated
// offer (readonly, except on create)
Buyer *Buyer `json:"buyer,omitempty"`
// CreationTimeMs: Creation time in ms. since epoch (readonly)
CreationTimeMs int64 `json:"creationTimeMs,omitempty,string"`
// CreatorContacts: Optional contact information for the creator of this
// product. (buyer-readonly)
CreatorContacts []*ContactInformation `json:"creatorContacts,omitempty"`
// CreatorRole: The role that created the offer. Set to BUYER for buyer
// initiated offers.
CreatorRole string `json:"creatorRole,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. This message is assigned an id of 100 since some
// day we would want to model this as a protobuf extension.
DeliveryControl *DeliveryControl `json:"deliveryControl,omitempty"`
// FlightEndTimeMs: The proposed end time for the deal (ms since epoch)
// (buyer-readonly)
FlightEndTimeMs int64 `json:"flightEndTimeMs,omitempty,string"`
// FlightStartTimeMs: Inventory availability dates. (times are in ms
// since epoch) The granularity is generally in the order of seconds.
// (buyer-readonly)
FlightStartTimeMs int64 `json:"flightStartTimeMs,omitempty,string"`
// HasCreatorSignedOff: If the creator has already signed off on the
// product, then the buyer can finalize the deal by accepting the
// product as is. When copying to a proposal, if any of the terms are
// changed, then auto_finalize is automatically set to false.
HasCreatorSignedOff bool `json:"hasCreatorSignedOff,omitempty"`
// InventorySource: What exchange will provide this inventory (readonly,
// except on create).
InventorySource string `json:"inventorySource,omitempty"`
// Kind: Identifies what kind of resource this is. Value: the fixed
// string "adexchangebuyer#product".
Kind string `json:"kind,omitempty"`
// Labels: Optional List of labels for the product (optional,
// buyer-readonly).
Labels []*MarketplaceLabel `json:"labels,omitempty"`
// LastUpdateTimeMs: Time of last update in ms. since epoch (readonly)
LastUpdateTimeMs int64 `json:"lastUpdateTimeMs,omitempty,string"`
// LegacyOfferId: Optional legacy offer id if this offer is a preferred
// deal offer.
LegacyOfferId string `json:"legacyOfferId,omitempty"`
// MarketplacePublisherProfileId: Marketplace publisher profile Id. This
// Id differs from the regular publisher_profile_id in that 1. This is a
// new id, the old Id will be deprecated in 2017. 2. This id uniquely
// identifies a publisher profile by itself.
MarketplacePublisherProfileId string `json:"marketplacePublisherProfileId,omitempty"`
// Name: The name for this product as set by the seller.
// (buyer-readonly)
Name string `json:"name,omitempty"`
// PrivateAuctionId: Optional private auction id if this offer is a
// private auction offer.
PrivateAuctionId string `json:"privateAuctionId,omitempty"`
// ProductId: The unique id for the product (readonly)
ProductId string `json:"productId,omitempty"`
// PublisherProfileId: Id of the publisher profile for a given seller. A
// (seller.account_id, publisher_profile_id) pair uniquely identifies a
// publisher profile. Buyers can call the PublisherProfiles::List
// endpoint to get a list of publisher profiles for a given seller.
PublisherProfileId string `json:"publisherProfileId,omitempty"`
// PublisherProvidedForecast: Publisher self-provided forecast
// information.
PublisherProvidedForecast *PublisherProvidedForecast `json:"publisherProvidedForecast,omitempty"`
// RevisionNumber: The revision number of the product. (readonly)
RevisionNumber int64 `json:"revisionNumber,omitempty,string"`
// Seller: Information about the seller that created this product
// (readonly, except on create)
Seller *Seller `json:"seller,omitempty"`
// SharedTargetings: Targeting that is shared between the buyer and the
// seller. Each targeting criteria has a specified key and for each key
// there is a list of inclusion value or exclusion values.
// (buyer-readonly)
SharedTargetings []*SharedTargeting `json:"sharedTargetings,omitempty"`
// State: The state of the product. (buyer-readonly)
State string `json:"state,omitempty"`
// SyndicationProduct: The syndication product associated with the deal.
// (readonly, except on create)
SyndicationProduct string `json:"syndicationProduct,omitempty"`
// Terms: The negotiable terms of the deal (buyer-readonly)
Terms *DealTerms `json:"terms,omitempty"`
// WebPropertyCode: The web property code for the seller. This field is
// meant to be copied over as is when creating deals.
WebPropertyCode string `json:"webPropertyCode,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "BilledBuyer") 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. "BilledBuyer") 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 *Product) MarshalJSON() ([]byte, error) {
type NoMethod Product
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Proposal: Represents a proposal in the marketplace. A proposal is the
// unit of negotiation between a seller and a buyer and contains deals
// which are served. Each field in a proposal can have one of the
// following setting:
//
// (readonly) - It is an error to try and set this field.
// (buyer-readonly) - Only the seller can set this field.
// (seller-readonly) - Only the buyer can set this field. (updatable) -
// The field is updatable at all times by either buyer or the seller.
type Proposal struct {
// BilledBuyer: Reference to the buyer that will get billed for this
// proposal. (readonly)
BilledBuyer *Buyer `json:"billedBuyer,omitempty"`
// Buyer: Reference to the buyer on the proposal. (readonly, except on
// create)
Buyer *Buyer `json:"buyer,omitempty"`
// BuyerContacts: Optional contact information of the buyer.
// (seller-readonly)
BuyerContacts []*ContactInformation `json:"buyerContacts,omitempty"`
// BuyerPrivateData: Private data for buyer. (hidden from seller).
BuyerPrivateData *PrivateData `json:"buyerPrivateData,omitempty"`
// DbmAdvertiserIds: IDs of DBM advertisers permission to this proposal.
DbmAdvertiserIds []string `json:"dbmAdvertiserIds,omitempty"`
// HasBuyerSignedOff: When an proposal is in an accepted state,
// indicates whether the buyer has signed off. Once both sides have
// signed off on a deal, the proposal can be finalized by the seller.
// (seller-readonly)
HasBuyerSignedOff bool `json:"hasBuyerSignedOff,omitempty"`
// HasSellerSignedOff: When an proposal is in an accepted state,
// indicates whether the buyer has signed off Once both sides have
// signed off on a deal, the proposal can be finalized by the seller.
// (buyer-readonly)
HasSellerSignedOff bool `json:"hasSellerSignedOff,omitempty"`
// InventorySource: What exchange will provide this inventory (readonly,
// except on create).
InventorySource string `json:"inventorySource,omitempty"`
// IsRenegotiating: True if the proposal is being renegotiated
// (readonly).
IsRenegotiating bool `json:"isRenegotiating,omitempty"`
// IsSetupComplete: True, if the buyside inventory setup is complete for
// this proposal. (readonly, except via OrderSetupCompleted action)
// Deprecated in favor of deal level setup complete flag.
IsSetupComplete bool `json:"isSetupComplete,omitempty"`
// Kind: Identifies what kind of resource this is. Value: the fixed
// string "adexchangebuyer#proposal".
Kind string `json:"kind,omitempty"`
// Labels: List of labels associated with the proposal. (readonly)
Labels []*MarketplaceLabel `json:"labels,omitempty"`
// LastUpdaterOrCommentorRole: The role of the last user that either
// updated the proposal or left a comment. (readonly)
LastUpdaterOrCommentorRole string `json:"lastUpdaterOrCommentorRole,omitempty"`
// Name: The name for the proposal (updatable)
Name string `json:"name,omitempty"`
// NegotiationId: Optional negotiation id if this proposal is a
// preferred deal proposal.
NegotiationId string `json:"negotiationId,omitempty"`
// OriginatorRole: Indicates whether the buyer/seller created the
// proposal.(readonly)
OriginatorRole string `json:"originatorRole,omitempty"`
// PrivateAuctionId: Optional private auction id if this proposal is a
// private auction proposal.
PrivateAuctionId string `json:"privateAuctionId,omitempty"`
// ProposalId: The unique id of the proposal. (readonly).
ProposalId string `json:"proposalId,omitempty"`
// ProposalState: The current state of the proposal. (readonly)
ProposalState string `json:"proposalState,omitempty"`
// RevisionNumber: The revision number for the proposal (readonly).
RevisionNumber int64 `json:"revisionNumber,omitempty,string"`
// RevisionTimeMs: The time (ms since epoch) when the proposal was last
// revised (readonly).
RevisionTimeMs int64 `json:"revisionTimeMs,omitempty,string"`
// Seller: Reference to the seller on the proposal. (readonly, except on
// create)
Seller *Seller `json:"seller,omitempty"`
// SellerContacts: Optional contact information of the seller
// (buyer-readonly).
SellerContacts []*ContactInformation `json:"sellerContacts,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "BilledBuyer") 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. "BilledBuyer") 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 *Proposal) MarshalJSON() ([]byte, error) {
type NoMethod Proposal
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type PublisherProfileApiProto struct {
// Audience: Publisher provided info on its audience.
Audience string `json:"audience,omitempty"`
// BuyerPitchStatement: A pitch statement for the buyer
BuyerPitchStatement string `json:"buyerPitchStatement,omitempty"`
// DirectContact: Direct contact for the publisher profile.
DirectContact string `json:"directContact,omitempty"`
// Exchange: Exchange where this publisher profile is from. E.g. AdX,
// Rubicon etc...
Exchange string `json:"exchange,omitempty"`
// GooglePlusLink: Link to publisher's Google+ page.
GooglePlusLink string `json:"googlePlusLink,omitempty"`
// IsParent: True, if this is the parent profile, which represents all
// domains owned by the publisher.
IsParent bool `json:"isParent,omitempty"`
// IsPublished: True, if this profile is published. Deprecated for
// state.
IsPublished bool `json:"isPublished,omitempty"`
// Kind: Identifies what kind of resource this is. Value: the fixed
// string "adexchangebuyer#publisherProfileApiProto".
Kind string `json:"kind,omitempty"`
// LogoUrl: The url to the logo for the publisher.
LogoUrl string `json:"logoUrl,omitempty"`
// MediaKitLink: The url for additional marketing and sales materials.
MediaKitLink string `json:"mediaKitLink,omitempty"`
Name string `json:"name,omitempty"`
// Overview: Publisher provided overview.
Overview string `json:"overview,omitempty"`
// ProfileId: The pair of (seller.account_id, profile_id) uniquely
// identifies a publisher profile for a given publisher.
ProfileId int64 `json:"profileId,omitempty"`
// ProgrammaticContact: Programmatic contact for the publisher profile.
ProgrammaticContact string `json:"programmaticContact,omitempty"`
// PublisherDomains: The list of domains represented in this publisher
// profile. Empty if this is a parent profile.
PublisherDomains []string `json:"publisherDomains,omitempty"`
// PublisherProfileId: Unique Id for publisher profile.
PublisherProfileId string `json:"publisherProfileId,omitempty"`
// PublisherProvidedForecast: Publisher provided forecasting
// information.
PublisherProvidedForecast *PublisherProvidedForecast `json:"publisherProvidedForecast,omitempty"`
// RateCardInfoLink: Link to publisher rate card
RateCardInfoLink string `json:"rateCardInfoLink,omitempty"`
// SamplePageLink: Link for a sample content page.
SamplePageLink string `json:"samplePageLink,omitempty"`
// Seller: Seller of the publisher profile.
Seller *Seller `json:"seller,omitempty"`
// State: State of the publisher profile.
State string `json:"state,omitempty"`
// TopHeadlines: Publisher provided key metrics and rankings.
TopHeadlines []string `json:"topHeadlines,omitempty"`
// ForceSendFields is a list of field names (e.g. "Audience") 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. "Audience") 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 *PublisherProfileApiProto) MarshalJSON() ([]byte, error) {
type NoMethod PublisherProfileApiProto
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// PublisherProvidedForecast: This message carries publisher provided
// forecasting information.
type PublisherProvidedForecast struct {
// Dimensions: Publisher provided dimensions. E.g. geo, sizes etc...
Dimensions []*Dimension `json:"dimensions,omitempty"`
// WeeklyImpressions: Publisher provided weekly impressions.
WeeklyImpressions int64 `json:"weeklyImpressions,omitempty,string"`
// WeeklyUniques: Publisher provided weekly uniques.
WeeklyUniques int64 `json:"weeklyUniques,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "Dimensions") 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. "Dimensions") 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 *PublisherProvidedForecast) MarshalJSON() ([]byte, error) {
type NoMethod PublisherProvidedForecast
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type Seller struct {
// AccountId: The unique id for the seller. The seller fills in this
// field. The seller account id is then available to buyer in the
// product.
AccountId string `json:"accountId,omitempty"`
// SubAccountId: Optional sub-account id for the seller.
SubAccountId string `json:"subAccountId,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 *Seller) MarshalJSON() ([]byte, error) {
type NoMethod Seller
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type SharedTargeting struct {
// Exclusions: The list of values to exclude from targeting. Each value
// is AND'd together.
Exclusions []*TargetingValue `json:"exclusions,omitempty"`
// Inclusions: The list of value to include as part of the targeting.
// Each value is OR'd together.
Inclusions []*TargetingValue `json:"inclusions,omitempty"`
// Key: The key representing the shared targeting criterion.
Key string `json:"key,omitempty"`
// ForceSendFields is a list of field names (e.g. "Exclusions") 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. "Exclusions") 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 *SharedTargeting) MarshalJSON() ([]byte, error) {
type NoMethod SharedTargeting
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}