Documentation

Overview

Package doubleclicksearch provides access to the Search Ads 360 API.

For product documentation, see: https://developers.google.com/search-ads

Creating a client

Usage example:

import "google.golang.org/api/doubleclicksearch/v2"
...
ctx := context.Background()
doubleclicksearchService, err := doubleclicksearch.NewService(ctx)

In this example, Google Application Default Credentials are used for authentication.

For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.

Other authentication options

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

doubleclicksearchService, err := doubleclicksearch.NewService(ctx, option.WithAPIKey("AIza..."))

To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:

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

See https://godoc.org/google.golang.org/api/option/ for details on options.

Index

Constants

View Source
const (
	// View and manage your advertising data in DoubleClick Search
	DoubleclicksearchScope = "https://www.googleapis.com/auth/doubleclicksearch"
)

    OAuth2 scopes used by this API.

    Variables

    This section is empty.

    Functions

    This section is empty.

    Types

    type Availability

    type Availability struct {
    	// AdvertiserId: DS advertiser ID.
    	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
    
    	// AgencyId: DS agency ID.
    	AgencyId int64 `json:"agencyId,omitempty,string"`
    
    	// AvailabilityTimestamp: The time by which all conversions have been
    	// uploaded, in epoch millis UTC.
    	AvailabilityTimestamp int64 `json:"availabilityTimestamp,omitempty,string"`
    
    	// SegmentationId: The numeric segmentation identifier (for example,
    	// DoubleClick Search Floodlight activity ID).
    	SegmentationId int64 `json:"segmentationId,omitempty,string"`
    
    	// SegmentationName: The friendly segmentation identifier (for example,
    	// DoubleClick Search Floodlight activity name).
    	SegmentationName string `json:"segmentationName,omitempty"`
    
    	// SegmentationType: The segmentation type that this availability is for
    	// (its default value is `FLOODLIGHT`).
    	SegmentationType string `json:"segmentationType,omitempty"`
    
    	// ForceSendFields is a list of field names (e.g. "AdvertiserId") 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. "AdvertiserId") 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:"-"`
    }

      Availability: A message containing availability data relevant to DoubleClick Search.

      func (*Availability) MarshalJSON

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

      type Conversion

      type Conversion struct {
      	// AdGroupId: DS ad group ID.
      	AdGroupId int64 `json:"adGroupId,omitempty,string"`
      
      	// AdId: DS ad ID.
      	AdId int64 `json:"adId,omitempty,string"`
      
      	// AdvertiserId: DS advertiser ID.
      	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
      
      	// AgencyId: DS agency ID.
      	AgencyId int64 `json:"agencyId,omitempty,string"`
      
      	// AttributionModel: Available to advertisers only after contacting
      	// DoubleClick Search customer support.
      	AttributionModel string `json:"attributionModel,omitempty"`
      
      	// CampaignId: DS campaign ID.
      	CampaignId int64 `json:"campaignId,omitempty,string"`
      
      	// Channel: Sales channel for the product. Acceptable values are: -
      	// "local": a physical store - "online": an online store
      	Channel string `json:"channel,omitempty"`
      
      	// ClickId: DS click ID for the conversion.
      	ClickId string `json:"clickId,omitempty"`
      
      	// ConversionId: For offline conversions, advertisers provide this ID.
      	// Advertisers can specify any ID that is meaningful to them. Each
      	// conversion in a request must specify a unique ID, and the combination
      	// of ID and timestamp must be unique amongst all conversions within the
      	// advertiser. For online conversions, DS copies the `dsConversionId` or
      	// `floodlightOrderId` into this property depending on the advertiser's
      	// Floodlight instructions.
      	ConversionId string `json:"conversionId,omitempty"`
      
      	// ConversionModifiedTimestamp: The time at which the conversion was
      	// last modified, in epoch millis UTC.
      	ConversionModifiedTimestamp int64 `json:"conversionModifiedTimestamp,omitempty,string"`
      
      	// ConversionTimestamp: The time at which the conversion took place, in
      	// epoch millis UTC.
      	ConversionTimestamp string `json:"conversionTimestamp,omitempty"`
      
      	// CountMillis: Available to advertisers only after contacting
      	// DoubleClick Search customer support.
      	CountMillis int64 `json:"countMillis,omitempty,string"`
      
      	// CriterionId: DS criterion (keyword) ID.
      	CriterionId int64 `json:"criterionId,omitempty,string"`
      
      	// CurrencyCode: The currency code for the conversion's revenue. Should
      	// be in ISO 4217 alphabetic (3-char) format.
      	CurrencyCode string `json:"currencyCode,omitempty"`
      
      	// CustomDimension: Custom dimensions for the conversion, which can be
      	// used to filter data in a report.
      	CustomDimension []*CustomDimension `json:"customDimension,omitempty"`
      
      	// CustomMetric: Custom metrics for the conversion.
      	CustomMetric []*CustomMetric `json:"customMetric,omitempty"`
      
      	// DeviceType: The type of device on which the conversion occurred.
      	DeviceType string `json:"deviceType,omitempty"`
      
      	// DsConversionId: ID that DoubleClick Search generates for each
      	// conversion.
      	DsConversionId int64 `json:"dsConversionId,omitempty,string"`
      
      	// EngineAccountId: DS engine account ID.
      	EngineAccountId int64 `json:"engineAccountId,omitempty,string"`
      
      	// FloodlightOrderId: The Floodlight order ID provided by the advertiser
      	// for the conversion.
      	FloodlightOrderId string `json:"floodlightOrderId,omitempty"`
      
      	// InventoryAccountId: ID that DS generates and uses to uniquely
      	// identify the inventory account that contains the product.
      	InventoryAccountId int64 `json:"inventoryAccountId,omitempty,string"`
      
      	// ProductCountry: The country registered for the Merchant Center feed
      	// that contains the product. Use an ISO 3166 code to specify a country.
      	ProductCountry string `json:"productCountry,omitempty"`
      
      	// ProductGroupId: DS product group ID.
      	ProductGroupId int64 `json:"productGroupId,omitempty,string"`
      
      	// ProductId: The product ID (SKU).
      	ProductId string `json:"productId,omitempty"`
      
      	// ProductLanguage: The language registered for the Merchant Center feed
      	// that contains the product. Use an ISO 639 code to specify a language.
      	ProductLanguage string `json:"productLanguage,omitempty"`
      
      	// QuantityMillis: The quantity of this conversion, in millis.
      	QuantityMillis int64 `json:"quantityMillis,omitempty,string"`
      
      	// RevenueMicros: The revenue amount of this `TRANSACTION` conversion,
      	// in micros (value multiplied by 1000000, no decimal). For example, to
      	// specify a revenue value of "10" enter "10000000" (10 million) in your
      	// request.
      	RevenueMicros string `json:"revenueMicros,omitempty"`
      
      	// SegmentationId: The numeric segmentation identifier (for example,
      	// DoubleClick Search Floodlight activity ID).
      	SegmentationId int64 `json:"segmentationId,omitempty,string"`
      
      	// SegmentationName: The friendly segmentation identifier (for example,
      	// DoubleClick Search Floodlight activity name).
      	SegmentationName string `json:"segmentationName,omitempty"`
      
      	// SegmentationType: The segmentation type of this conversion (for
      	// example, `FLOODLIGHT`).
      	SegmentationType string `json:"segmentationType,omitempty"`
      
      	// State: The state of the conversion, that is, either `ACTIVE` or
      	// `REMOVED`. Note: state DELETED is deprecated.
      	State string `json:"state,omitempty"`
      
      	// StoreId: The ID of the local store for which the product was
      	// advertised. Applicable only when the channel is "local".
      	StoreId string `json:"storeId,omitempty"`
      
      	// Type: The type of the conversion, that is, either `ACTION` or
      	// `TRANSACTION`. An `ACTION` conversion is an action by the user that
      	// has no monetarily quantifiable value, while a `TRANSACTION`
      	// conversion is an action that does have a monetarily quantifiable
      	// value. Examples are email list signups (`ACTION`) versus ecommerce
      	// purchases (`TRANSACTION`).
      	Type string `json:"type,omitempty"`
      
      	// ForceSendFields is a list of field names (e.g. "AdGroupId") 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. "AdGroupId") 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:"-"`
      }

        Conversion: A conversion containing data relevant to DoubleClick Search.

        func (*Conversion) MarshalJSON

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

        type ConversionGetCall

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

        func (*ConversionGetCall) AdGroupId

        func (c *ConversionGetCall) AdGroupId(adGroupId int64) *ConversionGetCall

          AdGroupId sets the optional parameter "adGroupId": Numeric ID of the ad group.

          func (*ConversionGetCall) AdId

          func (c *ConversionGetCall) AdId(adId int64) *ConversionGetCall

            AdId sets the optional parameter "adId": Numeric ID of the ad.

            func (*ConversionGetCall) CampaignId

            func (c *ConversionGetCall) CampaignId(campaignId int64) *ConversionGetCall

              CampaignId sets the optional parameter "campaignId": Numeric ID of the campaign.

              func (*ConversionGetCall) Context

                Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                func (*ConversionGetCall) CriterionId

                func (c *ConversionGetCall) CriterionId(criterionId int64) *ConversionGetCall

                  CriterionId sets the optional parameter "criterionId": Numeric ID of the criterion.

                  func (*ConversionGetCall) Do

                    Do executes the "doubleclicksearch.conversion.get" call. Exactly one of *ConversionList or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *ConversionList.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 (*ConversionGetCall) Fields

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

                      func (*ConversionGetCall) Header

                      func (c *ConversionGetCall) Header() http.Header

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

                        func (*ConversionGetCall) IfNoneMatch

                        func (c *ConversionGetCall) IfNoneMatch(entityTag string) *ConversionGetCall

                          IfNoneMatch sets the optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request. Use googleapi.IsNotModified to check whether the response error from Do is the result of In-None-Match.

                          type ConversionInsertCall

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

                          func (*ConversionInsertCall) Context

                            Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                            func (*ConversionInsertCall) Do

                              Do executes the "doubleclicksearch.conversion.insert" call. Exactly one of *ConversionList or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *ConversionList.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 (*ConversionInsertCall) Fields

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

                                func (*ConversionInsertCall) Header

                                func (c *ConversionInsertCall) Header() http.Header

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

                                  type ConversionList

                                  type ConversionList struct {
                                  	// Conversion: The conversions being requested.
                                  	Conversion []*Conversion `json:"conversion,omitempty"`
                                  
                                  	// Kind: Identifies this as a ConversionList resource. Value: the fixed
                                  	// string doubleclicksearch#conversionList.
                                  	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. "Conversion") 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. "Conversion") 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:"-"`
                                  }

                                    ConversionList: A list of conversions.

                                    func (*ConversionList) MarshalJSON

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

                                    type ConversionService

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

                                    func NewConversionService

                                    func NewConversionService(s *Service) *ConversionService

                                    func (*ConversionService) Get

                                    func (r *ConversionService) Get(agencyId int64, advertiserId int64, engineAccountId int64, endDate int64, rowCount int64, startDate int64, startRow int64) *ConversionGetCall

                                      Get: Retrieves a list of conversions from a DoubleClick Search engine account.

                                      func (*ConversionService) Insert

                                      func (r *ConversionService) Insert(conversionlist *ConversionList) *ConversionInsertCall

                                        Insert: Inserts a batch of new conversions into DoubleClick Search.

                                        func (*ConversionService) Update

                                        func (r *ConversionService) Update(conversionlist *ConversionList) *ConversionUpdateCall

                                          Update: Updates a batch of conversions in DoubleClick Search.

                                          func (*ConversionService) UpdateAvailability

                                          func (r *ConversionService) UpdateAvailability(updateavailabilityrequest *UpdateAvailabilityRequest) *ConversionUpdateAvailabilityCall

                                            UpdateAvailability: Updates the availabilities of a batch of floodlight activities in DoubleClick Search.

                                            type ConversionUpdateAvailabilityCall

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

                                            func (*ConversionUpdateAvailabilityCall) Context

                                              Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                              func (*ConversionUpdateAvailabilityCall) Do

                                                Do executes the "doubleclicksearch.conversion.updateAvailability" call. Exactly one of *UpdateAvailabilityResponse or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *UpdateAvailabilityResponse.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 (*ConversionUpdateAvailabilityCall) Fields

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

                                                  func (*ConversionUpdateAvailabilityCall) Header

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

                                                    type ConversionUpdateCall

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

                                                    func (*ConversionUpdateCall) Context

                                                      Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                      func (*ConversionUpdateCall) Do

                                                        Do executes the "doubleclicksearch.conversion.update" call. Exactly one of *ConversionList or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *ConversionList.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 (*ConversionUpdateCall) Fields

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

                                                          func (*ConversionUpdateCall) Header

                                                          func (c *ConversionUpdateCall) Header() http.Header

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

                                                            type CustomDimension

                                                            type CustomDimension struct {
                                                            	// Name: Custom dimension name.
                                                            	Name string `json:"name,omitempty"`
                                                            
                                                            	// Value: Custom dimension value.
                                                            	Value string `json:"value,omitempty"`
                                                            
                                                            	// ForceSendFields is a list of field names (e.g. "Name") 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. "Name") 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:"-"`
                                                            }

                                                              CustomDimension: A message containing the custom dimension.

                                                              func (*CustomDimension) MarshalJSON

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

                                                              type CustomMetric

                                                              type CustomMetric struct {
                                                              	// Name: Custom metric name.
                                                              	Name string `json:"name,omitempty"`
                                                              
                                                              	// Value: Custom metric numeric value.
                                                              	Value float64 `json:"value,omitempty"`
                                                              
                                                              	// ForceSendFields is a list of field names (e.g. "Name") 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. "Name") 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:"-"`
                                                              }

                                                                CustomMetric: A message containing the custom metric.

                                                                func (*CustomMetric) MarshalJSON

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

                                                                func (*CustomMetric) UnmarshalJSON

                                                                func (s *CustomMetric) UnmarshalJSON(data []byte) error

                                                                type Report

                                                                type Report struct {
                                                                	// Files: Asynchronous report only. Contains a list of generated report
                                                                	// files once the report has successfully completed.
                                                                	Files []*ReportFiles `json:"files,omitempty"`
                                                                
                                                                	// Id: Asynchronous report only. Id of the report.
                                                                	Id string `json:"id,omitempty"`
                                                                
                                                                	// IsReportReady: Asynchronous report only. True if and only if the
                                                                	// report has completed successfully and the report files are ready to
                                                                	// be downloaded.
                                                                	IsReportReady bool `json:"isReportReady,omitempty"`
                                                                
                                                                	// Kind: Identifies this as a Report resource. Value: the fixed string
                                                                	// `doubleclicksearch#report`.
                                                                	Kind string `json:"kind,omitempty"`
                                                                
                                                                	// Request: The request that created the report. Optional fields not
                                                                	// specified in the original request are filled with default values.
                                                                	Request *ReportRequest `json:"request,omitempty"`
                                                                
                                                                	// RowCount: The number of report rows generated by the report, not
                                                                	// including headers.
                                                                	RowCount int64 `json:"rowCount,omitempty"`
                                                                
                                                                	// Rows: Synchronous report only. Generated report rows.
                                                                	Rows []googleapi.RawMessage `json:"rows,omitempty"`
                                                                
                                                                	// StatisticsCurrencyCode: The currency code of all monetary values
                                                                	// produced in the report, including values that are set by users (e.g.,
                                                                	// keyword bid settings) and metrics (e.g., cost and revenue). The
                                                                	// currency code of a report is determined by the `statisticsCurrency`
                                                                	// field of the report request.
                                                                	StatisticsCurrencyCode string `json:"statisticsCurrencyCode,omitempty"`
                                                                
                                                                	// StatisticsTimeZone: If all statistics of the report are sourced from
                                                                	// the same time zone, this would be it. Otherwise the field is unset.
                                                                	StatisticsTimeZone string `json:"statisticsTimeZone,omitempty"`
                                                                
                                                                	// ServerResponse contains the HTTP response code and headers from the
                                                                	// server.
                                                                	googleapi.ServerResponse `json:"-"`
                                                                
                                                                	// ForceSendFields is a list of field names (e.g. "Files") 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. "Files") 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:"-"`
                                                                }

                                                                  Report: A DoubleClick Search report. This object contains the report request, some report metadata such as currency code, and the generated report rows or report files.

                                                                  func (*Report) MarshalJSON

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

                                                                  type ReportApiColumnSpec

                                                                  type ReportApiColumnSpec struct {
                                                                  	// ColumnName: Name of a DoubleClick Search column to include in the
                                                                  	// report.
                                                                  	ColumnName string `json:"columnName,omitempty"`
                                                                  
                                                                  	// CustomDimensionName: Segments a report by a custom dimension. The
                                                                  	// report must be scoped to an advertiser or lower, and the custom
                                                                  	// dimension must already be set up in DoubleClick Search. The custom
                                                                  	// dimension name, which appears in DoubleClick Search, is case
                                                                  	// sensitive.\ If used in a conversion report, returns the value of the
                                                                  	// specified custom dimension for the given conversion, if set. This
                                                                  	// column does not segment the conversion report.
                                                                  	CustomDimensionName string `json:"customDimensionName,omitempty"`
                                                                  
                                                                  	// CustomMetricName: Name of a custom metric to include in the report.
                                                                  	// The report must be scoped to an advertiser or lower, and the custom
                                                                  	// metric must already be set up in DoubleClick Search. The custom
                                                                  	// metric name, which appears in DoubleClick Search, is case sensitive.
                                                                  	CustomMetricName string `json:"customMetricName,omitempty"`
                                                                  
                                                                  	// EndDate: Inclusive day in YYYY-MM-DD format. When provided, this
                                                                  	// overrides the overall time range of the report for this column only.
                                                                  	// Must be provided together with `startDate`.
                                                                  	EndDate string `json:"endDate,omitempty"`
                                                                  
                                                                  	// GroupByColumn: Synchronous report only. Set to `true` to group by
                                                                  	// this column. Defaults to `false`.
                                                                  	GroupByColumn bool `json:"groupByColumn,omitempty"`
                                                                  
                                                                  	// HeaderText: Text used to identify this column in the report output;
                                                                  	// defaults to `columnName` or `savedColumnName` when not specified.
                                                                  	// This can be used to prevent collisions between DoubleClick Search
                                                                  	// columns and saved columns with the same name.
                                                                  	HeaderText string `json:"headerText,omitempty"`
                                                                  
                                                                  	// PlatformSource: The platform that is used to provide data for the
                                                                  	// custom dimension. Acceptable values are "floodlight".
                                                                  	PlatformSource string `json:"platformSource,omitempty"`
                                                                  
                                                                  	// ProductReportPerspective: Returns metrics only for a specific type of
                                                                  	// product activity. Accepted values are: - "sold": returns metrics
                                                                  	// only for products that were sold - "advertised": returns metrics
                                                                  	// only for products that were advertised in a Shopping campaign, and
                                                                  	// that might or might not have been sold
                                                                  	ProductReportPerspective string `json:"productReportPerspective,omitempty"`
                                                                  
                                                                  	// SavedColumnName: Name of a saved column to include in the report. The
                                                                  	// report must be scoped at advertiser or lower, and this saved column
                                                                  	// must already be created in the DoubleClick Search UI.
                                                                  	SavedColumnName string `json:"savedColumnName,omitempty"`
                                                                  
                                                                  	// StartDate: Inclusive date in YYYY-MM-DD format. When provided, this
                                                                  	// overrides the overall time range of the report for this column only.
                                                                  	// Must be provided together with `endDate`.
                                                                  	StartDate string `json:"startDate,omitempty"`
                                                                  
                                                                  	// ForceSendFields is a list of field names (e.g. "ColumnName") 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. "ColumnName") 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:"-"`
                                                                  }

                                                                    ReportApiColumnSpec: A request object used to create a DoubleClick Search report.

                                                                    func (*ReportApiColumnSpec) MarshalJSON

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

                                                                    type ReportFiles

                                                                    type ReportFiles struct {
                                                                    	// ByteCount: The size of this report file in bytes.
                                                                    	ByteCount int64 `json:"byteCount,omitempty,string"`
                                                                    
                                                                    	// Url: Use this url to download the report file.
                                                                    	Url string `json:"url,omitempty"`
                                                                    
                                                                    	// ForceSendFields is a list of field names (e.g. "ByteCount") 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. "ByteCount") 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 (*ReportFiles) MarshalJSON

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

                                                                    type ReportRequest

                                                                    type ReportRequest struct {
                                                                    	// Columns: The columns to include in the report. This includes both
                                                                    	// DoubleClick Search columns and saved columns. For DoubleClick Search
                                                                    	// columns, only the `columnName` parameter is required. For saved
                                                                    	// columns only the `savedColumnName` parameter is required. Both
                                                                    	// `columnName` and `savedColumnName` cannot be set in the same stanza.\
                                                                    	// The maximum number of columns per request is 300.
                                                                    	Columns []*ReportApiColumnSpec `json:"columns,omitempty"`
                                                                    
                                                                    	// DownloadFormat: Format that the report should be returned in.
                                                                    	// Currently `csv` or `tsv` is supported.
                                                                    	DownloadFormat string `json:"downloadFormat,omitempty"`
                                                                    
                                                                    	// Filters: A list of filters to be applied to the report.\ The maximum
                                                                    	// number of filters per request is 300.
                                                                    	Filters []*ReportRequestFilters `json:"filters,omitempty"`
                                                                    
                                                                    	// IncludeDeletedEntities: Determines if removed entities should be
                                                                    	// included in the report. Defaults to `false`. Deprecated, please use
                                                                    	// `includeRemovedEntities` instead.
                                                                    	IncludeDeletedEntities bool `json:"includeDeletedEntities,omitempty"`
                                                                    
                                                                    	// IncludeRemovedEntities: Determines if removed entities should be
                                                                    	// included in the report. Defaults to `false`.
                                                                    	IncludeRemovedEntities bool `json:"includeRemovedEntities,omitempty"`
                                                                    
                                                                    	// MaxRowsPerFile: Asynchronous report only. The maximum number of rows
                                                                    	// per report file. A large report is split into many files based on
                                                                    	// this field. Acceptable values are `1000000` to `100000000`,
                                                                    	// inclusive.
                                                                    	MaxRowsPerFile int64 `json:"maxRowsPerFile,omitempty"`
                                                                    
                                                                    	// OrderBy: Synchronous report only. A list of columns and directions
                                                                    	// defining sorting to be performed on the report rows.\ The maximum
                                                                    	// number of orderings per request is 300.
                                                                    	OrderBy []*ReportRequestOrderBy `json:"orderBy,omitempty"`
                                                                    
                                                                    	// ReportScope: The reportScope is a set of IDs that are used to
                                                                    	// determine which subset of entities will be returned in the report.
                                                                    	// The full lineage of IDs from the lowest scoped level desired up
                                                                    	// through agency is required.
                                                                    	ReportScope *ReportRequestReportScope `json:"reportScope,omitempty"`
                                                                    
                                                                    	// ReportType: Determines the type of rows that are returned in the
                                                                    	// report. For example, if you specify `reportType: keyword`, each row
                                                                    	// in the report will contain data about a keyword. See the Types of
                                                                    	// Reports (/search-ads/v2/report-types/) reference for the columns that
                                                                    	// are available for each type.
                                                                    	ReportType string `json:"reportType,omitempty"`
                                                                    
                                                                    	// RowCount: Synchronous report only. The maximum number of rows to
                                                                    	// return; additional rows are dropped. Acceptable values are `0` to
                                                                    	// `10000`, inclusive. Defaults to `10000`.
                                                                    	RowCount int64 `json:"rowCount,omitempty"`
                                                                    
                                                                    	// StartRow: Synchronous report only. Zero-based index of the first row
                                                                    	// to return. Acceptable values are `0` to `50000`, inclusive. Defaults
                                                                    	// to `0`.
                                                                    	StartRow int64 `json:"startRow,omitempty"`
                                                                    
                                                                    	// StatisticsCurrency: Specifies the currency in which monetary will be
                                                                    	// returned. Possible values are: `usd`, `agency` (valid if the report
                                                                    	// is scoped to agency or lower), `advertiser` (valid if the report is
                                                                    	// scoped to * advertiser or lower), or `account` (valid if the report
                                                                    	// is scoped to engine account or lower).
                                                                    	StatisticsCurrency string `json:"statisticsCurrency,omitempty"`
                                                                    
                                                                    	// TimeRange: If metrics are requested in a report, this argument will
                                                                    	// be used to restrict the metrics to a specific time range.
                                                                    	TimeRange *ReportRequestTimeRange `json:"timeRange,omitempty"`
                                                                    
                                                                    	// VerifySingleTimeZone: If `true`, the report would only be created if
                                                                    	// all the requested stat data are sourced from a single timezone.
                                                                    	// Defaults to `false`.
                                                                    	VerifySingleTimeZone bool `json:"verifySingleTimeZone,omitempty"`
                                                                    
                                                                    	// ForceSendFields is a list of field names (e.g. "Columns") 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. "Columns") 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:"-"`
                                                                    }

                                                                      ReportRequest: A request object used to create a DoubleClick Search report.

                                                                      func (*ReportRequest) MarshalJSON

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

                                                                      type ReportRequestFilters

                                                                      type ReportRequestFilters struct {
                                                                      	// Column: Column to perform the filter on. This can be a DoubleClick
                                                                      	// Search column or a saved column.
                                                                      	Column *ReportApiColumnSpec `json:"column,omitempty"`
                                                                      
                                                                      	// Operator: Operator to use in the filter. See the filter reference for
                                                                      	// a list of available operators.
                                                                      	Operator string `json:"operator,omitempty"`
                                                                      
                                                                      	// Values: A list of values to filter the column value against.\ The
                                                                      	// maximum number of filter values per request is 300.
                                                                      	Values []interface{} `json:"values,omitempty"`
                                                                      
                                                                      	// ForceSendFields is a list of field names (e.g. "Column") 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. "Column") 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 (*ReportRequestFilters) MarshalJSON

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

                                                                      type ReportRequestOrderBy

                                                                      type ReportRequestOrderBy struct {
                                                                      	// Column: Column to perform the sort on. This can be a DoubleClick
                                                                      	// Search-defined column or a saved column.
                                                                      	Column *ReportApiColumnSpec `json:"column,omitempty"`
                                                                      
                                                                      	// SortOrder: The sort direction, which is either `ascending` or
                                                                      	// `descending`.
                                                                      	SortOrder string `json:"sortOrder,omitempty"`
                                                                      
                                                                      	// ForceSendFields is a list of field names (e.g. "Column") 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. "Column") 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 (*ReportRequestOrderBy) MarshalJSON

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

                                                                      type ReportRequestReportScope

                                                                      type ReportRequestReportScope struct {
                                                                      	// AdGroupId: DS ad group ID.
                                                                      	AdGroupId int64 `json:"adGroupId,omitempty,string"`
                                                                      
                                                                      	// AdId: DS ad ID.
                                                                      	AdId int64 `json:"adId,omitempty,string"`
                                                                      
                                                                      	// AdvertiserId: DS advertiser ID.
                                                                      	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
                                                                      
                                                                      	// AgencyId: DS agency ID.
                                                                      	AgencyId int64 `json:"agencyId,omitempty,string"`
                                                                      
                                                                      	// CampaignId: DS campaign ID.
                                                                      	CampaignId int64 `json:"campaignId,omitempty,string"`
                                                                      
                                                                      	// EngineAccountId: DS engine account ID.
                                                                      	EngineAccountId int64 `json:"engineAccountId,omitempty,string"`
                                                                      
                                                                      	// KeywordId: DS keyword ID.
                                                                      	KeywordId int64 `json:"keywordId,omitempty,string"`
                                                                      
                                                                      	// ForceSendFields is a list of field names (e.g. "AdGroupId") 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. "AdGroupId") 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:"-"`
                                                                      }

                                                                        ReportRequestReportScope: The reportScope is a set of IDs that are used to determine which subset of entities will be returned in the report. The full lineage of IDs from the lowest scoped level desired up through agency is required.

                                                                        func (*ReportRequestReportScope) MarshalJSON

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

                                                                        type ReportRequestTimeRange

                                                                        type ReportRequestTimeRange struct {
                                                                        	// ChangedAttributesSinceTimestamp: Inclusive UTC timestamp in RFC
                                                                        	// format, e.g., `2013-07-16T10:16:23.555Z`. See additional references
                                                                        	// on how changed attribute reports work.
                                                                        	ChangedAttributesSinceTimestamp string `json:"changedAttributesSinceTimestamp,omitempty"`
                                                                        
                                                                        	// ChangedMetricsSinceTimestamp: Inclusive UTC timestamp in RFC format,
                                                                        	// e.g., `2013-07-16T10:16:23.555Z`. See additional references on how
                                                                        	// changed metrics reports work.
                                                                        	ChangedMetricsSinceTimestamp string `json:"changedMetricsSinceTimestamp,omitempty"`
                                                                        
                                                                        	// EndDate: Inclusive date in YYYY-MM-DD format.
                                                                        	EndDate string `json:"endDate,omitempty"`
                                                                        
                                                                        	// StartDate: Inclusive date in YYYY-MM-DD format.
                                                                        	StartDate string `json:"startDate,omitempty"`
                                                                        
                                                                        	// ForceSendFields is a list of field names (e.g.
                                                                        	// "ChangedAttributesSinceTimestamp") 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.
                                                                        	// "ChangedAttributesSinceTimestamp") 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:"-"`
                                                                        }

                                                                          ReportRequestTimeRange: If metrics are requested in a report, this argument will be used to restrict the metrics to a specific time range.

                                                                          func (*ReportRequestTimeRange) MarshalJSON

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

                                                                          type ReportsGenerateCall

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

                                                                          func (*ReportsGenerateCall) Context

                                                                            Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                            func (*ReportsGenerateCall) Do

                                                                              Do executes the "doubleclicksearch.reports.generate" call. Exactly one of *Report or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *Report.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 (*ReportsGenerateCall) Fields

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

                                                                                func (*ReportsGenerateCall) Header

                                                                                func (c *ReportsGenerateCall) Header() http.Header

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

                                                                                  type ReportsGetCall

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

                                                                                  func (*ReportsGetCall) Context

                                                                                  func (c *ReportsGetCall) Context(ctx context.Context) *ReportsGetCall

                                                                                    Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                    func (*ReportsGetCall) Do

                                                                                    func (c *ReportsGetCall) Do(opts ...googleapi.CallOption) (*Report, error)

                                                                                      Do executes the "doubleclicksearch.reports.get" call. Exactly one of *Report or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *Report.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 (*ReportsGetCall) Fields

                                                                                      func (c *ReportsGetCall) Fields(s ...googleapi.Field) *ReportsGetCall

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

                                                                                        func (*ReportsGetCall) Header

                                                                                        func (c *ReportsGetCall) Header() http.Header

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

                                                                                          func (*ReportsGetCall) IfNoneMatch

                                                                                          func (c *ReportsGetCall) IfNoneMatch(entityTag string) *ReportsGetCall

                                                                                            IfNoneMatch sets the optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request. Use googleapi.IsNotModified to check whether the response error from Do is the result of In-None-Match.

                                                                                            type ReportsGetFileCall

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

                                                                                            func (*ReportsGetFileCall) Context

                                                                                              Context sets the context to be used in this call's Do and Download methods. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                              func (*ReportsGetFileCall) Do

                                                                                                Do executes the "doubleclicksearch.reports.getFile" call.

                                                                                                func (*ReportsGetFileCall) Download

                                                                                                func (c *ReportsGetFileCall) Download(opts ...googleapi.CallOption) (*http.Response, error)

                                                                                                  Download fetches the API endpoint's "media" value, instead of the normal API response value. If the returned error is nil, the Response is guaranteed to have a 2xx status code. Callers must close the Response.Body as usual.

                                                                                                  func (*ReportsGetFileCall) Fields

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

                                                                                                    func (*ReportsGetFileCall) Header

                                                                                                    func (c *ReportsGetFileCall) Header() http.Header

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

                                                                                                      func (*ReportsGetFileCall) IfNoneMatch

                                                                                                      func (c *ReportsGetFileCall) IfNoneMatch(entityTag string) *ReportsGetFileCall

                                                                                                        IfNoneMatch sets the optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request. Use googleapi.IsNotModified to check whether the response error from Do is the result of In-None-Match.

                                                                                                        type ReportsRequestCall

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

                                                                                                        func (*ReportsRequestCall) Context

                                                                                                          Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                                          func (*ReportsRequestCall) Do

                                                                                                          func (c *ReportsRequestCall) Do(opts ...googleapi.CallOption) (*Report, error)

                                                                                                            Do executes the "doubleclicksearch.reports.request" call. Exactly one of *Report or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *Report.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 (*ReportsRequestCall) Fields

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

                                                                                                              func (*ReportsRequestCall) Header

                                                                                                              func (c *ReportsRequestCall) Header() http.Header

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

                                                                                                                type ReportsService

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

                                                                                                                func NewReportsService

                                                                                                                func NewReportsService(s *Service) *ReportsService

                                                                                                                func (*ReportsService) Generate

                                                                                                                func (r *ReportsService) Generate(reportrequest *ReportRequest) *ReportsGenerateCall

                                                                                                                  Generate: Generates and returns a report immediately.

                                                                                                                  func (*ReportsService) Get

                                                                                                                  func (r *ReportsService) Get(reportId string) *ReportsGetCall

                                                                                                                    Get: Polls for the status of a report request.

                                                                                                                    func (*ReportsService) GetFile

                                                                                                                    func (r *ReportsService) GetFile(reportId string, reportFragment int64) *ReportsGetFileCall

                                                                                                                      GetFile: Downloads a report file encoded in UTF-8.

                                                                                                                      func (*ReportsService) Request

                                                                                                                      func (r *ReportsService) Request(reportrequest *ReportRequest) *ReportsRequestCall

                                                                                                                        Request: Inserts a report request into the reporting system.

                                                                                                                        type SavedColumn

                                                                                                                        type SavedColumn struct {
                                                                                                                        	// Kind: Identifies this as a SavedColumn resource. Value: the fixed
                                                                                                                        	// string doubleclicksearch#savedColumn.
                                                                                                                        	Kind string `json:"kind,omitempty"`
                                                                                                                        
                                                                                                                        	// SavedColumnName: The name of the saved column.
                                                                                                                        	SavedColumnName string `json:"savedColumnName,omitempty"`
                                                                                                                        
                                                                                                                        	// Type: The type of data this saved column will produce.
                                                                                                                        	Type string `json:"type,omitempty"`
                                                                                                                        
                                                                                                                        	// 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:"-"`
                                                                                                                        }

                                                                                                                          SavedColumn: A saved column

                                                                                                                          func (*SavedColumn) MarshalJSON

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

                                                                                                                          type SavedColumnList

                                                                                                                          type SavedColumnList struct {
                                                                                                                          	// Items: The saved columns being requested.
                                                                                                                          	Items []*SavedColumn `json:"items,omitempty"`
                                                                                                                          
                                                                                                                          	// Kind: Identifies this as a SavedColumnList resource. Value: the fixed
                                                                                                                          	// string doubleclicksearch#savedColumnList.
                                                                                                                          	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:"-"`
                                                                                                                          }

                                                                                                                            SavedColumnList: A list of saved columns. Advertisers create saved columns to report on Floodlight activities, Google Analytics goals, or custom KPIs. To request reports with saved columns, you'll need the saved column names that are available from this list.

                                                                                                                            func (*SavedColumnList) MarshalJSON

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

                                                                                                                            type SavedColumnsListCall

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

                                                                                                                            func (*SavedColumnsListCall) Context

                                                                                                                              Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                                                              func (*SavedColumnsListCall) Do

                                                                                                                                Do executes the "doubleclicksearch.savedColumns.list" call. Exactly one of *SavedColumnList or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *SavedColumnList.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 (*SavedColumnsListCall) Fields

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

                                                                                                                                  func (*SavedColumnsListCall) Header

                                                                                                                                  func (c *SavedColumnsListCall) Header() http.Header

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

                                                                                                                                    func (*SavedColumnsListCall) IfNoneMatch

                                                                                                                                    func (c *SavedColumnsListCall) IfNoneMatch(entityTag string) *SavedColumnsListCall

                                                                                                                                      IfNoneMatch sets the optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request. Use googleapi.IsNotModified to check whether the response error from Do is the result of In-None-Match.

                                                                                                                                      type SavedColumnsService

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

                                                                                                                                      func NewSavedColumnsService

                                                                                                                                      func NewSavedColumnsService(s *Service) *SavedColumnsService

                                                                                                                                      func (*SavedColumnsService) List

                                                                                                                                      func (r *SavedColumnsService) List(agencyId int64, advertiserId int64) *SavedColumnsListCall

                                                                                                                                        List: Retrieve the list of saved columns for a specified advertiser.

                                                                                                                                        type Service

                                                                                                                                        type Service struct {
                                                                                                                                        	BasePath  string // API endpoint base URL
                                                                                                                                        	UserAgent string // optional additional User-Agent fragment
                                                                                                                                        
                                                                                                                                        	Conversion *ConversionService
                                                                                                                                        
                                                                                                                                        	Reports *ReportsService
                                                                                                                                        
                                                                                                                                        	SavedColumns *SavedColumnsService
                                                                                                                                        	// contains filtered or unexported fields
                                                                                                                                        }

                                                                                                                                        func New

                                                                                                                                        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.

                                                                                                                                            type UpdateAvailabilityRequest

                                                                                                                                            type UpdateAvailabilityRequest struct {
                                                                                                                                            	// Availabilities: The availabilities being requested.
                                                                                                                                            	Availabilities []*Availability `json:"availabilities,omitempty"`
                                                                                                                                            
                                                                                                                                            	// ForceSendFields is a list of field names (e.g. "Availabilities") 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. "Availabilities") 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:"-"`
                                                                                                                                            }

                                                                                                                                              UpdateAvailabilityRequest: The request to update availability.

                                                                                                                                              func (*UpdateAvailabilityRequest) MarshalJSON

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

                                                                                                                                              type UpdateAvailabilityResponse

                                                                                                                                              type UpdateAvailabilityResponse struct {
                                                                                                                                              	// Availabilities: The availabilities being returned.
                                                                                                                                              	Availabilities []*Availability `json:"availabilities,omitempty"`
                                                                                                                                              
                                                                                                                                              	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                              	// server.
                                                                                                                                              	googleapi.ServerResponse `json:"-"`
                                                                                                                                              
                                                                                                                                              	// ForceSendFields is a list of field names (e.g. "Availabilities") 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. "Availabilities") 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:"-"`
                                                                                                                                              }

                                                                                                                                                UpdateAvailabilityResponse: The response to a update availability request.

                                                                                                                                                func (*UpdateAvailabilityResponse) MarshalJSON

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