realtimebidding

package
v0.179.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 9, 2024 License: BSD-3-Clause Imports: 16 Imported by: 0

Documentation

Overview

Package realtimebidding provides access to the Real-time Bidding API.

For product documentation, see: https://developers.google.com/authorized-buyers/apis/realtimebidding/reference/rest/

Library status

These client libraries are officially supported by Google. However, this library is considered complete and is in maintenance mode. This means that we will address critical bugs and security issues but will not add any new features.

When possible, we recommend using our newer [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go) that are still actively being worked and iterated on.

Creating a client

Usage example:

import "google.golang.org/api/realtimebidding/v1alpha"
...
ctx := context.Background()
realtimebiddingService, err := realtimebidding.NewService(ctx)

In this example, Google Application Default Credentials are used for authentication. For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.

Other authentication options

To use an API key for authentication (note: some APIs do not support API keys), use google.golang.org/api/option.WithAPIKey:

realtimebiddingService, err := realtimebidding.NewService(ctx, option.WithAPIKey("AIza..."))

To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow, use google.golang.org/api/option.WithTokenSource:

config := &oauth2.Config{...}
// ...
token, err := config.Exchange(ctx, ...)
realtimebiddingService, err := realtimebidding.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))

See google.golang.org/api/option.ClientOption for details on options.

Index

Constants

View Source
const (
	// See, create, edit, and delete your Authorized Buyers and Open Bidding
	// account entities
	RealtimeBiddingScope = "https://www.googleapis.com/auth/realtime-bidding"
)

OAuth2 scopes used by this API.

Variables

This section is empty.

Functions

This section is empty.

Types

type ActivateBiddingFunctionRequest added in v0.50.0

type ActivateBiddingFunctionRequest struct {
}

ActivateBiddingFunctionRequest: The request to activate a bidding function.

type ArchiveBiddingFunctionRequest added in v0.50.0

type ArchiveBiddingFunctionRequest struct {
}

ArchiveBiddingFunctionRequest: A request to archive a bidding function.

type BiddersBiddingFunctionsActivateCall added in v0.50.0

type BiddersBiddingFunctionsActivateCall struct {
	// contains filtered or unexported fields
}

func (*BiddersBiddingFunctionsActivateCall) Context added in v0.50.0

Context sets the context to be used in this call's Do method.

func (*BiddersBiddingFunctionsActivateCall) Do added in v0.50.0

Do executes the "realtimebidding.bidders.biddingFunctions.activate" call. Any non-2xx status code is an error. Response headers are in either *BiddingFunction.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*BiddersBiddingFunctionsActivateCall) Fields added in v0.50.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*BiddersBiddingFunctionsActivateCall) Header added in v0.50.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

type BiddersBiddingFunctionsArchiveCall added in v0.50.0

type BiddersBiddingFunctionsArchiveCall struct {
	// contains filtered or unexported fields
}

func (*BiddersBiddingFunctionsArchiveCall) Context added in v0.50.0

Context sets the context to be used in this call's Do method.

func (*BiddersBiddingFunctionsArchiveCall) Do added in v0.50.0

Do executes the "realtimebidding.bidders.biddingFunctions.archive" call. Any non-2xx status code is an error. Response headers are in either *BiddingFunction.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*BiddersBiddingFunctionsArchiveCall) Fields added in v0.50.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*BiddersBiddingFunctionsArchiveCall) Header added in v0.50.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

type BiddersBiddingFunctionsCreateCall

type BiddersBiddingFunctionsCreateCall struct {
	// contains filtered or unexported fields
}

func (*BiddersBiddingFunctionsCreateCall) Context

Context sets the context to be used in this call's Do method.

func (*BiddersBiddingFunctionsCreateCall) Do

Do executes the "realtimebidding.bidders.biddingFunctions.create" call. Any non-2xx status code is an error. Response headers are in either *BiddingFunction.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*BiddersBiddingFunctionsCreateCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*BiddersBiddingFunctionsCreateCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

type BiddersBiddingFunctionsListCall

type BiddersBiddingFunctionsListCall struct {
	// contains filtered or unexported fields
}

func (*BiddersBiddingFunctionsListCall) Context

Context sets the context to be used in this call's Do method.

func (*BiddersBiddingFunctionsListCall) Do

Do executes the "realtimebidding.bidders.biddingFunctions.list" call. Any non-2xx status code is an error. Response headers are in either *ListBiddingFunctionsResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*BiddersBiddingFunctionsListCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*BiddersBiddingFunctionsListCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*BiddersBiddingFunctionsListCall) IfNoneMatch

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

func (*BiddersBiddingFunctionsListCall) PageSize

PageSize sets the optional parameter "pageSize": The maximum number of bidding functions to return.

func (*BiddersBiddingFunctionsListCall) PageToken

PageToken sets the optional parameter "pageToken": A token identifying a page of results the server should return. This value is received from a previous `ListBiddingFunctions` call in ListBiddingFunctionsResponse.nextPageToken.

func (*BiddersBiddingFunctionsListCall) Pages

Pages invokes f for each page of results. A non-nil error returned from f will halt the iteration. The provided context supersedes any context provided to the Context method.

type BiddersBiddingFunctionsService

type BiddersBiddingFunctionsService struct {
	// contains filtered or unexported fields
}

func NewBiddersBiddingFunctionsService

func NewBiddersBiddingFunctionsService(s *Service) *BiddersBiddingFunctionsService

func (*BiddersBiddingFunctionsService) Activate added in v0.50.0

Activate: Activates an existing bidding function. An activated function is available for invocation for the server-side TURTLEDOVE simulations.

  • name: The name of the bidding function to activate. Format: `bidders/{bidder_account_id}/biddingFunction/{bidding_function_name}`.

func (*BiddersBiddingFunctionsService) Archive added in v0.50.0

Archive: Archives an existing bidding function. An archived function will not be available for function invocation for the server-side TURTLEDOVE simulations unless it is activated.

  • name: The name of the bidding function to archive. Format: `bidders/{bidder_account_id}/biddingFunction/{bidding_function_name}`.

func (*BiddersBiddingFunctionsService) Create

Create: Creates a new bidding function.

  • parent: The name of the bidder for which to create the bidding function. Format: `bidders/{bidderAccountId}`.

func (*BiddersBiddingFunctionsService) List

List: Lists the bidding functions that a bidder currently has registered.

  • parent: Name of the bidder whose bidding functions will be listed. Format: `bidders/{bidder_account_id}`.

type BiddersService

type BiddersService struct {
	BiddingFunctions *BiddersBiddingFunctionsService
	// contains filtered or unexported fields
}

func NewBiddersService

func NewBiddersService(s *Service) *BiddersService

type BiddingFunction

type BiddingFunction struct {
	// BiddingFunction: The raw Javascript source code of the bidding function.
	BiddingFunction string `json:"biddingFunction,omitempty"`
	// Name: The name of the bidding function that must follow the pattern:
	// `bidders/{bidder_account_id}/biddingFunctions/{bidding_function_name}`.
	Name string `json:"name,omitempty"`
	// State: Output only. The state of the bidding function.
	//
	// Possible values:
	//   "STATE_UNSPECIFIED" - Default value that should not be used.
	//   "ACTIVE" - An active function. Only `ACTIVE` bidding functions or ad
	// scoring functions are made available for the server-side TURTLEDOVE
	// simulations. Every account is limited to 10 active bidding functions per
	// account.
	//   "ARCHIVED" - A function that is no longer made available for invocation in
	// a simulation and instead archived. An archived function can later be made
	// active by activating the function through `ActivateBiddingFunction`.
	State string `json:"state,omitempty"`
	// Type: The type of the bidding function to be created.
	//
	// Possible values:
	//   "FUNCTION_TYPE_UNSPECIFIED" - Default value that should not be used.
	//   "TURTLEDOVE_SIMULATION_BIDDING_FUNCTION" - Bidding function that can be
	// used by Authorized Buyers in the original TURTLEDOVE simulation. See
	// documentation on the TURTLEDOVE simulation at
	// https://developers.google.com/authorized-buyers/rtb/turtledove. The function
	// takes in a Javascript object, `inputs`, that contains the following named
	// fields: `openrtbContextualBidRequest` OR `googleContextualBidRequest`,
	// `customContextualSignal`, `interestBasedBidData`, `interestGroupData`, and
	// returns the bid price CPM. Example: “` /* Returns a bid price CPM. * *
	// @param {Object} inputs an object with the * following named fields: * -
	// openrtbContextualBidRequest * OR googleContextualBidRequest * -
	// customContextualSignal * - interestBasedBidData * - interestGroupData */
	// function biddingFunction(inputs) { ... return
	// inputs.interestBasedBidData.cpm *
	// inputs.customContextualSignals.placementMultiplier; } “`
	//   "FLEDGE_BIDDING_FUNCTION" - Buyer's interest group bidding function that
	// can be used by Authorized Buyers in the FLEDGE simulation. See the FLEDGE
	// explainer at
	// https://github.com/WICG/turtledove/blob/main/FLEDGE.md#32-on-device-bidding.
	// The function takes one argument, `inputs`, that contains an object with the
	// following named fields of the form: “` { "interestGroup" : { "ad" : [
	// "buyerCreativeId": "...", # Ad creative ID "adData": { # JSON object } ],
	// "userBiddingSignals": { . # JSON object } }, "auctionSignals": { "url": #
	// string, "slotVisibility": # enum value, "slotDimensions": [ { "height": #
	// number value "width": # number value } ] }, "perBuyerSignals": { # JSON
	// object }, "trustedBiddingSignals": { # JSON object }, "browserSignals": {
	// "recent_impression_ages_secs": [ # Array of integers. Not yet populated. ] }
	// } “` `interestGroup`: An object containing a list of `ad` objects, which
	// contain the following named fields: - `buyerCreativeId`: The ad creative ID
	// string. - `adData`: Any JSON value of the bidder's choosing to contain data
	// associated with an ad provided in `BidResponse.ad.adslot.ad_data` for the
	// Google Authorized Buyers protocol and `BidResponse.seatbid.bid.ext.ad_data`
	// for the OpenRTB protocol. - `userBiddingSignals`: Any JSON value of the
	// bidder's choosing containing interest group data that corresponds to
	// user_bidding_signals (as in FLEDGE). This field will be populated from
	// `BidResponse.interest_group_map.user_bidding_signals` for Google Authorized
	// Buyers protocol and
	// `BidResponse.ext.interest_group_map.user_bidding_signals` for the OpenRTB
	// protocol. `auctionSignals`: Contains data from the seller. It corresponds to
	// the auction signals data described in the FLEDGE proposal. It is an object
	// containing the following named fields: - `url`: The string URL of the page
	// with parameters removed. - `slotVisibility`: Enum of one of the following
	// potential values: - NO_DETECTION = 0 - ABOVE_THE_FOLD = 1 - BELOW_THE_FOLD =
	// 2 - `slotDimensions`: A list of objects containing containing width and
	// height pairs in `width` and `height` fields, respectively, from
	// `BidRequest.adslot.width` and `BidRequest.adslot.height` for the Google
	// Authorized Buyers protocol and `BidRequest.imp.banner.format.w` and
	// `BidRequest.imp.banner.format.h` for the OpenRTB protocol.
	// `perBuyerSignals`: The contextual signals from the bid response that are
	// populated in
	// `BidResponse.interest_group_bidding.interest_group_buyers.per_buyer_signals`
	// for the Google Authorized Buyers protocol and
	// `BidResponse.ext.interest_group_bidding.interest_group_buyers.per_buyer_signa
	// ls` for the OpenRTB protocol. These signals can be of any JSON format of
	// your choosing, however, the buyer's domain name must match between: - the
	// interest group response in `BidResponse.interest_group_map.buyer_domain` for
	// the Google Authorized Buyers protocol or in
	// `BidResponse.ext.interest_group_map.buyer_domain` for the OpenRTB protocol.
	// - the contextual response as a key to the map in
	// `BidResponse.interest_group_bidding.interest_group_buyers` for the Google
	// Authorized Buyers protocol or in
	// `BidResponse.ext.interest_group_bidding.interest_group_buyers` for the
	// OpenRTB protocol. In other words, there must be a match between the buyer
	// domain of the contextual per_buyer_signals and the domain of an interest
	// group. `trustedBiddingSignals`: The trusted bidding signals that corresponds
	// to the trusted_bidding_signals in the FLEDGE proposal. It is provided in the
	// interest group response as
	// `BidResponse.interest_group_map.user_bidding_signals` for the Google
	// Authorized Buyers protocol and
	// `BidResponse.ext.interest_group_map.user_bidding_signals` for the OpenRTB
	// protocol. This field can be any JSON format of your choosing.
	// `browserSignals`: An object of simulated browser-provider signals. It is an
	// object with a single named field, `recent_impression_ages_secs`, that
	// contains a list of estimated number value recent impression ages in seconds
	// for a given interest group. `recent_impression_ages_secs` is not yet
	// populated. The function returns the string creative ID of the selected ad,
	// the bid price CPM, and (optionally) selected product IDs. In addition, the
	// bidding function may populate an optional debug string that may be used for
	// remote debugging and troubleshooting of a bidder-provided bidding function.
	// The debug string should not contain a user identifier. The maximum length of
	// the debug string is 200 bytes. This debug string is available in
	// `BidResponseFeedback`
	// (https://developers.google.com/authorized-buyers/rtb/realtime-bidding-guide#bidresponsefeedback-object)
	// and `BidFeedback`
	// (https://developers.google.com/authorized-buyers/rtb/openrtb-guide#bidfeedback),
	// for the Google protocol and OpenRTB protocol respectively. In addition, the
	// debug string can be inserted into the creative HTML snippet through macro
	// substitution if the following string is included in the snippet:
	// “%%DEBUG_STRING%%”. Ensure the debug string complies with [Platform
	// Program
	// Policies](https://support.google.com/platformspolicy/answer/3013851). Sample
	// Bidding Function: “` function biddingFunction(inputs) { ... return {
	// "buyerCreativeId": "ad_creative_id_1", "bidPriceCpm": 0.3, "productIds":
	// ["product_id_1", "product_id_2", "product_id_3"] "debugString": "Bidding
	// function executed successfully!" } } “`
	Type string `json:"type,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "BiddingFunction") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "BiddingFunction") to include in
	// API requests with the JSON null value. By default, fields with empty values
	// are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

BiddingFunction: The bidding function to be executed as part of the TURTLEDOVE simulation experiment bidding flow.

func (*BiddingFunction) MarshalJSON

func (s *BiddingFunction) MarshalJSON() ([]byte, error)

type ListBiddingFunctionsResponse

type ListBiddingFunctionsResponse struct {
	// BiddingFunctions: A list of a bidder's bidding functions.
	BiddingFunctions []*BiddingFunction `json:"biddingFunctions,omitempty"`
	// NextPageToken: A token which can be passed to a subsequent call to the
	// `ListBiddingFunctions` method to retrieve the next page of results in
	// ListBiddingFunctionsRequest.pageToken.
	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. "BiddingFunctions") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "BiddingFunctions") to include in
	// API requests with the JSON null value. By default, fields with empty values
	// are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ListBiddingFunctionsResponse: A response containing a list of a bidder's bidding functions.

func (*ListBiddingFunctionsResponse) MarshalJSON

func (s *ListBiddingFunctionsResponse) MarshalJSON() ([]byte, error)

type Service

type Service struct {
	BasePath  string // API endpoint base URL
	UserAgent string // optional additional User-Agent fragment

	Bidders *BiddersService
	// contains filtered or unexported fields
}

func New deprecated

func New(client *http.Client) (*Service, error)

New creates a new Service. It uses the provided http.Client for requests.

Deprecated: please use NewService instead. To provide a custom HTTP client, use option.WithHTTPClient. If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.

func NewService

func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error)

NewService creates a new Service.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL