lineitemtemplate

package
v0.0.1-alpha Latest Latest
Warning

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

Go to latest
Published: Dec 17, 2023 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AnyType

type AnyType struct {
	InnerXML string `xml:",innerxml"`
}

type AnyURI

type AnyURI string

type ApiError

type ApiError struct {

	//
	// The OGNL field path to identify cause of error.
	//
	FieldPath string `xml:"fieldPath,omitempty" json:"fieldPath,omitempty"`

	//
	// A parsed copy of the field path. For example, the field path "operations[1].operand"
	// corresponds to this list: {FieldPathElement(field = "operations", index = 1),
	// FieldPathElement(field = "operand", index = null)}.
	//
	FieldPathElements []*FieldPathElement `xml:"fieldPathElements,omitempty" json:"fieldPathElements,omitempty"`

	//
	// The data that caused the error.
	//
	Trigger string `xml:"trigger,omitempty" json:"trigger,omitempty"`

	//
	// A simple string representation of the error and reason.
	//
	ErrorString string `xml:"errorString,omitempty" json:"errorString,omitempty"`
}

type ApiException

type ApiException struct {
	XMLName xml.Name `xml:"https://www.google.com/apis/ads/publisher/v202311 ApiExceptionFault"`

	*ApplicationException

	//
	// List of errors.
	//
	Errors []*ApiError `xml:"errors,omitempty" json:"errors,omitempty"`
}

type ApiExceptionFault

type ApiExceptionFault ApiException

type ApiVersionError

type ApiVersionError struct {
	*ApiError

	Reason *ApiVersionError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type ApiVersionError_Reason

type ApiVersionError_Reason string
const (

	//
	// Indicates that the operation is not allowed in the version the request
	// was made in.
	//
	ApiVersionError_ReasonUPDATE_TO_NEWER_VERSION ApiVersionError_Reason = "UPDATE_TO_NEWER_VERSION"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	ApiVersionError_ReasonUNKNOWN ApiVersionError_Reason = "UNKNOWN"
)

type ApplicationException

type ApplicationException struct {

	//
	// Error message.
	//
	Message string `xml:"message,omitempty" json:"message,omitempty"`
}

type AssetError

type AssetError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *AssetError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type AssetError_Reason

type AssetError_Reason string
const (

	//
	// An asset name must be unique across advertiser.
	//
	AssetError_ReasonNON_UNIQUE_NAME AssetError_Reason = "NON_UNIQUE_NAME"

	//
	// The file name is too long.
	//
	AssetError_ReasonFILE_NAME_TOO_LONG AssetError_Reason = "FILE_NAME_TOO_LONG"

	//
	// The file size is too large.
	//
	AssetError_ReasonFILE_SIZE_TOO_LARGE AssetError_Reason = "FILE_SIZE_TOO_LARGE"

	//
	// Required client code is not present in the code snippet.
	//
	AssetError_ReasonMISSING_REQUIRED_DYNAMIC_ALLOCATION_CLIENT AssetError_Reason = "MISSING_REQUIRED_DYNAMIC_ALLOCATION_CLIENT"

	//
	// Required height is not present in the code snippet.
	//
	AssetError_ReasonMISSING_REQUIRED_DYNAMIC_ALLOCATION_HEIGHT AssetError_Reason = "MISSING_REQUIRED_DYNAMIC_ALLOCATION_HEIGHT"

	//
	// Required width is not present in the code snippet.
	//
	AssetError_ReasonMISSING_REQUIRED_DYNAMIC_ALLOCATION_WIDTH AssetError_Reason = "MISSING_REQUIRED_DYNAMIC_ALLOCATION_WIDTH"

	//
	// Required format is not present in the mobile code snippet.
	//
	AssetError_ReasonMISSING_REQUIRED_DYNAMIC_ALLOCATION_FORMAT AssetError_Reason = "MISSING_REQUIRED_DYNAMIC_ALLOCATION_FORMAT"

	//
	// The parameter value in the code snippet is invalid.
	//
	AssetError_ReasonINVALID_CODE_SNIPPET_PARAMETER_VALUE AssetError_Reason = "INVALID_CODE_SNIPPET_PARAMETER_VALUE"

	//
	// Invalid asset Id.
	//
	AssetError_ReasonINVALID_ASSET_ID AssetError_Reason = "INVALID_ASSET_ID"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	AssetError_ReasonUNKNOWN AssetError_Reason = "UNKNOWN"
)

type AudienceExtensionError

type AudienceExtensionError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *AudienceExtensionError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type AudienceExtensionError_Reason

type AudienceExtensionError_Reason string
const (

	//
	// Frequency caps are not supported by audience extension line items
	//
	AudienceExtensionError_ReasonFREQUENCY_CAPS_NOT_SUPPORTED AudienceExtensionError_Reason = "FREQUENCY_CAPS_NOT_SUPPORTED"

	//
	// Audience extension line items can only target geography
	//
	AudienceExtensionError_ReasonINVALID_TARGETING AudienceExtensionError_Reason = "INVALID_TARGETING"

	//
	// Audience extension line items can only target audience extension inventory units
	//
	AudienceExtensionError_ReasonINVENTORY_UNIT_TARGETING_INVALID AudienceExtensionError_Reason = "INVENTORY_UNIT_TARGETING_INVALID"

	//
	// Audience extension line items do not support {@link CreativeRotationType#SEQUENTIAL}.
	//
	AudienceExtensionError_ReasonINVALID_CREATIVE_ROTATION AudienceExtensionError_Reason = "INVALID_CREATIVE_ROTATION"

	//
	// The given ID of the external entity is not valid
	//
	AudienceExtensionError_ReasonINVALID_EXTERNAL_ENTITY_ID AudienceExtensionError_Reason = "INVALID_EXTERNAL_ENTITY_ID"

	//
	// Audience extension line items only support {@link LineItemType#STANDARD}.
	//
	AudienceExtensionError_ReasonINVALID_LINE_ITEM_TYPE AudienceExtensionError_Reason = "INVALID_LINE_ITEM_TYPE"

	//
	// Audience extension max bid is invalid when it is greater then the max budget.
	//
	AudienceExtensionError_ReasonINVALID_MAX_BID AudienceExtensionError_Reason = "INVALID_MAX_BID"

	//
	// Bulk update for audience extension line items is not allowed.
	//
	AudienceExtensionError_ReasonAUDIENCE_EXTENSION_BULK_UPDATE_NOT_ALLOWED AudienceExtensionError_Reason = "AUDIENCE_EXTENSION_BULK_UPDATE_NOT_ALLOWED"

	//
	// An unexpected error occurred.
	//
	AudienceExtensionError_ReasonUNEXPECTED_AUDIENCE_EXTENSION_ERROR AudienceExtensionError_Reason = "UNEXPECTED_AUDIENCE_EXTENSION_ERROR"

	//
	// The value entered for the maximum daily budget on an audience extension line item exceeds
	// the maximum allowed.
	//
	AudienceExtensionError_ReasonMAX_DAILY_BUDGET_AMOUNT_EXCEEDED AudienceExtensionError_Reason = "MAX_DAILY_BUDGET_AMOUNT_EXCEEDED"

	//
	// Creating a campaign for a line item that already has an associated campaign is not allowed.
	//
	AudienceExtensionError_ReasonEXTERNAL_CAMPAIGN_ALREADY_EXISTS AudienceExtensionError_Reason = "EXTERNAL_CAMPAIGN_ALREADY_EXISTS"

	//
	// Audience extension was specified on a line item but the feature was not
	// enabled.
	//
	AudienceExtensionError_ReasonAUDIENCE_EXTENSION_WITHOUT_FEATURE AudienceExtensionError_Reason = "AUDIENCE_EXTENSION_WITHOUT_FEATURE"

	//
	// Audience extension was specified on a line item but no audience extension account has
	// been linked.
	//
	AudienceExtensionError_ReasonAUDIENCE_EXTENSION_WITHOUT_LINKED_ACCOUNT AudienceExtensionError_Reason = "AUDIENCE_EXTENSION_WITHOUT_LINKED_ACCOUNT"

	//
	// Assocation creative size overrides are not allowed with audience extension.
	//
	AudienceExtensionError_ReasonCANNOT_OVERRIDE_CREATIVE_SIZE_WITH_AUDIENCE_EXTENSION AudienceExtensionError_Reason = "CANNOT_OVERRIDE_CREATIVE_SIZE_WITH_AUDIENCE_EXTENSION"

	//
	// Some association overrides are not allowed with audience extension.
	//
	AudienceExtensionError_ReasonCANNOT_OVERRIDE_FIELD_WITH_AUDIENCE_EXTENSION AudienceExtensionError_Reason = "CANNOT_OVERRIDE_FIELD_WITH_AUDIENCE_EXTENSION"

	//
	// Only one creative placeholder is allowed for an audience extension line item.
	//
	AudienceExtensionError_ReasonONLY_ONE_CREATIVE_PLACEHOLDER_ALLOWED AudienceExtensionError_Reason = "ONLY_ONE_CREATIVE_PLACEHOLDER_ALLOWED"

	//
	// Only one audience extension line item can be associated with a given order.
	//
	AudienceExtensionError_ReasonMULTIPLE_AUDIENCE_EXTENSION_LINE_ITEMS_ON_ORDER AudienceExtensionError_Reason = "MULTIPLE_AUDIENCE_EXTENSION_LINE_ITEMS_ON_ORDER"

	//
	// Audience extension line items must be copied separately from their associated creatives.
	//
	AudienceExtensionError_ReasonCANNOT_COPY_AUDIENCE_EXTENSION_LINE_ITEMS_AND_CREATIVES_TOGETHER AudienceExtensionError_Reason = "CANNOT_COPY_AUDIENCE_EXTENSION_LINE_ITEMS_AND_CREATIVES_TOGETHER"

	//
	// Audience extension is no longer supported and cannot be used.
	//
	AudienceExtensionError_ReasonFEATURE_DEPRECATED AudienceExtensionError_Reason = "FEATURE_DEPRECATED"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	AudienceExtensionError_ReasonUNKNOWN AudienceExtensionError_Reason = "UNKNOWN"
)

type AudienceSegmentError

type AudienceSegmentError struct {
	*ApiError

	Reason *AudienceSegmentError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type AudienceSegmentError_Reason

type AudienceSegmentError_Reason string
const (

	//
	// First party audience segment is not supported.
	//
	AudienceSegmentError_ReasonFIRST_PARTY_AUDIENCE_SEGMENT_NOT_SUPPORTED AudienceSegmentError_Reason = "FIRST_PARTY_AUDIENCE_SEGMENT_NOT_SUPPORTED"

	//
	// Only rule-based first-party audience segments can be created.
	//
	AudienceSegmentError_ReasonONLY_RULE_BASED_FIRST_PARTY_AUDIENCE_SEGMENTS_CAN_BE_CREATED AudienceSegmentError_Reason = "ONLY_RULE_BASED_FIRST_PARTY_AUDIENCE_SEGMENTS_CAN_BE_CREATED"

	//
	// Audience segment for the given id is not found.
	//
	AudienceSegmentError_ReasonAUDIENCE_SEGMENT_ID_NOT_FOUND AudienceSegmentError_Reason = "AUDIENCE_SEGMENT_ID_NOT_FOUND"

	//
	// Audience segment rule is invalid.
	//
	AudienceSegmentError_ReasonINVALID_AUDIENCE_SEGMENT_RULE AudienceSegmentError_Reason = "INVALID_AUDIENCE_SEGMENT_RULE"

	//
	// Audience segment rule contains too many ad units and/or custom criteria.
	//
	AudienceSegmentError_ReasonAUDIENCE_SEGMENT_RULE_TOO_LONG AudienceSegmentError_Reason = "AUDIENCE_SEGMENT_RULE_TOO_LONG"

	//
	// Audience segment name is invalid.
	//
	AudienceSegmentError_ReasonINVALID_AUDIENCE_SEGMENT_NAME AudienceSegmentError_Reason = "INVALID_AUDIENCE_SEGMENT_NAME"

	//
	// Audience segment with this name already exists.
	//
	AudienceSegmentError_ReasonDUPLICATE_AUDIENCE_SEGMENT_NAME AudienceSegmentError_Reason = "DUPLICATE_AUDIENCE_SEGMENT_NAME"

	//
	// Audience segment description is invalid.
	//
	AudienceSegmentError_ReasonINVALID_AUDIENCE_SEGMENT_DESCRIPTION AudienceSegmentError_Reason = "INVALID_AUDIENCE_SEGMENT_DESCRIPTION"

	//
	// Audience segment pageviews value is invalid. It must be between 1 and 12.
	//
	AudienceSegmentError_ReasonINVALID_AUDIENCE_SEGMENT_PAGEVIEWS AudienceSegmentError_Reason = "INVALID_AUDIENCE_SEGMENT_PAGEVIEWS"

	//
	// Audience segment recency value is invalid. It must be between 1 and 90 if pageviews > 1.
	//
	AudienceSegmentError_ReasonINVALID_AUDIENCE_SEGMENT_RECENCY AudienceSegmentError_Reason = "INVALID_AUDIENCE_SEGMENT_RECENCY"

	//
	// Audience segment membership expiration value is invalid. It must be between 1 and 180.
	//
	AudienceSegmentError_ReasonINVALID_AUDIENCE_SEGMENT_MEMBERSHIP_EXPIRATION AudienceSegmentError_Reason = "INVALID_AUDIENCE_SEGMENT_MEMBERSHIP_EXPIRATION"

	//
	// The given custom key cannot be part of audience segment rule due to unsupported characters.
	//
	AudienceSegmentError_ReasonINVALID_AUDIENCE_SEGMENT_CUSTOM_KEY_NAME AudienceSegmentError_Reason = "INVALID_AUDIENCE_SEGMENT_CUSTOM_KEY_NAME"

	//
	// The given custom value cannot be part of audience segment rule due to unsupported characters.
	//
	AudienceSegmentError_ReasonINVALID_AUDIENCE_SEGMENT_CUSTOM_VALUE_NAME AudienceSegmentError_Reason = "INVALID_AUDIENCE_SEGMENT_CUSTOM_VALUE_NAME"

	//
	// Broad-match custom value cannot be part of audience segment rule.
	//
	AudienceSegmentError_ReasonINVALID_AUDIENCE_SEGMENT_CUSTOM_VALUE_MATCH_TYPE AudienceSegmentError_Reason = "INVALID_AUDIENCE_SEGMENT_CUSTOM_VALUE_MATCH_TYPE"

	//
	// Audience segment rule cannot contain itself.
	//
	AudienceSegmentError_ReasonINVALID_NESTED_FIRST_PARTY_AUDIENCE_SEGMENT AudienceSegmentError_Reason = "INVALID_NESTED_FIRST_PARTY_AUDIENCE_SEGMENT"

	//
	// Audience segment rule cannot contain shared selling inventory unit.
	//
	AudienceSegmentError_ReasonSHARED_SELLING_PARTNER_ROOT_CANNOT_BE_INCLUDED AudienceSegmentError_Reason = "SHARED_SELLING_PARTNER_ROOT_CANNOT_BE_INCLUDED"

	//
	// Audience segment rule cannot contain a nested third-party segment.
	//
	AudienceSegmentError_ReasonINVALID_NESTED_THIRD_PARTY_AUDIENCE_SEGMENT AudienceSegmentError_Reason = "INVALID_NESTED_THIRD_PARTY_AUDIENCE_SEGMENT"

	//
	// Audience segment rule cannot contain a nested inactive segment.
	//
	AudienceSegmentError_ReasonINACTIVE_NESTED_AUDIENCE_SEGMENT AudienceSegmentError_Reason = "INACTIVE_NESTED_AUDIENCE_SEGMENT"

	//
	// An error occurred when purchasing global licenses.
	//
	AudienceSegmentError_ReasonAUDIENCE_SEGMENT_GLOBAL_LICENSE_ERROR AudienceSegmentError_Reason = "AUDIENCE_SEGMENT_GLOBAL_LICENSE_ERROR"

	//
	// Segment cannot be activated as it violates Google's Platform Policy.
	//
	AudienceSegmentError_ReasonSEGMENT_VIOLATED_POLICY AudienceSegmentError_Reason = "SEGMENT_VIOLATED_POLICY"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	AudienceSegmentError_ReasonUNKNOWN AudienceSegmentError_Reason = "UNKNOWN"
)

type AuthenticationError

type AuthenticationError struct {
	*ApiError

	Reason *AuthenticationError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type AuthenticationError_Reason

type AuthenticationError_Reason string
const (

	//
	// The SOAP message contains a request header with an ambiguous definition of the authentication
	// header fields. This means either the {@code authToken} and {@code oAuthToken} fields were
	// both null or both were specified. Exactly one value should be specified with each request.
	//
	AuthenticationError_ReasonAMBIGUOUS_SOAP_REQUEST_HEADER AuthenticationError_Reason = "AMBIGUOUS_SOAP_REQUEST_HEADER"

	//
	// The login provided is invalid.
	//
	AuthenticationError_ReasonINVALID_EMAIL AuthenticationError_Reason = "INVALID_EMAIL"

	//
	// Tried to authenticate with provided information, but failed.
	//
	AuthenticationError_ReasonAUTHENTICATION_FAILED AuthenticationError_Reason = "AUTHENTICATION_FAILED"

	//
	// The OAuth provided is invalid.
	//
	AuthenticationError_ReasonINVALID_OAUTH_SIGNATURE AuthenticationError_Reason = "INVALID_OAUTH_SIGNATURE"

	//
	// The specified service to use was not recognized.
	//
	AuthenticationError_ReasonINVALID_SERVICE AuthenticationError_Reason = "INVALID_SERVICE"

	//
	// The SOAP message is missing a request header with an {@code authToken} and optional {@code
	// networkCode}.
	//
	AuthenticationError_ReasonMISSING_SOAP_REQUEST_HEADER AuthenticationError_Reason = "MISSING_SOAP_REQUEST_HEADER"

	//
	// The HTTP request is missing a request header with an {@code authToken}
	//
	AuthenticationError_ReasonMISSING_AUTHENTICATION_HTTP_HEADER AuthenticationError_Reason = "MISSING_AUTHENTICATION_HTTP_HEADER"

	//
	// The request is missing an {@code authToken}
	//
	AuthenticationError_ReasonMISSING_AUTHENTICATION AuthenticationError_Reason = "MISSING_AUTHENTICATION"

	//
	// The network does not have API access enabled.
	//
	AuthenticationError_ReasonNETWORK_API_ACCESS_DISABLED AuthenticationError_Reason = "NETWORK_API_ACCESS_DISABLED"

	//
	// The user is not associated with any network.
	//
	AuthenticationError_ReasonNO_NETWORKS_TO_ACCESS AuthenticationError_Reason = "NO_NETWORKS_TO_ACCESS"

	//
	// No network for the given {@code networkCode} was found.
	//
	AuthenticationError_ReasonNETWORK_NOT_FOUND AuthenticationError_Reason = "NETWORK_NOT_FOUND"

	//
	// The user has access to more than one network, but did not provide a {@code networkCode}.
	//
	AuthenticationError_ReasonNETWORK_CODE_REQUIRED AuthenticationError_Reason = "NETWORK_CODE_REQUIRED"

	//
	// An error happened on the server side during connection to authentication service.
	//
	AuthenticationError_ReasonCONNECTION_ERROR AuthenticationError_Reason = "CONNECTION_ERROR"

	//
	// The user tried to create a test network using an account that already is associated with a
	// network.
	//
	AuthenticationError_ReasonGOOGLE_ACCOUNT_ALREADY_ASSOCIATED_WITH_NETWORK AuthenticationError_Reason = "GOOGLE_ACCOUNT_ALREADY_ASSOCIATED_WITH_NETWORK"

	//
	// The account is blocked and under investigation by the collections team. Please contact Google
	// for more information.
	//
	AuthenticationError_ReasonUNDER_INVESTIGATION AuthenticationError_Reason = "UNDER_INVESTIGATION"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	AuthenticationError_ReasonUNKNOWN AuthenticationError_Reason = "UNKNOWN"
)

type BooleanValue

type BooleanValue struct {

	//
	// The boolean value.
	//
	Value bool `xml:"value,omitempty" json:"value,omitempty"`
	// contains filtered or unexported fields
}

type ClickTrackingLineItemError

type ClickTrackingLineItemError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *ClickTrackingLineItemError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type ClickTrackingLineItemError_Reason

type ClickTrackingLineItemError_Reason string
const (

	//
	// The line item type cannot be changed once created.
	//
	ClickTrackingLineItemError_ReasonTYPE_IMMUTABLE ClickTrackingLineItemError_Reason = "TYPE_IMMUTABLE"

	//
	// Click tracking line items can only be targeted at ad unit inventory, all other
	// types are invalid, as well as placements.
	//
	ClickTrackingLineItemError_ReasonINVALID_TARGETING_TYPE ClickTrackingLineItemError_Reason = "INVALID_TARGETING_TYPE"

	//
	// Click tracking line items do not allow us to control creative delivery so
	// are by nature one or more as entered by the third party.
	//
	ClickTrackingLineItemError_ReasonINVALID_ROADBLOCKING_TYPE ClickTrackingLineItemError_Reason = "INVALID_ROADBLOCKING_TYPE"

	//
	// Click tracking line items do not support the
	// {@link CreativeRotationType#OPTIMIZED} creative rotation type.
	//
	ClickTrackingLineItemError_ReasonINVALID_CREATIVEROTATION_TYPE ClickTrackingLineItemError_Reason = "INVALID_CREATIVEROTATION_TYPE"

	//
	// Click tracking line items do not allow us to control line item delivery so
	// we can not control the rate at which they are served.
	//
	ClickTrackingLineItemError_ReasonINVALID_DELIVERY_RATE_TYPE ClickTrackingLineItemError_Reason = "INVALID_DELIVERY_RATE_TYPE"

	//
	// Not all fields are supported by the click tracking line items.
	//
	ClickTrackingLineItemError_ReasonUNSUPPORTED_FIELD ClickTrackingLineItemError_Reason = "UNSUPPORTED_FIELD"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	ClickTrackingLineItemError_ReasonUNKNOWN ClickTrackingLineItemError_Reason = "UNKNOWN"
)

type CollectionSizeError

type CollectionSizeError struct {
	*ApiError

	Reason *CollectionSizeError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type CollectionSizeError_Reason

type CollectionSizeError_Reason string
const (
	CollectionSizeError_ReasonTOO_LARGE CollectionSizeError_Reason = "TOO_LARGE"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	CollectionSizeError_ReasonUNKNOWN CollectionSizeError_Reason = "UNKNOWN"
)

type CommonError

type CommonError struct {
	*ApiError

	Reason *CommonError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type CommonError_Reason

type CommonError_Reason string
const (

	//
	// Indicates that an attempt was made to retrieve an entity that does not
	// exist.
	//
	CommonError_ReasonNOT_FOUND CommonError_Reason = "NOT_FOUND"

	//
	// Indicates that an attempt was made to create an entity that already
	// exists.
	//
	CommonError_ReasonALREADY_EXISTS CommonError_Reason = "ALREADY_EXISTS"

	//
	// Indicates that a value is not applicable for given use case.
	//
	CommonError_ReasonNOT_APPLICABLE CommonError_Reason = "NOT_APPLICABLE"

	//
	// Indicates that two elements in the collection were identical.
	//
	CommonError_ReasonDUPLICATE_OBJECT CommonError_Reason = "DUPLICATE_OBJECT"

	//
	// Indicates that an attempt was made to change an immutable field.
	//
	CommonError_ReasonCANNOT_UPDATE CommonError_Reason = "CANNOT_UPDATE"

	//
	// Indicates that the requested operation is not supported.
	//
	CommonError_ReasonUNSUPPORTED_OPERATION CommonError_Reason = "UNSUPPORTED_OPERATION"

	//
	// Indicates that another request attempted to update the same data in the same network
	// at about the same time. Please wait and try the request again.
	//
	CommonError_ReasonCONCURRENT_MODIFICATION CommonError_Reason = "CONCURRENT_MODIFICATION"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	CommonError_ReasonUNKNOWN CommonError_Reason = "UNKNOWN"
)

type CompanyCreditStatusError

type CompanyCreditStatusError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *CompanyCreditStatusError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type CompanyCreditStatusError_Reason

type CompanyCreditStatusError_Reason string
const (

	//
	// The user's role does not have permission to change
	// {@link Company#creditStatus} from the default value. The default value is
	// {@link Company.CreditStatus#ACTIVE} for the Basic credit status setting
	// and {@link Company.CreditStatus#ON_HOLD} for the Advanced credit status
	// setting.
	//
	CompanyCreditStatusError_ReasonCOMPANY_CREDIT_STATUS_CHANGE_NOT_ALLOWED CompanyCreditStatusError_Reason = "COMPANY_CREDIT_STATUS_CHANGE_NOT_ALLOWED"

	//
	// The network has not been enabled for editing credit status settings for
	// companies.
	//
	CompanyCreditStatusError_ReasonCANNOT_USE_CREDIT_STATUS_SETTING CompanyCreditStatusError_Reason = "CANNOT_USE_CREDIT_STATUS_SETTING"

	//
	// The network has not been enabled for the Advanced credit status
	// settings for companies. {@link Company#creditStatus} must be either
	// {@code ACTIVE} or {@code INACTIVE}.
	//
	CompanyCreditStatusError_ReasonCANNOT_USE_ADVANCED_CREDIT_STATUS_SETTING CompanyCreditStatusError_Reason = "CANNOT_USE_ADVANCED_CREDIT_STATUS_SETTING"

	//
	// An order cannot be created or updated because the
	// {@link Order#advertiserId} or the {@link Order#agencyId} it is associated
	// with has {@link Company#creditStatus} that is not {@code ACTIVE} or
	// {@code ON_HOLD}.
	//
	CompanyCreditStatusError_ReasonUNACCEPTABLE_COMPANY_CREDIT_STATUS_FOR_ORDER CompanyCreditStatusError_Reason = "UNACCEPTABLE_COMPANY_CREDIT_STATUS_FOR_ORDER"

	//
	// A line item cannot be created for the order because the
	// {@link Order#advertiserId} or {Order#agencyId} it is associated with has
	// {@link Company#creditStatus} that is not {@code ACTIVE} or
	// {@code ON_HOLD}.
	//
	CompanyCreditStatusError_ReasonUNACCEPTABLE_COMPANY_CREDIT_STATUS_FOR_LINE_ITEM CompanyCreditStatusError_Reason = "UNACCEPTABLE_COMPANY_CREDIT_STATUS_FOR_LINE_ITEM"

	//
	// The company cannot be blocked because there are more than 200 approved
	// orders of the company. Archive some, so that there are less than 200 of
	// them.
	//
	CompanyCreditStatusError_ReasonCANNOT_BLOCK_COMPANY_TOO_MANY_APPROVED_ORDERS CompanyCreditStatusError_Reason = "CANNOT_BLOCK_COMPANY_TOO_MANY_APPROVED_ORDERS"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	CompanyCreditStatusError_ReasonUNKNOWN CompanyCreditStatusError_Reason = "UNKNOWN"
)

type CreativeError

type CreativeError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *CreativeError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type CreativeError_Reason

type CreativeError_Reason string
const (

	//
	// {@link FlashRedirectCreative#flashUrl} and
	// {@link FlashRedirectCreative#fallbackUrl} are the same. The fallback URL
	// is used when the flash URL does not work and must be different from it.
	//
	CreativeError_ReasonFLASH_AND_FALLBACK_URL_ARE_SAME CreativeError_Reason = "FLASH_AND_FALLBACK_URL_ARE_SAME"

	//
	// The internal redirect URL was invalid. The URL must have the following
	// syntax http://ad.doubleclick.net/ad/sitename/;sz=size.
	//
	CreativeError_ReasonINVALID_INTERNAL_REDIRECT_URL CreativeError_Reason = "INVALID_INTERNAL_REDIRECT_URL"

	//
	// {@link HasDestinationUrlCreative#destinationUrl} is required.
	//
	CreativeError_ReasonDESTINATION_URL_REQUIRED CreativeError_Reason = "DESTINATION_URL_REQUIRED"

	//
	// {@link HasDestinationUrlCreative#destinationUrl} must be empty when its type is
	// {@link DestinationUrlType#NONE}.
	//
	CreativeError_ReasonDESTINATION_URL_NOT_EMPTY CreativeError_Reason = "DESTINATION_URL_NOT_EMPTY"

	//
	// The provided {@link DestinationUrlType} is not supported for the creative type it is
	// being used on.
	//
	CreativeError_ReasonDESTINATION_URL_TYPE_NOT_SUPPORTED CreativeError_Reason = "DESTINATION_URL_TYPE_NOT_SUPPORTED"

	//
	// Cannot create or update legacy DART For Publishers creative.
	//
	CreativeError_ReasonCANNOT_CREATE_OR_UPDATE_LEGACY_DFP_CREATIVE CreativeError_Reason = "CANNOT_CREATE_OR_UPDATE_LEGACY_DFP_CREATIVE"

	//
	// Cannot create or update legacy mobile creative.
	//
	CreativeError_ReasonCANNOT_CREATE_OR_UPDATE_LEGACY_DFP_MOBILE_CREATIVE CreativeError_Reason = "CANNOT_CREATE_OR_UPDATE_LEGACY_DFP_MOBILE_CREATIVE"

	//
	// The user is missing a necessary feature.
	//
	CreativeError_ReasonMISSING_FEATURE CreativeError_Reason = "MISSING_FEATURE"

	//
	// Company type should be one of Advertisers, House Advertisers and
	// Ad Networks.
	//
	CreativeError_ReasonINVALID_COMPANY_TYPE CreativeError_Reason = "INVALID_COMPANY_TYPE"

	//
	// Invalid size for AdSense dynamic allocation creative.
	// Only valid AFC sizes are allowed.
	//
	CreativeError_ReasonINVALID_ADSENSE_CREATIVE_SIZE CreativeError_Reason = "INVALID_ADSENSE_CREATIVE_SIZE"

	//
	// Invalid size for Ad Exchange dynamic allocation creative.
	// Only valid Ad Exchange sizes are allowed.
	//
	CreativeError_ReasonINVALID_AD_EXCHANGE_CREATIVE_SIZE CreativeError_Reason = "INVALID_AD_EXCHANGE_CREATIVE_SIZE"

	//
	// Assets associated with the same creative must be unique.
	//
	CreativeError_ReasonDUPLICATE_ASSET_IN_CREATIVE CreativeError_Reason = "DUPLICATE_ASSET_IN_CREATIVE"

	//
	// A creative asset cannot contain an asset ID and a byte array.
	//
	CreativeError_ReasonCREATIVE_ASSET_CANNOT_HAVE_ID_AND_BYTE_ARRAY CreativeError_Reason = "CREATIVE_ASSET_CANNOT_HAVE_ID_AND_BYTE_ARRAY"

	//
	// Cannot create or update unsupported creative.
	//
	CreativeError_ReasonCANNOT_CREATE_OR_UPDATE_UNSUPPORTED_CREATIVE CreativeError_Reason = "CANNOT_CREATE_OR_UPDATE_UNSUPPORTED_CREATIVE"

	//
	// Cannot create programmatic creatives.
	//
	CreativeError_ReasonCANNOT_CREATE_PROGRAMMATIC_CREATIVES CreativeError_Reason = "CANNOT_CREATE_PROGRAMMATIC_CREATIVES"

	//
	// A creative must have valid size to use the third-party impression tracker.
	//
	CreativeError_ReasonINVALID_SIZE_FOR_THIRD_PARTY_IMPRESSION_TRACKER CreativeError_Reason = "INVALID_SIZE_FOR_THIRD_PARTY_IMPRESSION_TRACKER"

	//
	// Ineligible creatives can not be deactivated.
	//
	CreativeError_ReasonCANNOT_DEACTIVATE_CREATIVES_IN_CREATIVE_SETS CreativeError_Reason = "CANNOT_DEACTIVATE_CREATIVES_IN_CREATIVE_SETS"

	//
	// Ad Manager hosted video creatives must contain a video asset.
	//
	CreativeError_ReasonHOSTED_VIDEO_CREATIVE_REQUIRES_VIDEO_ASSET CreativeError_Reason = "HOSTED_VIDEO_CREATIVE_REQUIRES_VIDEO_ASSET"

	//
	// {@link ImageCreative#thirdPartyImpressionTrackingUrls} should not contain more than one url.
	//
	CreativeError_ReasonCANNOT_SET_MULTIPLE_IMPRESSION_TRACKING_URLS CreativeError_Reason = "CANNOT_SET_MULTIPLE_IMPRESSION_TRACKING_URLS"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	CreativeError_ReasonUNKNOWN CreativeError_Reason = "UNKNOWN"
)

type CreativeRotationType

type CreativeRotationType string
const (

	//
	// Creatives are displayed roughly the same number of times over
	// the duration of the line item.
	//
	CreativeRotationTypeEVEN CreativeRotationType = "EVEN"

	//
	// Creatives are served roughly proportionally to their performance.
	//
	CreativeRotationTypeOPTIMIZED CreativeRotationType = "OPTIMIZED"

	//
	// Creatives are served roughly proportionally to their weights, set on the
	// {@link LineItemCreativeAssociation}.
	//
	CreativeRotationTypeMANUAL CreativeRotationType = "MANUAL"

	//
	// Creatives are served exactly in sequential order, aka Storyboarding.
	// Set on the {@link LineItemCreativeAssociation}.
	//
	CreativeRotationTypeSEQUENTIAL CreativeRotationType = "SEQUENTIAL"
)

type CrossSellError

type CrossSellError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *CrossSellError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type CrossSellError_Reason

type CrossSellError_Reason string
const (

	//
	// A company for cross-sell partner must be of type {@link Company.Type#PARTNER}.
	//
	CrossSellError_ReasonCOMPANY_IS_NOT_DISTRIBUTION_PARTNER CrossSellError_Reason = "COMPANY_IS_NOT_DISTRIBUTION_PARTNER"

	//
	// The network code of a cross-sell partner cannot be changed.
	//
	CrossSellError_ReasonCHANGING_PARTNER_NETWORK_IS_NOT_SUPPORTED CrossSellError_Reason = "CHANGING_PARTNER_NETWORK_IS_NOT_SUPPORTED"

	//
	// A cross-sell partner must have a partner name.
	//
	CrossSellError_ReasonMISSING_DISTRIBUTOR_PARTNER_NAME CrossSellError_Reason = "MISSING_DISTRIBUTOR_PARTNER_NAME"

	//
	// The cross-sell distributor publisher feature must be enabled.
	//
	CrossSellError_ReasonDISTRIBUTOR_NETWORK_MISSING_PUBLISHER_FEATURE CrossSellError_Reason = "DISTRIBUTOR_NETWORK_MISSING_PUBLISHER_FEATURE"

	//
	// The cross-sell publisher features must be enabled on the partner's network.
	//
	CrossSellError_ReasonCONTENT_PROVIDER_NETWORK_MISSING_PUBLISHER_FEATURE CrossSellError_Reason = "CONTENT_PROVIDER_NETWORK_MISSING_PUBLISHER_FEATURE"

	//
	// The cross-sell partner name conflicts with an ad unit name on the partner's network.
	//
	CrossSellError_ReasonINVALID_DISTRIBUTOR_PARTNER_NAME CrossSellError_Reason = "INVALID_DISTRIBUTOR_PARTNER_NAME"

	//
	// The network code of a cross-sell partner is invalid.
	//
	CrossSellError_ReasonINVALID_CONTENT_PROVIDER_NETWORK CrossSellError_Reason = "INVALID_CONTENT_PROVIDER_NETWORK"

	//
	// The content provider network must be different than the distributor network.
	//
	CrossSellError_ReasonCONTENT_PROVIDER_NETWORK_CANNOT_BE_ACTIVE_NETWORK CrossSellError_Reason = "CONTENT_PROVIDER_NETWORK_CANNOT_BE_ACTIVE_NETWORK"

	//
	// The same network code was already enabled for cross-sell in a different company.
	//
	CrossSellError_ReasonCONTENT_PROVIDER_NETWORK_ALREADY_ENABLED_FOR_CROSS_SELLING CrossSellError_Reason = "CONTENT_PROVIDER_NETWORK_ALREADY_ENABLED_FOR_CROSS_SELLING"

	//
	// A rule defined by the cross selling distributor has been violated by a line item targeting
	// a shared ad unit. Violating this rule is an error.
	//
	CrossSellError_ReasonDISTRIBUTOR_RULE_VIOLATION_ERROR CrossSellError_Reason = "DISTRIBUTOR_RULE_VIOLATION_ERROR"

	//
	// A rule defined by the cross selling distributor has been violated by a line item targeting
	// a shared ad unit. Violating this rule is a warning.
	//
	// <p>By setting {@link LineItem#skipCrossSellingRuleWarningChecks}, the content partner can
	// suppress the warning (and create or save the line item).
	//
	// <p>This flag is available beginning in V201411.
	//
	CrossSellError_ReasonDISTRIBUTOR_RULE_VIOLATION_WARNING CrossSellError_Reason = "DISTRIBUTOR_RULE_VIOLATION_WARNING"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	CrossSellError_ReasonUNKNOWN CrossSellError_Reason = "UNKNOWN"
)

type CurrencyCodeError

type CurrencyCodeError struct {
	*ApiError

	Reason *CurrencyCodeError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type CurrencyCodeError_Reason

type CurrencyCodeError_Reason string
const (

	//
	// The currency code is invalid and does not follow ISO 4217.
	//
	CurrencyCodeError_ReasonINVALID CurrencyCodeError_Reason = "INVALID"

	//
	// The currency code is valid, but is not supported.
	//
	CurrencyCodeError_ReasonUNSUPPORTED CurrencyCodeError_Reason = "UNSUPPORTED"

	//
	// The currency has been used for entity creation after its deprecation
	//
	CurrencyCodeError_ReasonDEPRECATED_CURRENCY_USED CurrencyCodeError_Reason = "DEPRECATED_CURRENCY_USED"
)

type CustomFieldValueError

type CustomFieldValueError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *CustomFieldValueError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type CustomFieldValueError_Reason

type CustomFieldValueError_Reason string
const (

	//
	// An attempt was made to modify or create a {@link CustomFieldValue} for
	// a {@link CustomField} that does not exist.
	//
	CustomFieldValueError_ReasonCUSTOM_FIELD_NOT_FOUND CustomFieldValueError_Reason = "CUSTOM_FIELD_NOT_FOUND"

	//
	// An attempt was made to create a new value for a custom field
	// that is inactive.
	//
	CustomFieldValueError_ReasonCUSTOM_FIELD_INACTIVE CustomFieldValueError_Reason = "CUSTOM_FIELD_INACTIVE"

	//
	// An attempt was made to modify or create a {@link CustomFieldValue} corresponding
	// to a {@link CustomFieldOption} that could not be found.
	//
	CustomFieldValueError_ReasonCUSTOM_FIELD_OPTION_NOT_FOUND CustomFieldValueError_Reason = "CUSTOM_FIELD_OPTION_NOT_FOUND"

	//
	// An attempt was made to modify or create a {@link CustomFieldValue} with an
	// association to an entity of the wrong type for its field.
	//
	CustomFieldValueError_ReasonINVALID_ENTITY_TYPE CustomFieldValueError_Reason = "INVALID_ENTITY_TYPE"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	CustomFieldValueError_ReasonUNKNOWN CustomFieldValueError_Reason = "UNKNOWN"
)

type CustomTargetingError

type CustomTargetingError struct {
	*ApiError

	Reason *CustomTargetingError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type CustomTargetingError_Reason

type CustomTargetingError_Reason string
const (

	//
	// Requested {@link CustomTargetingKey} is not found.
	//
	CustomTargetingError_ReasonKEY_NOT_FOUND CustomTargetingError_Reason = "KEY_NOT_FOUND"

	//
	// Number of {@link CustomTargetingKey} objects created exceeds the limit
	// allowed for the network.
	//
	CustomTargetingError_ReasonKEY_COUNT_TOO_LARGE CustomTargetingError_Reason = "KEY_COUNT_TOO_LARGE"

	//
	// {@link CustomTargetingKey} with the same {@link CustomTargetingKey#name}
	// already exists.
	//
	CustomTargetingError_ReasonKEY_NAME_DUPLICATE CustomTargetingError_Reason = "KEY_NAME_DUPLICATE"

	//
	// {@link CustomTargetingKey#name} is empty.
	//
	CustomTargetingError_ReasonKEY_NAME_EMPTY CustomTargetingError_Reason = "KEY_NAME_EMPTY"

	//
	// {@link CustomTargetingKey#name} is too long.
	//
	CustomTargetingError_ReasonKEY_NAME_INVALID_LENGTH CustomTargetingError_Reason = "KEY_NAME_INVALID_LENGTH"

	//
	// {@link CustomTargetingKey#name} contains unsupported or reserved
	// characters.
	//
	CustomTargetingError_ReasonKEY_NAME_INVALID_CHARS CustomTargetingError_Reason = "KEY_NAME_INVALID_CHARS"

	//
	// {@link CustomTargetingKey#name} matches one of the reserved custom
	// targeting key names.
	//
	CustomTargetingError_ReasonKEY_NAME_RESERVED CustomTargetingError_Reason = "KEY_NAME_RESERVED"

	//
	// {@link CustomTargetingKey#displayName} is too long.
	//
	CustomTargetingError_ReasonKEY_DISPLAY_NAME_INVALID_LENGTH CustomTargetingError_Reason = "KEY_DISPLAY_NAME_INVALID_LENGTH"

	//
	// Key is not active.
	//
	CustomTargetingError_ReasonKEY_STATUS_NOT_ACTIVE CustomTargetingError_Reason = "KEY_STATUS_NOT_ACTIVE"

	//
	// Requested {@link CustomTargetingValue} is not found.
	//
	CustomTargetingError_ReasonVALUE_NOT_FOUND CustomTargetingError_Reason = "VALUE_NOT_FOUND"

	//
	// The {@code WHERE} clause in the {@link Statement#query} must always
	// contain {@link CustomTargetingValue#customTargetingKeyId} as one of its
	// columns in a way that it is AND'ed with the rest of the query.
	//
	CustomTargetingError_ReasonGET_VALUES_BY_STATEMENT_MUST_CONTAIN_KEY_ID CustomTargetingError_Reason = "GET_VALUES_BY_STATEMENT_MUST_CONTAIN_KEY_ID"

	//
	// The number of {@link CustomTargetingValue} objects associated with a
	// {@link CustomTargetingKey} exceeds the network limit. This is only
	// applicable for keys of type {@code CustomTargetingKey.Type#PREDEFINED}.
	//
	CustomTargetingError_ReasonVALUE_COUNT_FOR_KEY_TOO_LARGE CustomTargetingError_Reason = "VALUE_COUNT_FOR_KEY_TOO_LARGE"

	//
	// {@link CustomTargetingValue} with the same
	// {@link CustomTargetingValue#name} already exists.
	//
	CustomTargetingError_ReasonVALUE_NAME_DUPLICATE CustomTargetingError_Reason = "VALUE_NAME_DUPLICATE"

	//
	// {@link CustomTargetingValue#name} is empty.
	//
	CustomTargetingError_ReasonVALUE_NAME_EMPTY CustomTargetingError_Reason = "VALUE_NAME_EMPTY"

	//
	// {@link CustomTargetingValue#name} is too long.
	//
	CustomTargetingError_ReasonVALUE_NAME_INVALID_LENGTH CustomTargetingError_Reason = "VALUE_NAME_INVALID_LENGTH"

	//
	// {@link CustomTargetingValue#name} contains unsupported or reserved
	// characters.
	//
	CustomTargetingError_ReasonVALUE_NAME_INVALID_CHARS CustomTargetingError_Reason = "VALUE_NAME_INVALID_CHARS"

	//
	// {@link CustomTargetingValue#displayName} is too long.
	//
	CustomTargetingError_ReasonVALUE_DISPLAY_NAME_INVALID_LENGTH CustomTargetingError_Reason = "VALUE_DISPLAY_NAME_INVALID_LENGTH"

	//
	// Only Ad Manager 360 networks can have {@link CustomTargetingValue#matchType}
	// other than {@link CustomTargetingValue.MatchType#EXACT}.
	//
	CustomTargetingError_ReasonVALUE_MATCH_TYPE_NOT_ALLOWED CustomTargetingError_Reason = "VALUE_MATCH_TYPE_NOT_ALLOWED"

	//
	// You can only create {@link CustomTargetingValue} objects with match type
	// {@link CustomTargetingValue.MatchType#EXACT} when associating
	// with {@link CustomTargetingKey} objects of type
	// {@link CustomTargetingKey.Type#PREDEFINED}
	//
	CustomTargetingError_ReasonVALUE_MATCH_TYPE_NOT_EXACT_FOR_PREDEFINED_KEY CustomTargetingError_Reason = "VALUE_MATCH_TYPE_NOT_EXACT_FOR_PREDEFINED_KEY"

	//
	// {@link CustomTargetingValue} object cannot have match type of
	// {@link CustomTargetingValue.MatchType#SUFFIX} when adding a
	// {@link CustomTargetingValue} to a line item.
	//
	CustomTargetingError_ReasonSUFFIX_MATCH_TYPE_NOT_ALLOWED CustomTargetingError_Reason = "SUFFIX_MATCH_TYPE_NOT_ALLOWED"

	//
	// {@link CustomTargetingValue} object cannot have match type of
	// {@link CustomTargetingValue.MatchType#CONTAINS} when adding a
	// {@link CustomTargetingValue} to targeting expression of a line item.
	//
	CustomTargetingError_ReasonCONTAINS_MATCH_TYPE_NOT_ALLOWED CustomTargetingError_Reason = "CONTAINS_MATCH_TYPE_NOT_ALLOWED"

	//
	// Value is not active.
	//
	CustomTargetingError_ReasonVALUE_STATUS_NOT_ACTIVE CustomTargetingError_Reason = "VALUE_STATUS_NOT_ACTIVE"

	//
	// The {@link CustomTargetingKey} does not have any
	// {@link CustomTargetingValue} associated with it.
	//
	CustomTargetingError_ReasonKEY_WITH_MISSING_VALUES CustomTargetingError_Reason = "KEY_WITH_MISSING_VALUES"

	//
	// The {@link CustomTargetingKey} has a {@link CustomTargetingValue} specified for which the
	// value is not a valid child.
	//
	CustomTargetingError_ReasonINVALID_VALUE_FOR_KEY CustomTargetingError_Reason = "INVALID_VALUE_FOR_KEY"

	//
	// {@link CustomCriteriaSet.LogicalOperator#OR} operation cannot be applied
	// to values with different keys.
	//
	CustomTargetingError_ReasonCANNOT_OR_DIFFERENT_KEYS CustomTargetingError_Reason = "CANNOT_OR_DIFFERENT_KEYS"

	//
	// Targeting expression is invalid. This can happen if the sequence of
	// operators is wrong, or a node contains invalid number of children.
	//
	CustomTargetingError_ReasonINVALID_TARGETING_EXPRESSION CustomTargetingError_Reason = "INVALID_TARGETING_EXPRESSION"

	//
	// The key has been deleted. {@link CustomCriteria} cannot have deleted
	// keys.
	//
	CustomTargetingError_ReasonDELETED_KEY_CANNOT_BE_USED_FOR_TARGETING CustomTargetingError_Reason = "DELETED_KEY_CANNOT_BE_USED_FOR_TARGETING"

	//
	// The value has been deleted. {@link CustomCriteria} cannot have deleted
	// values.
	//
	CustomTargetingError_ReasonDELETED_VALUE_CANNOT_BE_USED_FOR_TARGETING CustomTargetingError_Reason = "DELETED_VALUE_CANNOT_BE_USED_FOR_TARGETING"

	//
	// The key is set as the video browse-by key, which cannot be used for
	// custom targeting.
	//
	CustomTargetingError_ReasonVIDEO_BROWSE_BY_KEY_CANNOT_BE_USED_FOR_CUSTOM_TARGETING CustomTargetingError_Reason = "VIDEO_BROWSE_BY_KEY_CANNOT_BE_USED_FOR_CUSTOM_TARGETING"

	//
	// Only active custom-criteria keys are supported in content metadata mapping.
	//
	CustomTargetingError_ReasonCANNOT_DELETE_CUSTOM_KEY_USED_IN_CONTENT_METADATA_MAPPING CustomTargetingError_Reason = "CANNOT_DELETE_CUSTOM_KEY_USED_IN_CONTENT_METADATA_MAPPING"

	//
	// Only active custom-criteria values are supported in content metadata mapping.
	//
	CustomTargetingError_ReasonCANNOT_DELETE_CUSTOM_VALUE_USED_IN_CONTENT_METADATA_MAPPING CustomTargetingError_Reason = "CANNOT_DELETE_CUSTOM_VALUE_USED_IN_CONTENT_METADATA_MAPPING"

	//
	// Cannot delete a custom criteria key that is targeted by an active partner assignment.
	//
	CustomTargetingError_ReasonCANNOT_DELETE_CUSTOM_KEY_USED_IN_PARTNER_ASSIGNMENT_TARGETING CustomTargetingError_Reason = "CANNOT_DELETE_CUSTOM_KEY_USED_IN_PARTNER_ASSIGNMENT_TARGETING"

	//
	// Cannot delete a custom criteria value that is targeted by an active partner assignment.
	//
	CustomTargetingError_ReasonCANNOT_DELETE_CUSTOM_VALUE_USED_IN_PARTNER_ASSIGNMENT_TARGETING CustomTargetingError_Reason = "CANNOT_DELETE_CUSTOM_VALUE_USED_IN_PARTNER_ASSIGNMENT_TARGETING"

	//
	// {@link AudienceSegment} object cannot be targeted.
	//
	CustomTargetingError_ReasonCANNOT_TARGET_AUDIENCE_SEGMENT CustomTargetingError_Reason = "CANNOT_TARGET_AUDIENCE_SEGMENT"

	//
	// Third party {@link AudienceSegment} cannot be targeted.
	//
	CustomTargetingError_ReasonCANNOT_TARGET_THIRD_PARTY_AUDIENCE_SEGMENT CustomTargetingError_Reason = "CANNOT_TARGET_THIRD_PARTY_AUDIENCE_SEGMENT"

	//
	// Inactive {@link AudienceSegment} object cannot be targeted.
	//
	CustomTargetingError_ReasonCANNOT_TARGET_INACTIVE_AUDIENCE_SEGMENT CustomTargetingError_Reason = "CANNOT_TARGET_INACTIVE_AUDIENCE_SEGMENT"

	//
	// Targeted {@link AudienceSegment} object is not valid.
	//
	CustomTargetingError_ReasonINVALID_AUDIENCE_SEGMENTS CustomTargetingError_Reason = "INVALID_AUDIENCE_SEGMENTS"

	//
	// Mapped metadata key-values are deprecated and cannot be targeted.
	//
	CustomTargetingError_ReasonCANNOT_TARGET_MAPPED_METADATA CustomTargetingError_Reason = "CANNOT_TARGET_MAPPED_METADATA"

	//
	// Targeted {@link AudienceSegment} objects have not been approved.
	//
	CustomTargetingError_ReasonONLY_APPROVED_AUDIENCE_SEGMENTS_CAN_BE_TARGETED CustomTargetingError_Reason = "ONLY_APPROVED_AUDIENCE_SEGMENTS_CAN_BE_TARGETED"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	CustomTargetingError_ReasonUNKNOWN CustomTargetingError_Reason = "UNKNOWN"
)

type Date

type Date struct {

	//
	// Year (e.g., 2009)
	//
	Year int32 `xml:"year,omitempty" json:"year,omitempty"`

	//
	// Month (1..12)
	//
	Month int32 `xml:"month,omitempty" json:"month,omitempty"`

	//
	// Day (1..31)
	//
	Day int32 `xml:"day,omitempty" json:"day,omitempty"`
}

type DateTime

type DateTime struct {
	Date soap.XSDDate `xml:"date,omitempty" json:"date,omitempty"`

	Hour int32 `xml:"hour,omitempty" json:"hour,omitempty"`

	Minute int32 `xml:"minute,omitempty" json:"minute,omitempty"`

	Second int32 `xml:"second,omitempty" json:"second,omitempty"`

	TimeZoneId string `xml:"timeZoneId,omitempty" json:"timeZoneId,omitempty"`
}

type DateTimeRangeTargetingError

type DateTimeRangeTargetingError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *DateTimeRangeTargetingError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type DateTimeRangeTargetingError_Reason

type DateTimeRangeTargetingError_Reason string
const (

	//
	// No targeted ranges exists.
	//
	DateTimeRangeTargetingError_ReasonEMPTY_RANGES DateTimeRangeTargetingError_Reason = "EMPTY_RANGES"

	//
	// Type of lineitem is not sponsorship.
	//
	DateTimeRangeTargetingError_ReasonNOT_SPONSORSHIP_LINEITEM DateTimeRangeTargetingError_Reason = "NOT_SPONSORSHIP_LINEITEM"

	//
	// Type of lineitem is not sponsorship or standard.
	//
	DateTimeRangeTargetingError_ReasonNOT_SPONSORSHIP_OR_STANDARD_LINEITEM DateTimeRangeTargetingError_Reason = "NOT_SPONSORSHIP_OR_STANDARD_LINEITEM"

	//
	// Line item must have a reservation type of sponsorship, standard or preferred deal to use date
	// time range targeting.
	//
	DateTimeRangeTargetingError_ReasonUNSUPPORTED_LINEITEM_RESERVATION_TYPE DateTimeRangeTargetingError_Reason = "UNSUPPORTED_LINEITEM_RESERVATION_TYPE"

	//
	// Past ranges are changed.
	//
	DateTimeRangeTargetingError_ReasonPAST_RANGES_CHANGED DateTimeRangeTargetingError_Reason = "PAST_RANGES_CHANGED"

	//
	// Targeted date time ranges overlap.
	//
	DateTimeRangeTargetingError_ReasonRANGES_OVERLAP DateTimeRangeTargetingError_Reason = "RANGES_OVERLAP"

	//
	// First date time does not match line item's start time.
	//
	DateTimeRangeTargetingError_ReasonFIRST_DATE_TIME_DOES_NOT_MATCH_START_TIME DateTimeRangeTargetingError_Reason = "FIRST_DATE_TIME_DOES_NOT_MATCH_START_TIME"

	//
	// Last date time does not match line item's end time.
	//
	DateTimeRangeTargetingError_ReasonLAST_DATE_TIME_DOES_NOT_MATCH_END_TIME DateTimeRangeTargetingError_Reason = "LAST_DATE_TIME_DOES_NOT_MATCH_END_TIME"

	//
	// Targeted date time ranges fall out the active period of lineitem.
	//
	DateTimeRangeTargetingError_ReasonRANGES_OUT_OF_LINEITEM_ACTIVE_PERIOD DateTimeRangeTargetingError_Reason = "RANGES_OUT_OF_LINEITEM_ACTIVE_PERIOD"

	//
	// Start time of range (except the earliest range) is not at start of day.
	// Start of day is 00:00:00.
	//
	DateTimeRangeTargetingError_ReasonSTART_TIME_IS_NOT_START_OF_DAY DateTimeRangeTargetingError_Reason = "START_TIME_IS_NOT_START_OF_DAY"

	//
	// End time of range (except the latest range) is not at end of day.
	// End of day is 23:59:59.
	//
	DateTimeRangeTargetingError_ReasonEND_TIME_IS_NOT_END_OF_DAY DateTimeRangeTargetingError_Reason = "END_TIME_IS_NOT_END_OF_DAY"

	//
	// Start date time of earliest targeted ranges is in past.
	//
	DateTimeRangeTargetingError_ReasonSTART_DATE_TIME_IS_IN_PAST DateTimeRangeTargetingError_Reason = "START_DATE_TIME_IS_IN_PAST"

	//
	// Cannot modify the start date time for date time targeting to the past.
	//
	DateTimeRangeTargetingError_ReasonMODIFY_START_DATE_TIME_TO_PAST DateTimeRangeTargetingError_Reason = "MODIFY_START_DATE_TIME_TO_PAST"

	//
	// The end time of range is before the start time.
	// Could happen when start type is IMMEDIATE or ONE_HOUR_LATER.
	//
	DateTimeRangeTargetingError_ReasonRANGE_END_TIME_BEFORE_START_TIME DateTimeRangeTargetingError_Reason = "RANGE_END_TIME_BEFORE_START_TIME"

	//
	// End date time of latest targeted ranges is too late.
	//
	DateTimeRangeTargetingError_ReasonEND_DATE_TIME_IS_TOO_LATE DateTimeRangeTargetingError_Reason = "END_DATE_TIME_IS_TOO_LATE"

	DateTimeRangeTargetingError_ReasonLIMITED_RANGES_IN_UNLIMITED_LINEITEM DateTimeRangeTargetingError_Reason = "LIMITED_RANGES_IN_UNLIMITED_LINEITEM"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	DateTimeRangeTargetingError_ReasonUNKNOWN DateTimeRangeTargetingError_Reason = "UNKNOWN"
)

type DateTimeValue

type DateTimeValue struct {

	//
	// The {@code DateTime} value.
	//
	Value soap.XSDDateTime `xml:"value,omitempty" json:"value,omitempty"`
	// contains filtered or unexported fields
}

type DateValue

type DateValue struct {

	//
	// The {@code Date} value.
	//
	Value soap.XSDDate `xml:"value,omitempty" json:"value,omitempty"`
	// contains filtered or unexported fields
}

type DayPartTargetingError

type DayPartTargetingError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *DayPartTargetingError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type DayPartTargetingError_Reason

type DayPartTargetingError_Reason string
const (

	//
	// Hour of day must be between 0 and 24, inclusive.
	//
	DayPartTargetingError_ReasonINVALID_HOUR DayPartTargetingError_Reason = "INVALID_HOUR"

	//
	// Minute of hour must be one of 0, 15,30, 45.
	//
	DayPartTargetingError_ReasonINVALID_MINUTE DayPartTargetingError_Reason = "INVALID_MINUTE"

	//
	// The {@link DayPart#endTime} cannot be after {@link DayPart#startTime}.
	//
	DayPartTargetingError_ReasonEND_TIME_NOT_AFTER_START_TIME DayPartTargetingError_Reason = "END_TIME_NOT_AFTER_START_TIME"

	//
	// Cannot create day-parts that overlap.
	//
	DayPartTargetingError_ReasonTIME_PERIODS_OVERLAP DayPartTargetingError_Reason = "TIME_PERIODS_OVERLAP"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	DayPartTargetingError_ReasonUNKNOWN DayPartTargetingError_Reason = "UNKNOWN"
)

type DeliveryRateType

type DeliveryRateType string
const (

	//
	// Line items are served as evenly as possible across the number of
	// days specified in a line item's {@link LineItem#duration}.
	//
	DeliveryRateTypeEVENLY DeliveryRateType = "EVENLY"

	//
	// Line items are served more aggressively in the beginning of the flight
	// date.
	//
	DeliveryRateTypeFRONTLOADED DeliveryRateType = "FRONTLOADED"

	//
	// The booked impressions for a line item may be delivered well before the
	// {@link LineItem#endDateTime}. Other lower-priority or lower-value line
	// items will be stopped from delivering until this line item meets the number
	// of impressions or clicks it is booked for.
	//
	DeliveryRateTypeAS_FAST_AS_POSSIBLE DeliveryRateType = "AS_FAST_AS_POSSIBLE"
)

type EntityChildrenLimitReachedError

type EntityChildrenLimitReachedError struct {
	*ApiError

	Reason *EntityChildrenLimitReachedError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type EntityChildrenLimitReachedError_Reason

type EntityChildrenLimitReachedError_Reason string
const (

	//
	// The number of line items on the order exceeds the max number of line items allowed per order
	// in the network.
	//
	EntityChildrenLimitReachedError_ReasonLINE_ITEM_LIMIT_FOR_ORDER_REACHED EntityChildrenLimitReachedError_Reason = "LINE_ITEM_LIMIT_FOR_ORDER_REACHED"

	//
	// The number of creatives associated with the line item exceeds the max number of creatives
	// allowed to be associated with a line item in the network.
	//
	EntityChildrenLimitReachedError_ReasonCREATIVE_ASSOCIATION_LIMIT_FOR_LINE_ITEM_REACHED EntityChildrenLimitReachedError_Reason = "CREATIVE_ASSOCIATION_LIMIT_FOR_LINE_ITEM_REACHED"

	//
	// The number of ad units on the placement exceeds the max number of ad units
	// allowed per placement in the network.
	//
	EntityChildrenLimitReachedError_ReasonAD_UNIT_LIMIT_FOR_PLACEMENT_REACHED EntityChildrenLimitReachedError_Reason = "AD_UNIT_LIMIT_FOR_PLACEMENT_REACHED"

	//
	// The number of targeting expressions on the line item exceeds the max number of targeting
	// expressions allowed per line item in the network.
	//
	EntityChildrenLimitReachedError_ReasonTARGETING_EXPRESSION_LIMIT_FOR_LINE_ITEM_REACHED EntityChildrenLimitReachedError_Reason = "TARGETING_EXPRESSION_LIMIT_FOR_LINE_ITEM_REACHED"

	//
	// The size of a single targeting expression tree exceeds the max size allowed by the network.
	//
	EntityChildrenLimitReachedError_ReasonTARGETING_EXPRESSION_SIZE_LIMIT_REACHED EntityChildrenLimitReachedError_Reason = "TARGETING_EXPRESSION_SIZE_LIMIT_REACHED"

	//
	// The number of custom targeting values for the free-form or predefined custom targeting key
	// exceeds the max number allowed.
	//
	EntityChildrenLimitReachedError_ReasonCUSTOM_TARGETING_VALUES_FOR_KEY_LIMIT_REACHED EntityChildrenLimitReachedError_Reason = "CUSTOM_TARGETING_VALUES_FOR_KEY_LIMIT_REACHED"

	//
	// The total number of targeting expressions on the creatives for the line item exceeds
	// the max number allowed per line item in the network.
	//
	EntityChildrenLimitReachedError_ReasonTARGETING_EXPRESSION_LIMIT_FOR_CREATIVES_ON_LINE_ITEM_REACHED EntityChildrenLimitReachedError_Reason = "TARGETING_EXPRESSION_LIMIT_FOR_CREATIVES_ON_LINE_ITEM_REACHED"

	//
	// The number of attachments added to the proposal exceeds the max number
	// allowed per proposal in the network.
	//
	EntityChildrenLimitReachedError_ReasonATTACHMENT_LIMIT_FOR_PROPOSAL_REACHED EntityChildrenLimitReachedError_Reason = "ATTACHMENT_LIMIT_FOR_PROPOSAL_REACHED"

	//
	// The number of proposal line items on the proposal exceeds the max number
	// allowed per proposal in the network.
	//
	EntityChildrenLimitReachedError_ReasonPROPOSAL_LINE_ITEM_LIMIT_FOR_PROPOSAL_REACHED EntityChildrenLimitReachedError_Reason = "PROPOSAL_LINE_ITEM_LIMIT_FOR_PROPOSAL_REACHED"

	//
	// The number of product package items on the product package exceeds the max number
	// allowed per product package in the network.
	//
	EntityChildrenLimitReachedError_ReasonPRODUCT_LIMIT_FOR_PRODUCT_PACKAGE_REACHED EntityChildrenLimitReachedError_Reason = "PRODUCT_LIMIT_FOR_PRODUCT_PACKAGE_REACHED"

	//
	// The number of product template and product base rates on the rate card (including excluded
	// product base rates) exceeds the max number allowed per rate card in the network.
	//
	EntityChildrenLimitReachedError_ReasonPRODUCT_TEMPLATE_AND_PRODUCT_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED EntityChildrenLimitReachedError_Reason = "PRODUCT_TEMPLATE_AND_PRODUCT_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED"

	//
	// The number of product package item base rates on the rate card exceeds the max number
	// allowed per rate card in the network.
	//
	EntityChildrenLimitReachedError_ReasonPRODUCT_PACKAGE_ITEM_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED EntityChildrenLimitReachedError_Reason = "PRODUCT_PACKAGE_ITEM_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED"

	//
	// The number of premiums of the rate card exceeds the max number allowed per rate card
	// in the network.
	//
	EntityChildrenLimitReachedError_ReasonPREMIUM_LIMIT_FOR_RATE_CARD_REACHED EntityChildrenLimitReachedError_Reason = "PREMIUM_LIMIT_FOR_RATE_CARD_REACHED"

	//
	// The number of ad units on {@link AdExclusionRule#inventoryTargeting} exceeds the max number
	// of ad units allowed per ad exclusion rule inventory targeting in the network.
	//
	EntityChildrenLimitReachedError_ReasonAD_UNIT_LIMIT_FOR_AD_EXCLUSION_RULE_TARGETING_REACHED EntityChildrenLimitReachedError_Reason = "AD_UNIT_LIMIT_FOR_AD_EXCLUSION_RULE_TARGETING_REACHED"

	//
	// The number of native styles under the native creative template exceeds the
	// max number of native styles allowed per native creative template in the
	// network.
	//
	EntityChildrenLimitReachedError_ReasonNATIVE_STYLE_LIMIT_FOR_NATIVE_AD_FORMAT_REACHED EntityChildrenLimitReachedError_Reason = "NATIVE_STYLE_LIMIT_FOR_NATIVE_AD_FORMAT_REACHED"

	//
	// The number of targeting expressions on the native style exceeds the max number of targeting
	// expressions allowed per native style in the network.
	//
	EntityChildrenLimitReachedError_ReasonTARGETING_EXPRESSION_LIMIT_FOR_PRESENTATION_ASSIGNMENT_REACHED EntityChildrenLimitReachedError_Reason = "TARGETING_EXPRESSION_LIMIT_FOR_PRESENTATION_ASSIGNMENT_REACHED"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	EntityChildrenLimitReachedError_ReasonUNKNOWN EntityChildrenLimitReachedError_Reason = "UNKNOWN"
)

type EntityLimitReachedError

type EntityLimitReachedError struct {
	*ApiError

	Reason *EntityLimitReachedError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type EntityLimitReachedError_Reason

type EntityLimitReachedError_Reason string
const (

	//
	// The number of custom targeting values exceeds the max number allowed in the network.
	//
	EntityLimitReachedError_ReasonCUSTOM_TARGETING_VALUES_LIMIT_REACHED EntityLimitReachedError_Reason = "CUSTOM_TARGETING_VALUES_LIMIT_REACHED"

	//
	// The number of ad exclusion rules exceeds the max number allowed in the network.
	//
	EntityLimitReachedError_ReasonAD_EXCLUSION_RULES_LIMIT_REACHED EntityLimitReachedError_Reason = "AD_EXCLUSION_RULES_LIMIT_REACHED"

	//
	// The number of first party audience segments exceeds the max number allowed in the network.
	//
	EntityLimitReachedError_ReasonFIRST_PARTY_AUDIENCE_SEGMENTS_LIMIT_REACHED EntityLimitReachedError_Reason = "FIRST_PARTY_AUDIENCE_SEGMENTS_LIMIT_REACHED"

	//
	// The number of active placements exceeds the max number allowed in the network.
	//
	EntityLimitReachedError_ReasonPLACEMENTS_LIMIT_REACHED EntityLimitReachedError_Reason = "PLACEMENTS_LIMIT_REACHED"

	//
	// The number of line items excceeds the max number allowed in the network.
	//
	EntityLimitReachedError_ReasonLINE_ITEMS_LIMIT_REACHED EntityLimitReachedError_Reason = "LINE_ITEMS_LIMIT_REACHED"

	//
	// The number of active line items exceeds the max number allowed in the network.
	//
	EntityLimitReachedError_ReasonACTIVE_LINE_ITEMS_LIMIT_REACHED EntityLimitReachedError_Reason = "ACTIVE_LINE_ITEMS_LIMIT_REACHED"

	//
	// The number of not-archived encoding profiles exceeds the max number allowed in the network.
	//
	EntityLimitReachedError_ReasonDAI_ENCODING_PROFILES_LIMIT_REACHED EntityLimitReachedError_Reason = "DAI_ENCODING_PROFILES_LIMIT_REACHED"

	//
	// The number of traffic forecast segments exceeds the max number allowed in the network.
	//
	EntityLimitReachedError_ReasonTRAFFIC_FORECAST_SEGMENTS_LIMIT_REACHED EntityLimitReachedError_Reason = "TRAFFIC_FORECAST_SEGMENTS_LIMIT_REACHED"

	//
	// The number of forecast adjustments exceeds the max number allowed in the network.
	//
	EntityLimitReachedError_ReasonFORECAST_ADJUSTMENTS_LIMIT_REACHED EntityLimitReachedError_Reason = "FORECAST_ADJUSTMENTS_LIMIT_REACHED"

	//
	// The number of active experiments exceeds the max number allowed in the network.
	//
	EntityLimitReachedError_ReasonACTIVE_EXPERIMENTS_LIMIT_REACHED EntityLimitReachedError_Reason = "ACTIVE_EXPERIMENTS_LIMIT_REACHED"

	//
	// The number of sites exceeds the max number allowed in the network.
	//
	EntityLimitReachedError_ReasonSITES_LIMIT_REACHED EntityLimitReachedError_Reason = "SITES_LIMIT_REACHED"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	EntityLimitReachedError_ReasonUNKNOWN EntityLimitReachedError_Reason = "UNKNOWN"
)

type FeatureError

type FeatureError struct {
	*ApiError

	Reason *FeatureError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type FeatureError_Reason

type FeatureError_Reason string
const (

	//
	// A feature is being used that is not enabled on the current network.
	//
	FeatureError_ReasonMISSING_FEATURE FeatureError_Reason = "MISSING_FEATURE"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	FeatureError_ReasonUNKNOWN FeatureError_Reason = "UNKNOWN"
)

type FieldPathElement

type FieldPathElement struct {

	//
	// The name of a field in lower camelcase. (e.g. "biddingStrategy")
	//
	Field string `xml:"field,omitempty" json:"field,omitempty"`

	//
	// For list fields, this is a 0-indexed position in the list. Null for non-list fields.
	//
	Index int32 `xml:"index,omitempty" json:"index,omitempty"`
}

type ForecastError

type ForecastError struct {
	*ApiError

	//
	// The reason for the forecast error.
	//
	Reason *ForecastError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type ForecastError_Reason

type ForecastError_Reason string
const (

	//
	// The forecast could not be retrieved due to a server side
	// connection problem. Please try again soon.
	//
	ForecastError_ReasonSERVER_NOT_AVAILABLE ForecastError_Reason = "SERVER_NOT_AVAILABLE"

	//
	// There was an unexpected internal error.
	//
	ForecastError_ReasonINTERNAL_ERROR ForecastError_Reason = "INTERNAL_ERROR"

	//
	// The forecast could not be retrieved because there is not
	// enough forecasting data available yet. It may take up to one week before
	// enough data is available.
	//
	ForecastError_ReasonNO_FORECAST_YET ForecastError_Reason = "NO_FORECAST_YET"

	//
	// There's not enough inventory for the requested reservation.
	//
	ForecastError_ReasonNOT_ENOUGH_INVENTORY ForecastError_Reason = "NOT_ENOUGH_INVENTORY"

	//
	// No error from forecast.
	//
	ForecastError_ReasonSUCCESS ForecastError_Reason = "SUCCESS"

	//
	// The requested reservation is of zero length.  No forecast is returned.
	//
	ForecastError_ReasonZERO_LENGTH_RESERVATION ForecastError_Reason = "ZERO_LENGTH_RESERVATION"

	//
	// The number of requests made per second is too high and has exceeded the
	// allowable limit. The recommended approach to handle this error is to wait
	// about 5 seconds and then retry the request. Note that this does not
	// guarantee the request will succeed. If it fails again, try increasing the
	// wait time.
	// <p>
	// Another way to mitigate this error is to limit requests to 2 per second.
	// Once again this does not guarantee that every request will succeed, but
	// may help reduce the number of times you receive this error.
	// </p>
	//
	ForecastError_ReasonEXCEEDED_QUOTA ForecastError_Reason = "EXCEEDED_QUOTA"

	//
	// The request falls outside the date range of the available data.
	//
	ForecastError_ReasonOUTSIDE_AVAILABLE_DATE_RANGE ForecastError_Reason = "OUTSIDE_AVAILABLE_DATE_RANGE"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	ForecastError_ReasonUNKNOWN ForecastError_Reason = "UNKNOWN"
)

type FrequencyCapError

type FrequencyCapError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *FrequencyCapError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type FrequencyCapError_Reason

type FrequencyCapError_Reason string
const (
	FrequencyCapError_ReasonIMPRESSION_LIMIT_EXCEEDED FrequencyCapError_Reason = "IMPRESSION_LIMIT_EXCEEDED"

	FrequencyCapError_ReasonIMPRESSIONS_TOO_LOW FrequencyCapError_Reason = "IMPRESSIONS_TOO_LOW"

	FrequencyCapError_ReasonRANGE_LIMIT_EXCEEDED FrequencyCapError_Reason = "RANGE_LIMIT_EXCEEDED"

	FrequencyCapError_ReasonRANGE_TOO_LOW FrequencyCapError_Reason = "RANGE_TOO_LOW"

	FrequencyCapError_ReasonDUPLICATE_TIME_RANGE FrequencyCapError_Reason = "DUPLICATE_TIME_RANGE"

	FrequencyCapError_ReasonTOO_MANY_FREQUENCY_CAPS FrequencyCapError_Reason = "TOO_MANY_FREQUENCY_CAPS"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	FrequencyCapError_ReasonUNKNOWN FrequencyCapError_Reason = "UNKNOWN"
)

type GenericTargetingError

type GenericTargetingError struct {
	*ApiError

	Reason *GenericTargetingError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type GenericTargetingError_Reason

type GenericTargetingError_Reason string
const (

	//
	// Both including and excluding sibling criteria is disallowed.
	//
	GenericTargetingError_ReasonCONFLICTING_INCLUSION_OR_EXCLUSION_OF_SIBLINGS GenericTargetingError_Reason = "CONFLICTING_INCLUSION_OR_EXCLUSION_OF_SIBLINGS"

	//
	// Including descendants of excluded criteria is disallowed.
	//
	GenericTargetingError_ReasonINCLUDING_DESCENDANTS_OF_EXCLUDED_CRITERIA GenericTargetingError_Reason = "INCLUDING_DESCENDANTS_OF_EXCLUDED_CRITERIA"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	GenericTargetingError_ReasonUNKNOWN GenericTargetingError_Reason = "UNKNOWN"
)

type GeoTargetingError

type GeoTargetingError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *GeoTargetingError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type GeoTargetingError_Reason

type GeoTargetingError_Reason string
const (

	//
	// A location that is targeted cannot also be excluded.
	//
	GeoTargetingError_ReasonTARGETED_LOCATIONS_NOT_EXCLUDABLE GeoTargetingError_Reason = "TARGETED_LOCATIONS_NOT_EXCLUDABLE"

	//
	// Excluded locations cannot have any of their children targeted.
	//
	GeoTargetingError_ReasonEXCLUDED_LOCATIONS_CANNOT_HAVE_CHILDREN_TARGETED GeoTargetingError_Reason = "EXCLUDED_LOCATIONS_CANNOT_HAVE_CHILDREN_TARGETED"

	//
	// Postal codes cannot be excluded.
	//
	GeoTargetingError_ReasonPOSTAL_CODES_CANNOT_BE_EXCLUDED GeoTargetingError_Reason = "POSTAL_CODES_CANNOT_BE_EXCLUDED"

	//
	// Indicates that location targeting is not allowed.
	//
	GeoTargetingError_ReasonUNTARGETABLE_LOCATION GeoTargetingError_Reason = "UNTARGETABLE_LOCATION"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	GeoTargetingError_ReasonUNKNOWN GeoTargetingError_Reason = "UNKNOWN"
)

type GetLineItemTemplatesByStatement

type GetLineItemTemplatesByStatement struct {
	XMLName xml.Name `xml:"https://www.google.com/apis/ads/publisher/v202311 getLineItemTemplatesByStatement"`

	FilterStatement *Statement `xml:"filterStatement,omitempty" json:"filterStatement,omitempty"`
}

type GetLineItemTemplatesByStatementResponse

type GetLineItemTemplatesByStatementResponse struct {
	XMLName xml.Name `xml:"https://www.google.com/apis/ads/publisher/v202311 getLineItemTemplatesByStatementResponse"`

	Rval *LineItemTemplatePage `xml:"rval,omitempty" json:"rval,omitempty"`
}

type GrpSettingsError

type GrpSettingsError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *GrpSettingsError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type GrpSettingsError_Reason

type GrpSettingsError_Reason string
const (

	//
	// Age range for GRP audience is not valid. Please see the
	// <a href="https://support.google.com/admanager/answer/6135438">Ad Manager Help Center</a>
	// for more information.
	//
	GrpSettingsError_ReasonINVALID_AGE_RANGE GrpSettingsError_Reason = "INVALID_AGE_RANGE"

	//
	// Age range for GRP audience is not allowed to include ages under 18 unless designating all
	// ages in target(2-65+).
	//
	GrpSettingsError_ReasonUNDER_18_MIN_AGE_REQUIRES_ALL_AGES GrpSettingsError_Reason = "UNDER_18_MIN_AGE_REQUIRES_ALL_AGES"

	//
	// GRP settings are only supported for video line items.
	//
	GrpSettingsError_ReasonLINE_ITEM_ENVIRONMENT_TYPE_NOT_SUPPORTED GrpSettingsError_Reason = "LINE_ITEM_ENVIRONMENT_TYPE_NOT_SUPPORTED"

	//
	// For deals with Nielsen DAR enabled, there must be an instream video environment.
	//
	GrpSettingsError_ReasonNIELSEN_DAR_REQUIRES_INSTREAM_VIDEO GrpSettingsError_Reason = "NIELSEN_DAR_REQUIRES_INSTREAM_VIDEO"

	//
	// GRP settings are not supported for the given line item type.
	//
	GrpSettingsError_ReasonLINE_ITEM_TYPE_NOT_SUPPORTED GrpSettingsError_Reason = "LINE_ITEM_TYPE_NOT_SUPPORTED"

	//
	// GRP audience gender cannot be specified for the selected age range.
	//
	GrpSettingsError_ReasonCANNOT_SPECIFY_GENDER_FOR_GIVEN_AGE_RANGE GrpSettingsError_Reason = "CANNOT_SPECIFY_GENDER_FOR_GIVEN_AGE_RANGE"

	//
	// Minimum age for GRP audience is not valid.
	//
	GrpSettingsError_ReasonINVALID_MIN_AGE GrpSettingsError_Reason = "INVALID_MIN_AGE"

	//
	// Maximum age for GRP audience is not valid.
	//
	GrpSettingsError_ReasonINVALID_MAX_AGE GrpSettingsError_Reason = "INVALID_MAX_AGE"

	//
	// GRP settings cannot be disabled.
	//
	GrpSettingsError_ReasonCANNOT_DISABLE_GRP_AFTER_ENABLING GrpSettingsError_Reason = "CANNOT_DISABLE_GRP_AFTER_ENABLING"

	//
	// GRP provider cannot be updated.
	//
	GrpSettingsError_ReasonCANNOT_CHANGE_GRP_PROVIDERS GrpSettingsError_Reason = "CANNOT_CHANGE_GRP_PROVIDERS"

	//
	// GRP settings cannot be updated once the line item has started serving.
	//
	GrpSettingsError_ReasonCANNOT_CHANGE_GRP_SETTINGS GrpSettingsError_Reason = "CANNOT_CHANGE_GRP_SETTINGS"

	//
	// Impression goal based on GRP audience is not supported.
	//
	GrpSettingsError_ReasonGRP_AUDIENCE_GOAL_NOT_SUPPORTED GrpSettingsError_Reason = "GRP_AUDIENCE_GOAL_NOT_SUPPORTED"

	//
	// Impression goal based on GRP audience expected.
	//
	GrpSettingsError_ReasonDEMOG_GOAL_EXPECTED GrpSettingsError_Reason = "DEMOG_GOAL_EXPECTED"

	//
	// Impression goal based on GRP audience cannot be set once the line item has started serving.
	//
	GrpSettingsError_ReasonCANNOT_SET_GRP_AUDIENCE_GOAL GrpSettingsError_Reason = "CANNOT_SET_GRP_AUDIENCE_GOAL"

	//
	// Impression goal based on GRP audience cannot be removed once the line item has started
	// serving.
	//
	GrpSettingsError_ReasonCANNOT_REMOVE_GRP_AUDIENCE_GOAL GrpSettingsError_Reason = "CANNOT_REMOVE_GRP_AUDIENCE_GOAL"

	//
	// Unsupported geographic location targeted for line item with GRP audience goal.
	//
	GrpSettingsError_ReasonUNSUPPORTED_GEO_TARGETING GrpSettingsError_Reason = "UNSUPPORTED_GEO_TARGETING"

	//
	// GRP Settings specified are unsupported.
	//
	GrpSettingsError_ReasonUNSUPPORTED_GRP_SETTING GrpSettingsError_Reason = "UNSUPPORTED_GRP_SETTING"

	//
	// In-target line items should be set through the grpSettings target impression goal.
	//
	GrpSettingsError_ReasonSHOULD_SET_IN_TARGET_GOAL_THROUGH_GRP_SETTINGS GrpSettingsError_Reason = "SHOULD_SET_IN_TARGET_GOAL_THROUGH_GRP_SETTINGS"

	//
	// In-target line items should be set through the primaryReservationUnit's in-target Impressions
	// unit type.
	//
	GrpSettingsError_ReasonSHOULD_SET_IN_TARGET_GOAL_THROUGH_PRIMARY_GOAL GrpSettingsError_Reason = "SHOULD_SET_IN_TARGET_GOAL_THROUGH_PRIMARY_GOAL"

	//
	// Attempt to register with Nielsen failed.
	//
	GrpSettingsError_ReasonNIELSEN_REGISTRATION_FAILED GrpSettingsError_Reason = "NIELSEN_REGISTRATION_FAILED"

	//
	// Attempted to register a placement on a legacy Nielsen campaign.
	//
	GrpSettingsError_ReasonLEGACY_NIELSEN_CAMPAIGN_REGISTRATION_ATTEMPT GrpSettingsError_Reason = "LEGACY_NIELSEN_CAMPAIGN_REGISTRATION_ATTEMPT"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	GrpSettingsError_ReasonUNKNOWN GrpSettingsError_Reason = "UNKNOWN"
)

type ImageError

type ImageError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *ImageError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type ImageError_Reason

type ImageError_Reason string
const (

	//
	// The file's format is invalid.
	//
	ImageError_ReasonINVALID_IMAGE ImageError_Reason = "INVALID_IMAGE"

	//
	// {@link Size#width} and {@link Size#height} cannot be negative.
	//
	ImageError_ReasonINVALID_SIZE ImageError_Reason = "INVALID_SIZE"

	//
	// The actual image size does not match the expected image size.
	//
	ImageError_ReasonUNEXPECTED_SIZE ImageError_Reason = "UNEXPECTED_SIZE"

	//
	// The size of the asset is larger than that of the overlay creative.
	//
	ImageError_ReasonOVERLAY_SIZE_TOO_LARGE ImageError_Reason = "OVERLAY_SIZE_TOO_LARGE"

	//
	// Animated images are not allowed.
	//
	ImageError_ReasonANIMATED_NOT_ALLOWED ImageError_Reason = "ANIMATED_NOT_ALLOWED"

	//
	// Animation length exceeded the allowed policy limit.
	//
	ImageError_ReasonANIMATION_TOO_LONG ImageError_Reason = "ANIMATION_TOO_LONG"

	//
	// Images in CMYK color formats are not allowed.
	//
	ImageError_ReasonCMYK_JPEG_NOT_ALLOWED ImageError_Reason = "CMYK_JPEG_NOT_ALLOWED"

	//
	// Flash files are not allowed.
	//
	ImageError_ReasonFLASH_NOT_ALLOWED ImageError_Reason = "FLASH_NOT_ALLOWED"

	//
	// If {@link FlashCreative#clickTagRequired} is {@code true}, then the flash
	// file is required to have a click tag embedded in it.
	//
	ImageError_ReasonFLASH_WITHOUT_CLICKTAG ImageError_Reason = "FLASH_WITHOUT_CLICKTAG"

	//
	// Animated visual effect is not allowed.
	//
	ImageError_ReasonANIMATED_VISUAL_EFFECT ImageError_Reason = "ANIMATED_VISUAL_EFFECT"

	//
	// An error was encountered in the flash file.
	//
	ImageError_ReasonFLASH_ERROR ImageError_Reason = "FLASH_ERROR"

	//
	// Incorrect image layout.
	//
	ImageError_ReasonLAYOUT_PROBLEM ImageError_Reason = "LAYOUT_PROBLEM"

	//
	// Flash files with network objects are not allowed.
	//
	ImageError_ReasonFLASH_HAS_NETWORK_OBJECTS ImageError_Reason = "FLASH_HAS_NETWORK_OBJECTS"

	//
	// Flash files with network methods are not allowed.
	//
	ImageError_ReasonFLASH_HAS_NETWORK_METHODS ImageError_Reason = "FLASH_HAS_NETWORK_METHODS"

	//
	// Flash files with hard-coded click thru URLs are not allowed.
	//
	ImageError_ReasonFLASH_HAS_URL ImageError_Reason = "FLASH_HAS_URL"

	//
	// Flash files with mouse tracking are not allowed.
	//
	ImageError_ReasonFLASH_HAS_MOUSE_TRACKING ImageError_Reason = "FLASH_HAS_MOUSE_TRACKING"

	//
	// Flash files that generate or use random numbers are not allowed.
	//
	ImageError_ReasonFLASH_HAS_RANDOM_NUM ImageError_Reason = "FLASH_HAS_RANDOM_NUM"

	//
	// Flash files with self targets are not allowed.
	//
	ImageError_ReasonFLASH_SELF_TARGETS ImageError_Reason = "FLASH_SELF_TARGETS"

	//
	// Flash file contains a bad geturl target.
	//
	ImageError_ReasonFLASH_BAD_GETURL_TARGET ImageError_Reason = "FLASH_BAD_GETURL_TARGET"

	//
	// Flash or ActionScript version in the submitted file is not supported.
	//
	ImageError_ReasonFLASH_VERSION_NOT_SUPPORTED ImageError_Reason = "FLASH_VERSION_NOT_SUPPORTED"

	//
	// The uploaded file is too large.
	//
	ImageError_ReasonFILE_TOO_LARGE ImageError_Reason = "FILE_TOO_LARGE"

	//
	// A system error occurred, please try again.
	//
	ImageError_ReasonSYSTEM_ERROR_IRS ImageError_Reason = "SYSTEM_ERROR_IRS"

	//
	// A system error occurred, please try again.
	//
	ImageError_ReasonSYSTEM_ERROR_SCS ImageError_Reason = "SYSTEM_ERROR_SCS"

	//
	// The image density for a primary asset was not one of the expected image densities.
	//
	ImageError_ReasonUNEXPECTED_PRIMARY_ASSET_DENSITY ImageError_Reason = "UNEXPECTED_PRIMARY_ASSET_DENSITY"

	//
	// Two or more assets have the same image density.
	//
	ImageError_ReasonDUPLICATE_ASSET_DENSITY ImageError_Reason = "DUPLICATE_ASSET_DENSITY"

	//
	// The creative does not contain a primary asset. (For high-density creatives, the primary
	// asset must be a standard image file with 1x density.)
	//
	ImageError_ReasonMISSING_DEFAULT_ASSET ImageError_Reason = "MISSING_DEFAULT_ASSET"

	//
	// preverified_mime_type is not in the client spec's allowlist.
	//
	ImageError_ReasonPREVERIFIED_MIMETYPE_NOT_ALLOWED ImageError_Reason = "PREVERIFIED_MIMETYPE_NOT_ALLOWED"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	ImageError_ReasonUNKNOWN ImageError_Reason = "UNKNOWN"
)

type InternalApiError

type InternalApiError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *InternalApiError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type InternalApiError_Reason

type InternalApiError_Reason string
const (

	//
	// API encountered an unexpected internal error.
	//
	InternalApiError_ReasonUNEXPECTED_INTERNAL_API_ERROR InternalApiError_Reason = "UNEXPECTED_INTERNAL_API_ERROR"

	//
	// A temporary error occurred during the request. Please retry.
	//
	InternalApiError_ReasonTRANSIENT_ERROR InternalApiError_Reason = "TRANSIENT_ERROR"

	//
	// The cause of the error is not known or only defined in newer versions.
	//
	InternalApiError_ReasonUNKNOWN InternalApiError_Reason = "UNKNOWN"

	//
	// The API is currently unavailable for a planned downtime.
	//
	InternalApiError_ReasonDOWNTIME InternalApiError_Reason = "DOWNTIME"

	//
	// Mutate succeeded but server was unable to build response. Client should not retry mutate.
	//
	InternalApiError_ReasonERROR_GENERATING_RESPONSE InternalApiError_Reason = "ERROR_GENERATING_RESPONSE"
)

type InvalidUrlError

type InvalidUrlError struct {
	*ApiError

	Reason *InvalidUrlError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type InvalidUrlError_Reason

type InvalidUrlError_Reason string
const (

	//
	// The URL contains invalid characters.
	//
	InvalidUrlError_ReasonILLEGAL_CHARACTERS InvalidUrlError_Reason = "ILLEGAL_CHARACTERS"

	//
	// The format of the URL is not allowed. This could occur for a number of
	// reasons. For example, if an invalid scheme is specified (like "ftp://")
	// or if a port is specified when not required, or if a query was specified
	// when not required.
	//
	InvalidUrlError_ReasonINVALID_FORMAT InvalidUrlError_Reason = "INVALID_FORMAT"

	//
	// URL contains insecure scheme.
	//
	InvalidUrlError_ReasonINSECURE_SCHEME InvalidUrlError_Reason = "INSECURE_SCHEME"

	//
	// The URL does not contain a scheme.
	//
	InvalidUrlError_ReasonNO_SCHEME InvalidUrlError_Reason = "NO_SCHEME"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	InvalidUrlError_ReasonUNKNOWN InvalidUrlError_Reason = "UNKNOWN"
)

type InventoryTargetingError

type InventoryTargetingError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *InventoryTargetingError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type InventoryTargetingError_Reason

type InventoryTargetingError_Reason string
const (

	//
	// At least one placement or inventory unit is required
	//
	InventoryTargetingError_ReasonAT_LEAST_ONE_PLACEMENT_OR_INVENTORY_UNIT_REQUIRED InventoryTargetingError_Reason = "AT_LEAST_ONE_PLACEMENT_OR_INVENTORY_UNIT_REQUIRED"

	//
	// The same inventory unit or placement cannot be targeted and excluded at
	// the same time
	//
	InventoryTargetingError_ReasonINVENTORY_CANNOT_BE_TARGETED_AND_EXCLUDED InventoryTargetingError_Reason = "INVENTORY_CANNOT_BE_TARGETED_AND_EXCLUDED"

	//
	// A child inventory unit cannot be targeted if its ancestor inventory unit
	// is also targeted.
	//
	InventoryTargetingError_ReasonINVENTORY_UNIT_CANNOT_BE_TARGETED_IF_ANCESTOR_IS_TARGETED InventoryTargetingError_Reason = "INVENTORY_UNIT_CANNOT_BE_TARGETED_IF_ANCESTOR_IS_TARGETED"

	//
	// A child inventory unit cannot be targeted if its ancestor inventory unit
	// is excluded.
	//
	InventoryTargetingError_ReasonINVENTORY_UNIT_CANNOT_BE_TARGETED_IF_ANCESTOR_IS_EXCLUDED InventoryTargetingError_Reason = "INVENTORY_UNIT_CANNOT_BE_TARGETED_IF_ANCESTOR_IS_EXCLUDED"

	//
	// A child inventory unit cannot be excluded if its ancestor inventory unit
	// is also excluded.
	//
	InventoryTargetingError_ReasonINVENTORY_UNIT_CANNOT_BE_EXCLUDED_IF_ANCESTOR_IS_EXCLUDED InventoryTargetingError_Reason = "INVENTORY_UNIT_CANNOT_BE_EXCLUDED_IF_ANCESTOR_IS_EXCLUDED"

	//
	// An explicitly targeted inventory unit cannot be targeted.
	//
	InventoryTargetingError_ReasonEXPLICITLY_TARGETED_INVENTORY_UNIT_CANNOT_BE_TARGETED InventoryTargetingError_Reason = "EXPLICITLY_TARGETED_INVENTORY_UNIT_CANNOT_BE_TARGETED"

	//
	// An explicitly targeted inventory unit cannot be excluded.
	//
	InventoryTargetingError_ReasonEXPLICITLY_TARGETED_INVENTORY_UNIT_CANNOT_BE_EXCLUDED InventoryTargetingError_Reason = "EXPLICITLY_TARGETED_INVENTORY_UNIT_CANNOT_BE_EXCLUDED"

	//
	// A landing page-only ad unit cannot be targeted.
	//
	InventoryTargetingError_ReasonSELF_ONLY_INVENTORY_UNIT_NOT_ALLOWED InventoryTargetingError_Reason = "SELF_ONLY_INVENTORY_UNIT_NOT_ALLOWED"

	//
	// A landing page-only ad unit cannot be targeted if it doesn't have any
	// children.
	//
	InventoryTargetingError_ReasonSELF_ONLY_INVENTORY_UNIT_WITHOUT_DESCENDANTS InventoryTargetingError_Reason = "SELF_ONLY_INVENTORY_UNIT_WITHOUT_DESCENDANTS"

	//
	// Audience segments shared from YouTube can only be targeted with inventory shared
	// from YouTube for cross selling.
	//
	InventoryTargetingError_ReasonYOUTUBE_AUDIENCE_SEGMENTS_CAN_ONLY_BE_TARGETED_WITH_YOUTUBE_SHARED_INVENTORY InventoryTargetingError_Reason = "YOUTUBE_AUDIENCE_SEGMENTS_CAN_ONLY_BE_TARGETED_WITH_YOUTUBE_SHARED_INVENTORY"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	InventoryTargetingError_ReasonUNKNOWN InventoryTargetingError_Reason = "UNKNOWN"
)

type LabelEntityAssociationError

type LabelEntityAssociationError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *LabelEntityAssociationError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type LabelEntityAssociationError_Reason

type LabelEntityAssociationError_Reason string
const (

	//
	// The label has already been attached to the entity.
	//
	LabelEntityAssociationError_ReasonDUPLICATE_ASSOCIATION LabelEntityAssociationError_Reason = "DUPLICATE_ASSOCIATION"

	//
	// A label is being applied to an entity that does not support that entity
	// type.
	//
	LabelEntityAssociationError_ReasonINVALID_ASSOCIATION LabelEntityAssociationError_Reason = "INVALID_ASSOCIATION"

	//
	// Label negation cannot be applied to the entity type.
	//
	LabelEntityAssociationError_ReasonNEGATION_NOT_ALLOWED LabelEntityAssociationError_Reason = "NEGATION_NOT_ALLOWED"

	//
	// The same label is being applied and negated to the same entity.
	//
	LabelEntityAssociationError_ReasonDUPLICATE_ASSOCIATION_WITH_NEGATION LabelEntityAssociationError_Reason = "DUPLICATE_ASSOCIATION_WITH_NEGATION"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	LabelEntityAssociationError_ReasonUNKNOWN LabelEntityAssociationError_Reason = "UNKNOWN"
)

type LineItemActivityAssociationError

type LineItemActivityAssociationError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *LineItemActivityAssociationError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type LineItemActivityAssociationError_Reason

type LineItemActivityAssociationError_Reason string
const (

	//
	// When associating an activity to a line item the activity must belong to the same
	// advertiser as the line item.
	//
	LineItemActivityAssociationError_ReasonINVALID_ACTIVITY_FOR_ADVERTISER LineItemActivityAssociationError_Reason = "INVALID_ACTIVITY_FOR_ADVERTISER"

	//
	// Activities can only be associated with line items of {@link CostType.CPA}.
	//
	LineItemActivityAssociationError_ReasonINVALID_COST_TYPE_FOR_ASSOCIATION LineItemActivityAssociationError_Reason = "INVALID_COST_TYPE_FOR_ASSOCIATION"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	LineItemActivityAssociationError_ReasonUNKNOWN LineItemActivityAssociationError_Reason = "UNKNOWN"
)

type LineItemCreativeAssociationError

type LineItemCreativeAssociationError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *LineItemCreativeAssociationError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type LineItemCreativeAssociationError_Reason

type LineItemCreativeAssociationError_Reason string
const (

	//
	// Cannot associate a creative to the wrong advertiser
	//
	LineItemCreativeAssociationError_ReasonCREATIVE_IN_WRONG_ADVERTISERS_LIBRARY LineItemCreativeAssociationError_Reason = "CREATIVE_IN_WRONG_ADVERTISERS_LIBRARY"

	//
	// The creative type being associated is a invalid for the line item type.
	//
	LineItemCreativeAssociationError_ReasonINVALID_LINEITEM_CREATIVE_PAIRING LineItemCreativeAssociationError_Reason = "INVALID_LINEITEM_CREATIVE_PAIRING"

	//
	// Association start date cannot be before line item start date
	//
	LineItemCreativeAssociationError_ReasonSTARTDATE_BEFORE_LINEITEM_STARTDATE LineItemCreativeAssociationError_Reason = "STARTDATE_BEFORE_LINEITEM_STARTDATE"

	//
	// Association start date cannot be same as or after line item end date
	//
	LineItemCreativeAssociationError_ReasonSTARTDATE_NOT_BEFORE_LINEITEM_ENDDATE LineItemCreativeAssociationError_Reason = "STARTDATE_NOT_BEFORE_LINEITEM_ENDDATE"

	//
	// Association end date cannot be after line item end date
	//
	LineItemCreativeAssociationError_ReasonENDDATE_AFTER_LINEITEM_ENDDATE LineItemCreativeAssociationError_Reason = "ENDDATE_AFTER_LINEITEM_ENDDATE"

	//
	// Association end date cannot be same as or before line item start date
	//
	LineItemCreativeAssociationError_ReasonENDDATE_NOT_AFTER_LINEITEM_STARTDATE LineItemCreativeAssociationError_Reason = "ENDDATE_NOT_AFTER_LINEITEM_STARTDATE"

	//
	// Association end date cannot be same as or before its start date
	//
	LineItemCreativeAssociationError_ReasonENDDATE_NOT_AFTER_STARTDATE LineItemCreativeAssociationError_Reason = "ENDDATE_NOT_AFTER_STARTDATE"

	//
	// Association end date cannot be in the past.
	//
	LineItemCreativeAssociationError_ReasonENDDATE_IN_THE_PAST LineItemCreativeAssociationError_Reason = "ENDDATE_IN_THE_PAST"

	//
	// Cannot copy an association to the same line item without
	// creating new creative
	//
	LineItemCreativeAssociationError_ReasonCANNOT_COPY_WITHIN_SAME_LINE_ITEM LineItemCreativeAssociationError_Reason = "CANNOT_COPY_WITHIN_SAME_LINE_ITEM"

	//
	// Programmatic only supports the "Video" redirect type.
	//
	LineItemCreativeAssociationError_ReasonUNSUPPORTED_CREATIVE_VAST_REDIRECT_TYPE LineItemCreativeAssociationError_Reason = "UNSUPPORTED_CREATIVE_VAST_REDIRECT_TYPE"

	//
	// Programmatic does not support YouTube hosted creatives.
	//
	LineItemCreativeAssociationError_ReasonUNSUPPORTED_YOUTUBE_HOSTED_CREATIVE LineItemCreativeAssociationError_Reason = "UNSUPPORTED_YOUTUBE_HOSTED_CREATIVE"

	//
	// Programmatic creatives can only be assigned to one line item.
	//
	LineItemCreativeAssociationError_ReasonPROGRAMMATIC_CREATIVES_CAN_ONLY_BE_ASSIGNED_TO_ONE_LINE_ITEM LineItemCreativeAssociationError_Reason = "PROGRAMMATIC_CREATIVES_CAN_ONLY_BE_ASSIGNED_TO_ONE_LINE_ITEM"

	//
	// Cannot activate a line item creative association if the associated creative is inactive.
	//
	LineItemCreativeAssociationError_ReasonCANNOT_ACTIVATE_ASSOCIATION_WITH_INACTIVE_CREATIVE LineItemCreativeAssociationError_Reason = "CANNOT_ACTIVATE_ASSOCIATION_WITH_INACTIVE_CREATIVE"

	//
	// Cannot create programmatic creatives.
	//
	LineItemCreativeAssociationError_ReasonCANNOT_CREATE_PROGRAMMATIC_CREATIVES LineItemCreativeAssociationError_Reason = "CANNOT_CREATE_PROGRAMMATIC_CREATIVES"

	//
	// Cannot update programmatic creatives.
	//
	LineItemCreativeAssociationError_ReasonCANNOT_UPDATE_PROGRAMMATIC_CREATIVES LineItemCreativeAssociationError_Reason = "CANNOT_UPDATE_PROGRAMMATIC_CREATIVES"

	//
	// Cannot associate a creative with a line item if only one of them is set-top box enabled.
	//
	LineItemCreativeAssociationError_ReasonCREATIVE_AND_LINE_ITEM_MUST_BOTH_BE_SET_TOP_BOX_ENABLED LineItemCreativeAssociationError_Reason = "CREATIVE_AND_LINE_ITEM_MUST_BOTH_BE_SET_TOP_BOX_ENABLED"

	//
	// Cannot delete associations between set-top box enabled line items and set-top box enabled
	// creatives.
	//
	LineItemCreativeAssociationError_ReasonCANNOT_DELETE_SET_TOP_BOX_ENABLED_ASSOCIATIONS LineItemCreativeAssociationError_Reason = "CANNOT_DELETE_SET_TOP_BOX_ENABLED_ASSOCIATIONS"

	//
	// Creative rotation weights must be integers.
	//
	LineItemCreativeAssociationError_ReasonSET_TOP_BOX_CREATIVE_ROTATION_WEIGHT_MUST_BE_INTEGER LineItemCreativeAssociationError_Reason = "SET_TOP_BOX_CREATIVE_ROTATION_WEIGHT_MUST_BE_INTEGER"

	//
	// Creative rotation weights are only valid when creative rotation type is set to
	// {@link CreativeRotationType#MANUAL}.
	//
	LineItemCreativeAssociationError_ReasonINVALID_CREATIVE_ROTATION_TYPE_FOR_MANUAL_WEIGHT LineItemCreativeAssociationError_Reason = "INVALID_CREATIVE_ROTATION_TYPE_FOR_MANUAL_WEIGHT"

	//
	// The code snippet of a creative must contain a click macro
	// (%%CLICK_URL_ESC%% or %%CLICK_URL_UNESC%%).
	//
	LineItemCreativeAssociationError_ReasonCLICK_MACROS_REQUIRED LineItemCreativeAssociationError_Reason = "CLICK_MACROS_REQUIRED"

	//
	// The code snippet of a creative must not contain a view macro
	// (%%VIEW_URL_ESC%% or %%VIEW_URL_UNESC%%).
	//
	LineItemCreativeAssociationError_ReasonVIEW_MACROS_NOT_ALLOWED LineItemCreativeAssociationError_Reason = "VIEW_MACROS_NOT_ALLOWED"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	LineItemCreativeAssociationError_ReasonUNKNOWN LineItemCreativeAssociationError_Reason = "UNKNOWN"
)

type LineItemError

type LineItemError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *LineItemError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type LineItemError_Reason

type LineItemError_Reason string
const (

	//
	// Some changes may not be allowed because a line item has already started.
	//
	LineItemError_ReasonALREADY_STARTED LineItemError_Reason = "ALREADY_STARTED"

	//
	// Update reservation is not allowed because a line item has
	// already started, users must pause the line item first.
	//
	LineItemError_ReasonUPDATE_RESERVATION_NOT_ALLOWED LineItemError_Reason = "UPDATE_RESERVATION_NOT_ALLOWED"

	//
	// Roadblocking to display all creatives is not allowed.
	//
	LineItemError_ReasonALL_ROADBLOCK_NOT_ALLOWED LineItemError_Reason = "ALL_ROADBLOCK_NOT_ALLOWED"

	//
	// Companion delivery to display all creatives is not allowed.
	//
	LineItemError_ReasonALL_COMPANION_DELIVERY_NOT_ALLOWED LineItemError_Reason = "ALL_COMPANION_DELIVERY_NOT_ALLOWED"

	//
	// Roadblocking to display all master and companion creative set is not allowed.
	//
	LineItemError_ReasonCREATIVE_SET_ROADBLOCK_NOT_ALLOWED LineItemError_Reason = "CREATIVE_SET_ROADBLOCK_NOT_ALLOWED"

	//
	// Fractional percentage is not allowed.
	//
	LineItemError_ReasonFRACTIONAL_PERCENTAGE_NOT_ALLOWED LineItemError_Reason = "FRACTIONAL_PERCENTAGE_NOT_ALLOWED"

	//
	// For certain LineItem configurations discounts are not allowed.
	//
	LineItemError_ReasonDISCOUNT_NOT_ALLOWED LineItemError_Reason = "DISCOUNT_NOT_ALLOWED"

	//
	// Updating a canceled line item is not allowed.
	//
	LineItemError_ReasonUPDATE_CANCELED_LINE_ITEM_NOT_ALLOWED LineItemError_Reason = "UPDATE_CANCELED_LINE_ITEM_NOT_ALLOWED"

	//
	// Updating a pending approval line item is not allowed.
	//
	LineItemError_ReasonUPDATE_PENDING_APPROVAL_LINE_ITEM_NOT_ALLOWED LineItemError_Reason = "UPDATE_PENDING_APPROVAL_LINE_ITEM_NOT_ALLOWED"

	//
	// Updating an archived line item is not allowed.
	//
	LineItemError_ReasonUPDATE_ARCHIVED_LINE_ITEM_NOT_ALLOWED LineItemError_Reason = "UPDATE_ARCHIVED_LINE_ITEM_NOT_ALLOWED"

	//
	// Create or update legacy dfp line item type is not allowed.
	//
	LineItemError_ReasonCREATE_OR_UPDATE_LEGACY_DFP_LINE_ITEM_TYPE_NOT_ALLOWED LineItemError_Reason = "CREATE_OR_UPDATE_LEGACY_DFP_LINE_ITEM_TYPE_NOT_ALLOWED"

	//
	// Copying line item from different company (advertiser)
	// to the same order is not allowed.
	//
	LineItemError_ReasonCOPY_LINE_ITEM_FROM_DIFFERENT_COMPANY_NOT_ALLOWED LineItemError_Reason = "COPY_LINE_ITEM_FROM_DIFFERENT_COMPANY_NOT_ALLOWED"

	//
	// The size is invalid for the specified platform.
	//
	LineItemError_ReasonINVALID_SIZE_FOR_PLATFORM LineItemError_Reason = "INVALID_SIZE_FOR_PLATFORM"

	//
	// The line item type is invalid for the specified platform.
	//
	LineItemError_ReasonINVALID_LINE_ITEM_TYPE_FOR_PLATFORM LineItemError_Reason = "INVALID_LINE_ITEM_TYPE_FOR_PLATFORM"

	//
	// The web property cannot be served on the specified platform.
	//
	LineItemError_ReasonINVALID_WEB_PROPERTY_FOR_PLATFORM LineItemError_Reason = "INVALID_WEB_PROPERTY_FOR_PLATFORM"

	//
	// The web property cannot be served on the specified environment.
	//
	LineItemError_ReasonINVALID_WEB_PROPERTY_FOR_ENVIRONMENT LineItemError_Reason = "INVALID_WEB_PROPERTY_FOR_ENVIRONMENT"

	//
	// AFMA backfill not supported.
	//
	LineItemError_ReasonAFMA_BACKFILL_NOT_ALLOWED LineItemError_Reason = "AFMA_BACKFILL_NOT_ALLOWED"

	//
	// Environment type cannot change once saved.
	//
	LineItemError_ReasonUPDATE_ENVIRONMENT_TYPE_NOT_ALLOWED LineItemError_Reason = "UPDATE_ENVIRONMENT_TYPE_NOT_ALLOWED"

	//
	// The placeholders are invalid because they contain companions,
	// but the line item does not support companions.
	//
	LineItemError_ReasonCOMPANIONS_NOT_ALLOWED LineItemError_Reason = "COMPANIONS_NOT_ALLOWED"

	//
	// The placeholders are invalid because some of them are roadblocks,
	// and some are not.  Either all roadblock placeholders must contain
	// companions, or no placeholders may contain companions.  This does
	// not apply to video creative sets.
	//
	LineItemError_ReasonROADBLOCKS_WITH_NONROADBLOCKS_NOT_ALLOWED LineItemError_Reason = "ROADBLOCKS_WITH_NONROADBLOCKS_NOT_ALLOWED"

	//
	// A line item cannot be updated from having
	// {@link RoadblockingType#CREATIVE_SET} to having a different
	// RoadblockingType, or vice versa.
	//
	LineItemError_ReasonCANNOT_UPDATE_TO_OR_FROM_CREATIVE_SET_ROADBLOCK LineItemError_Reason = "CANNOT_UPDATE_TO_OR_FROM_CREATIVE_SET_ROADBLOCK"

	//
	// Can not change from a backfill line item type once creatives have been
	// assigned.
	//
	LineItemError_ReasonUPDATE_FROM_BACKFILL_LINE_ITEM_TYPE_NOT_ALLOWED LineItemError_Reason = "UPDATE_FROM_BACKFILL_LINE_ITEM_TYPE_NOT_ALLOWED"

	//
	// Can not change to a backfill line item type once creatives have been
	// assigned.
	//
	LineItemError_ReasonUPDATE_TO_BACKFILL_LINE_ITEM_TYPE_NOT_ALLOWED LineItemError_Reason = "UPDATE_TO_BACKFILL_LINE_ITEM_TYPE_NOT_ALLOWED"

	//
	// Can not change to backfill web property once creatives have been
	// assigned.
	//
	LineItemError_ReasonUPDATE_BACKFILL_WEB_PROPERTY_NOT_ALLOWED LineItemError_Reason = "UPDATE_BACKFILL_WEB_PROPERTY_NOT_ALLOWED"

	//
	// The companion delivery option is not valid for your environment type.
	//
	LineItemError_ReasonINVALID_COMPANION_DELIVERY_OPTION_FOR_ENVIRONMENT_TYPE LineItemError_Reason = "INVALID_COMPANION_DELIVERY_OPTION_FOR_ENVIRONMENT_TYPE"

	//
	// Companion backfill is enabled but environment type not video.
	//
	LineItemError_ReasonCOMPANION_BACKFILL_REQUIRES_VIDEO LineItemError_Reason = "COMPANION_BACKFILL_REQUIRES_VIDEO"

	//
	// Companion delivery options require Ad Manager 360 networks.
	//
	LineItemError_ReasonCOMPANION_DELIVERY_OPTION_REQUIRE_PREMIUM LineItemError_Reason = "COMPANION_DELIVERY_OPTION_REQUIRE_PREMIUM"

	//
	// The master size of placeholders have duplicates.
	//
	LineItemError_ReasonDUPLICATE_MASTER_SIZES LineItemError_Reason = "DUPLICATE_MASTER_SIZES"

	//
	// The line item priority is invalid if for dynamic allocation line items
	// it is different than the default for free publishers.  When allowed,
	// Ad Manager 360 users can change the priority to any value.
	//
	LineItemError_ReasonINVALID_PRIORITY_FOR_LINE_ITEM_TYPE LineItemError_Reason = "INVALID_PRIORITY_FOR_LINE_ITEM_TYPE"

	//
	// The environment type is not valid.
	//
	LineItemError_ReasonINVALID_ENVIRONMENT_TYPE LineItemError_Reason = "INVALID_ENVIRONMENT_TYPE"

	//
	// The environment type is not valid for the target platform.
	//
	LineItemError_ReasonINVALID_ENVIRONMENT_TYPE_FOR_PLATFORM LineItemError_Reason = "INVALID_ENVIRONMENT_TYPE_FOR_PLATFORM"

	//
	// Only {@link LineItemType#STANDARD} line items can be auto extended.
	//
	LineItemError_ReasonINVALID_TYPE_FOR_AUTO_EXTENSION LineItemError_Reason = "INVALID_TYPE_FOR_AUTO_EXTENSION"

	//
	// Video line items cannot change the roadblocking type.
	//
	LineItemError_ReasonVIDEO_INVALID_ROADBLOCKING LineItemError_Reason = "VIDEO_INVALID_ROADBLOCKING"

	//
	// The backfill feature is not enabled according to your features.
	//
	LineItemError_ReasonBACKFILL_TYPE_NOT_ALLOWED LineItemError_Reason = "BACKFILL_TYPE_NOT_ALLOWED"

	//
	// The web property is invalid. A line item must have an appropriate web property selected.
	//
	LineItemError_ReasonINVALID_BACKFILL_LINK_TYPE LineItemError_Reason = "INVALID_BACKFILL_LINK_TYPE"

	//
	// All line items in a programmatic order must have web property codes from the same account.
	//
	LineItemError_ReasonDIFFERENT_BACKFILL_ACCOUNT LineItemError_Reason = "DIFFERENT_BACKFILL_ACCOUNT"

	//
	// Companion delivery options are not allowed with dynamic allocation line
	// items.
	//
	LineItemError_ReasonCOMPANION_DELIVERY_OPTIONS_NOT_ALLOWED_WITH_BACKFILL LineItemError_Reason = "COMPANION_DELIVERY_OPTIONS_NOT_ALLOWED_WITH_BACKFILL"

	//
	// Dynamic allocation using the AdExchange should always use an AFC web
	// property.
	//
	LineItemError_ReasonINVALID_WEB_PROPERTY_FOR_ADX_BACKFILL LineItemError_Reason = "INVALID_WEB_PROPERTY_FOR_ADX_BACKFILL"

	//
	// CPM for backfill inventory must be 0.
	//
	LineItemError_ReasonINVALID_COST_PER_UNIT_FOR_BACKFILL LineItemError_Reason = "INVALID_COST_PER_UNIT_FOR_BACKFILL"

	//
	// Aspect ratio sizes cannot be used with video line items.
	//
	LineItemError_ReasonINVALID_SIZE_FOR_ENVIRONMENT LineItemError_Reason = "INVALID_SIZE_FOR_ENVIRONMENT"

	//
	// The specified target platform is not allowed.
	//
	LineItemError_ReasonTARGET_PLATOFRM_NOT_ALLOWED LineItemError_Reason = "TARGET_PLATOFRM_NOT_ALLOWED"

	//
	// Currency on a line item must be one of the specified network currencies.
	//
	LineItemError_ReasonINVALID_LINE_ITEM_CURRENCY LineItemError_Reason = "INVALID_LINE_ITEM_CURRENCY"

	//
	// All money fields on a line item must specify the same currency.
	//
	LineItemError_ReasonLINE_ITEM_CANNOT_HAVE_MULTIPLE_CURRENCIES LineItemError_Reason = "LINE_ITEM_CANNOT_HAVE_MULTIPLE_CURRENCIES"

	//
	// Once a line item has moved into a a delivering state the currency cannot be changed.
	//
	LineItemError_ReasonCANNOT_CHANGE_CURRENCY LineItemError_Reason = "CANNOT_CHANGE_CURRENCY"

	//
	// A DateTime associated with the line item is not valid.
	//
	LineItemError_ReasonINVALID_LINE_ITEM_DATE_TIME LineItemError_Reason = "INVALID_LINE_ITEM_DATE_TIME"

	//
	// CPA {@link LineItem line items} must specify a zero cost for the
	// {@link LineItem#costPerUnit}.
	//
	LineItemError_ReasonINVALID_COST_PER_UNIT_FOR_CPA LineItemError_Reason = "INVALID_COST_PER_UNIT_FOR_CPA"

	//
	// Once a {@link LineItem} is activated its {@link LineItem#costPerUnit} cannot be updated
	// to/from CPA.
	//
	LineItemError_ReasonUPDATE_CPA_COST_TYPE_NOT_ALLOWED LineItemError_Reason = "UPDATE_CPA_COST_TYPE_NOT_ALLOWED"

	//
	// Once a {@link LineItem} is activated its {@link LineItem#costPerUnit} cannot be updated
	// to/from Viewable CPM.
	//
	LineItemError_ReasonUPDATE_VCPM_COST_TYPE_NOT_ALLOWED LineItemError_Reason = "UPDATE_VCPM_COST_TYPE_NOT_ALLOWED"

	//
	// A {@link LineItem} with master/companion creative placeholders cannot have Viewable CPM
	// as its {@link LineItem#costPerUnit}.
	//
	LineItemError_ReasonMASTER_COMPANION_LINE_ITEM_CANNOT_HAVE_VCPM_COST_TYPE LineItemError_Reason = "MASTER_COMPANION_LINE_ITEM_CANNOT_HAVE_VCPM_COST_TYPE"

	//
	// There cannot be goals with duplicated unit type among the secondary goals for a
	// {@link LineItem line items}.
	//
	LineItemError_ReasonDUPLICATED_UNIT_TYPE LineItemError_Reason = "DUPLICATED_UNIT_TYPE"

	//
	// The secondary goals of a {@link LineItem line items} must have the same goal type.
	//
	LineItemError_ReasonMULTIPLE_GOAL_TYPE_NOT_ALLOWED LineItemError_Reason = "MULTIPLE_GOAL_TYPE_NOT_ALLOWED"

	//
	// For a CPA {@link LineItem line item}, the possible combinations for secondary goals must
	// be either click-through conversion only, click-through conversion with view-through
	// conversion or total conversion only. For a Viewable CPM {@link LineItem line item} or a
	// CPM based Sponsorship {@link LineItem line item}, its secondary goal has to be
	// impression-based.
	//
	LineItemError_ReasonINVALID_UNIT_TYPE_COMBINATION_FOR_SECONDARY_GOALS LineItemError_Reason = "INVALID_UNIT_TYPE_COMBINATION_FOR_SECONDARY_GOALS"

	//
	// One or more of the targeting names specified by a creative placeholder or line item
	// creative association were not found on the line item.
	//
	LineItemError_ReasonINVALID_CREATIVE_TARGETING_NAME LineItemError_Reason = "INVALID_CREATIVE_TARGETING_NAME"

	//
	// Creative targeting expressions on the line item can only have custom criteria targeting
	// with {@link CustomTargetingValue.MatchType#EXACT}.
	//
	LineItemError_ReasonINVALID_CREATIVE_CUSTOM_TARGETING_MATCH_TYPE LineItemError_Reason = "INVALID_CREATIVE_CUSTOM_TARGETING_MATCH_TYPE"

	//
	// Line item with creative targeting expressions cannot have creative rotation type set to
	// {@link CreativeRotationType#SEQUENTIAL}.
	//
	LineItemError_ReasonINVALID_CREATIVE_ROTATION_TYPE_WITH_CREATIVE_TARGETING LineItemError_Reason = "INVALID_CREATIVE_ROTATION_TYPE_WITH_CREATIVE_TARGETING"

	//
	// Line items cannot overbook inventory when applying creative-level targeting if the
	// originating proposal line item did not overbook inventory. Remove creative-level targeting
	// and try again.
	//
	LineItemError_ReasonCANNOT_OVERBOOK_WITH_CREATIVE_TARGETING LineItemError_Reason = "CANNOT_OVERBOOK_WITH_CREATIVE_TARGETING"

	//
	// For a managed line item, inventory sizes must match sizes that are set on the originating
	// proposal line item. In the case that a size is broken out by creative-level targeting,
	// the sum of the creative counts for each size must equal the expected creative count that
	// is set for that size on the originating proposal line item.
	//
	LineItemError_ReasonPLACEHOLDERS_DO_NOT_MATCH_PROPOSAL LineItemError_Reason = "PLACEHOLDERS_DO_NOT_MATCH_PROPOSAL"

	//
	// The line item type is not supported for this API version.
	//
	LineItemError_ReasonUNSUPPORTED_LINE_ITEM_TYPE_FOR_THIS_API_VERSION LineItemError_Reason = "UNSUPPORTED_LINE_ITEM_TYPE_FOR_THIS_API_VERSION"

	//
	// Placeholders can only have native creative templates.
	//
	LineItemError_ReasonNATIVE_CREATIVE_TEMPLATE_REQUIRED LineItemError_Reason = "NATIVE_CREATIVE_TEMPLATE_REQUIRED"

	//
	// Non-native placeholders cannot have creative templates.
	//
	LineItemError_ReasonCANNOT_HAVE_CREATIVE_TEMPLATE LineItemError_Reason = "CANNOT_HAVE_CREATIVE_TEMPLATE"

	//
	// Cannot include native creative templates in the placeholders for Ad Exchange line items.
	//
	LineItemError_ReasonCANNOT_INCLUDE_NATIVE_CREATIVE_TEMPLATE LineItemError_Reason = "CANNOT_INCLUDE_NATIVE_CREATIVE_TEMPLATE"

	//
	// Cannot include native placeholders without native creative templates for direct-sold line
	// items.
	//
	LineItemError_ReasonCANNOT_INCLUDE_NATIVE_PLACEHOLDER_WITHOUT_TEMPLATE_ID LineItemError_Reason = "CANNOT_INCLUDE_NATIVE_PLACEHOLDER_WITHOUT_TEMPLATE_ID"

	//
	// For forecasting only, error when line item has duration, but no creative sizes specified.
	//
	LineItemError_ReasonNO_SIZE_WITH_DURATION LineItemError_Reason = "NO_SIZE_WITH_DURATION"

	//
	// Used when the company pointed to by the viewabilityProviderCompanyId is not of type
	// VIEWABILITY_PROVIDER.
	//
	LineItemError_ReasonINVALID_VIEWABILITY_PROVIDER_COMPANY LineItemError_Reason = "INVALID_VIEWABILITY_PROVIDER_COMPANY"

	//
	// An error occurred while accessing the custom pacing curve Google Cloud Storage bucket.
	//
	LineItemError_ReasonCANNOT_ACCESS_CUSTOM_PACING_CURVE_CLOUD_STORAGE_BUCKET LineItemError_Reason = "CANNOT_ACCESS_CUSTOM_PACING_CURVE_CLOUD_STORAGE_BUCKET"

	//
	// CMS Metadata targeting is only supported for video line items.
	//
	LineItemError_ReasonCMS_METADATA_LINE_ITEM_ENVIRONMENT_TYPE_NOT_SUPPORTED LineItemError_Reason = "CMS_METADATA_LINE_ITEM_ENVIRONMENT_TYPE_NOT_SUPPORTED"

	//
	// The {@code SkippableAdType} is not allowed.
	//
	LineItemError_ReasonSKIPPABLE_AD_TYPE_NOT_ALLOWED LineItemError_Reason = "SKIPPABLE_AD_TYPE_NOT_ALLOWED"

	//
	// Custom pacing curve start time must match the line item's start time.
	//
	LineItemError_ReasonCUSTOM_PACING_CURVE_START_TIME_MUST_MATCH_LINE_ITEM_START_TIME LineItemError_Reason = "CUSTOM_PACING_CURVE_START_TIME_MUST_MATCH_LINE_ITEM_START_TIME"

	//
	// Custom pacing curve goal start time must be before line item end time.
	//
	LineItemError_ReasonCUSTOM_PACING_CURVE_START_TIME_PAST_LINE_ITEM_END_TIME LineItemError_Reason = "CUSTOM_PACING_CURVE_START_TIME_PAST_LINE_ITEM_END_TIME"

	//
	// The line item type is invalid for the specified delivery forecast source.
	//
	LineItemError_ReasonINVALID_LINE_ITEM_TYPE_FOR_DELIVERY_FORECAST_SOURCE LineItemError_Reason = "INVALID_LINE_ITEM_TYPE_FOR_DELIVERY_FORECAST_SOURCE"

	//
	// The sum of the custom pacing goal amounts is invalid.
	//
	LineItemError_ReasonINVALID_TOTAL_CUSTOM_PACING_GOAL_AMOUNTS LineItemError_Reason = "INVALID_TOTAL_CUSTOM_PACING_GOAL_AMOUNTS"

	//
	// Copying line items with custom pacing curves that are totally in the past is not allowed.
	//
	LineItemError_ReasonCOPY_LINE_ITEM_WITH_CUSTOM_PACING_CURVE_FULLY_IN_PAST_NOT_ALLOWED LineItemError_Reason = "COPY_LINE_ITEM_WITH_CUSTOM_PACING_CURVE_FULLY_IN_PAST_NOT_ALLOWED"

	//
	// The last custom pacing goal cannot be zero.
	//
	LineItemError_ReasonLAST_CUSTOM_PACING_GOAL_AMOUNT_CANNOT_BE_ZERO LineItemError_Reason = "LAST_CUSTOM_PACING_GOAL_AMOUNT_CANNOT_BE_ZERO"

	//
	// GRP paced line items cannot have absolute custom pacing curve goals.
	//
	LineItemError_ReasonGRP_PACED_LINE_ITEM_CANNOT_HAVE_ABSOLUTE_CUSTOM_PACING_CURVE_GOALS LineItemError_Reason = "GRP_PACED_LINE_ITEM_CANNOT_HAVE_ABSOLUTE_CUSTOM_PACING_CURVE_GOALS"

	//
	// {@link LineItem line item} has invalid video creative duration.
	//
	LineItemError_ReasonINVALID_MAX_VIDEO_CREATIVE_DURATION LineItemError_Reason = "INVALID_MAX_VIDEO_CREATIVE_DURATION"

	//
	// Native size types must by 1x1.
	//
	LineItemError_ReasonINVALID_NATIVE_SIZE LineItemError_Reason = "INVALID_NATIVE_SIZE"

	//
	// For AdExchange Line Items, the targeted request platform must match the syndication type of
	// the web property code.
	//
	LineItemError_ReasonINVALID_TARGETED_REQUEST_PLATFORM_FOR_WEB_PROPERTY_CODE LineItemError_Reason = "INVALID_TARGETED_REQUEST_PLATFORM_FOR_WEB_PROPERTY_CODE"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	LineItemError_ReasonUNKNOWN LineItemError_Reason = "UNKNOWN"
)

type LineItemFlightDateError

type LineItemFlightDateError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *LineItemFlightDateError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type LineItemFlightDateError_Reason

type LineItemFlightDateError_Reason string
const (
	LineItemFlightDateError_ReasonSTART_DATE_TIME_IS_IN_PAST LineItemFlightDateError_Reason = "START_DATE_TIME_IS_IN_PAST"

	LineItemFlightDateError_ReasonEND_DATE_TIME_IS_IN_PAST LineItemFlightDateError_Reason = "END_DATE_TIME_IS_IN_PAST"

	LineItemFlightDateError_ReasonEND_DATE_TIME_NOT_AFTER_START_TIME LineItemFlightDateError_Reason = "END_DATE_TIME_NOT_AFTER_START_TIME"

	LineItemFlightDateError_ReasonEND_DATE_TIME_TOO_LATE LineItemFlightDateError_Reason = "END_DATE_TIME_TOO_LATE"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	LineItemFlightDateError_ReasonUNKNOWN LineItemFlightDateError_Reason = "UNKNOWN"
)

type LineItemOperationError

type LineItemOperationError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *LineItemOperationError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type LineItemOperationError_Reason

type LineItemOperationError_Reason string
const (

	//
	// The operation is not allowed due to lack of permissions.
	//
	LineItemOperationError_ReasonNOT_ALLOWED LineItemOperationError_Reason = "NOT_ALLOWED"

	//
	// The operation is not applicable for the current state of the
	// {@link LineItem}.
	//
	LineItemOperationError_ReasonNOT_APPLICABLE LineItemOperationError_Reason = "NOT_APPLICABLE"

	//
	// The {@link LineItem} is completed. A {@link LineItemAction} cannot
	// be applied to a line item that is completed.
	//
	LineItemOperationError_ReasonHAS_COMPLETED LineItemOperationError_Reason = "HAS_COMPLETED"

	//
	// The {@link LineItem} has no active creatives. A line item cannot be
	// activated with no active creatives.
	//
	LineItemOperationError_ReasonHAS_NO_ACTIVE_CREATIVES LineItemOperationError_Reason = "HAS_NO_ACTIVE_CREATIVES"

	//
	// A {@link LineItem} of type {@link LineItemType#LEGACY_DFP} cannot be
	// Activated.
	//
	LineItemOperationError_ReasonCANNOT_ACTIVATE_LEGACY_DFP_LINE_ITEM LineItemOperationError_Reason = "CANNOT_ACTIVATE_LEGACY_DFP_LINE_ITEM"

	//
	// A {@link LineItem} with publisher creative source cannot be activated if the corresponding
	// deal is not yet configured by the buyer.
	//
	LineItemOperationError_ReasonCANNOT_ACTIVATE_UNCONFIGURED_LINE_ITEM LineItemOperationError_Reason = "CANNOT_ACTIVATE_UNCONFIGURED_LINE_ITEM"

	//
	// Deleting an {@link LineItem} that has delivered is not allowed
	//
	LineItemOperationError_ReasonCANNOT_DELETE_DELIVERED_LINE_ITEM LineItemOperationError_Reason = "CANNOT_DELETE_DELIVERED_LINE_ITEM"

	//
	// Reservation cannot be made for line item because the
	// {@link LineItem#advertiserId} it is associated with has
	// {@link Company#creditStatus} that is not {@code ACTIVE}
	// or {@code ON_HOLD}.
	//
	LineItemOperationError_ReasonCANNOT_RESERVE_COMPANY_CREDIT_STATUS_NOT_ACTIVE LineItemOperationError_Reason = "CANNOT_RESERVE_COMPANY_CREDIT_STATUS_NOT_ACTIVE"

	//
	// Cannot activate line item  because the {@link LineItem#advertiserId}
	// it is associated with has {@link Company#creditStatus} that is not
	// {@code ACTIVE}, {@code INACTIVE}, or {@code ON_HOLD}.
	//
	LineItemOperationError_ReasonCANNOT_ACTIVATE_INVALID_COMPANY_CREDIT_STATUS LineItemOperationError_Reason = "CANNOT_ACTIVATE_INVALID_COMPANY_CREDIT_STATUS"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	LineItemOperationError_ReasonUNKNOWN LineItemOperationError_Reason = "UNKNOWN"
)

type LineItemTemplate

type LineItemTemplate struct {

	//
	// Uniquely identifies the {@code LineItemTemplate}. This attribute is read-only and is assigned
	// by Google when a template is created.
	//
	Id int64 `xml:"id,omitempty" json:"id,omitempty"`

	//
	// The name of the {@code LineItemTemplate}. This attribute is required.
	//
	Name string `xml:"name,omitempty" json:"name,omitempty"`

	//
	// Whether or not the {@code LineItemTemplate} represents the default choices for creating a
	// {@code LineItem}. Only one default {@code LineItemTemplate} is allowed per {@code Network}.
	// This attribute is readonly.
	//
	IsDefault bool `xml:"isDefault,omitempty" json:"isDefault,omitempty"`

	//
	// The default {@link LineItem#name name} of a new {@code LineItem}. This attribute is optional
	// and has a maximum length of 127 characters.
	//
	LineItemName string `xml:"lineItemName,omitempty" json:"lineItemName,omitempty"`

	//
	// The default value for the {@link LineItem#enabledForSameAdvertiserException} field of a new
	// {@code LineItem}. This attribute is required.
	//
	EnabledForSameAdvertiserException bool `xml:"enabledForSameAdvertiserException,omitempty" json:"enabledForSameAdvertiserException,omitempty"`

	//
	// The default {@link LineItem#notes notes} for a new {@code LineItem}. This attribute is optional
	// and has a maximum length of 65,535 characters.
	//
	Notes string `xml:"notes,omitempty" json:"notes,omitempty"`

	//
	// The default {@link LineItem#lineItemType type} of a new {@code LineItem}. This attribute is
	// required.
	//
	LineItemType *LineItemType `xml:"lineItemType,omitempty" json:"lineItemType,omitempty"`

	//
	// The default {@link LineItem#deliveryRateType delivery strategy} for a new {@code LineItem}.
	// This attribute is required.
	//
	DeliveryRateType *DeliveryRateType `xml:"deliveryRateType,omitempty" json:"deliveryRateType,omitempty"`

	//
	// The default {@link LineItem#roadblockingType roadblocking strategy} for a new {@code LineItem}.
	// This attribute is required.
	//
	RoadblockingType *RoadblockingType `xml:"roadblockingType,omitempty" json:"roadblockingType,omitempty"`

	//
	// The default {@link LineItem#creativeRotationType creative rotation strategy} for a new {@code
	// LineItem}. This attribute is required.
	//
	CreativeRotationType *CreativeRotationType `xml:"creativeRotationType,omitempty" json:"creativeRotationType,omitempty"`
}

type LineItemTemplatePage

type LineItemTemplatePage struct {

	//
	// The size of the total result set to which this page belongs.
	//
	TotalResultSetSize int32 `xml:"totalResultSetSize,omitempty" json:"totalResultSetSize,omitempty"`

	//
	// The absolute index in the total result set on which this page begins.
	//
	StartIndex int32 `xml:"startIndex,omitempty" json:"startIndex,omitempty"`

	//
	// The collection of line item templates contained within this page.
	//
	Results []*LineItemTemplate `xml:"results,omitempty" json:"results,omitempty"`
}

type LineItemTemplateServiceInterface

type LineItemTemplateServiceInterface interface {

	// Error can be either of the following types:
	//
	//   - ApiException
	/*
	   Gets a {@link LineItemTemplatePage} of {@link LineItemTemplate} objects that satisfy the given
	   {@link Statement#query}. The following fields are supported for filtering:

	   <table>
	   <tr>
	   <th scope="col">PQL Property</th> <th scope="col">Object Property</th>
	   </tr>
	   <tr>
	   <td>{@code id}</td>
	   <td>{@link LineItemTemplate#id}</td>
	   </tr>
	   </table>
	*/
	GetLineItemTemplatesByStatement(request *GetLineItemTemplatesByStatement) (*GetLineItemTemplatesByStatementResponse, error)

	GetLineItemTemplatesByStatementContext(ctx context.Context, request *GetLineItemTemplatesByStatement) (*GetLineItemTemplatesByStatementResponse, error)
}

func NewLineItemTemplateServiceInterface

func NewLineItemTemplateServiceInterface(client *soap.Client) LineItemTemplateServiceInterface

type LineItemType

type LineItemType string
const (

	//
	// The type of {@link LineItem} for which a percentage of all the impressions that are being sold
	// are reserved.
	//
	LineItemTypeSPONSORSHIP LineItemType = "SPONSORSHIP"

	//
	// The type of {@link LineItem} for which a fixed quantity of impressions or clicks are reserved.
	//
	LineItemTypeSTANDARD LineItemType = "STANDARD"

	//
	// The type of {@link LineItem} most commonly used to fill a site's unsold
	// inventory if not contractually obligated to deliver a requested number of
	// impressions. Users specify the daily percentage of unsold impressions or
	// clicks when creating this line item.
	//
	LineItemTypeNETWORK LineItemType = "NETWORK"

	//
	// The type of {@link LineItem} for which a fixed quantity of impressions or
	// clicks will be delivered at a priority lower than the
	// {@link LineItemType#STANDARD} type.
	//
	LineItemTypeBULK LineItemType = "BULK"

	//
	// The type of {@link LineItem} most commonly used to fill a site's unsold
	// inventory if not contractually obligated to deliver a requested number of
	// impressions. Users specify the fixed quantity of unsold impressions or
	// clicks when creating this line item.
	//
	LineItemTypePRICE_PRIORITY LineItemType = "PRICE_PRIORITY"

	//
	// The type of {@link LineItem} typically used for ads that promote products
	// and services chosen by the publisher. These usually do not generate revenue
	// and have the lowest delivery priority.
	//
	LineItemTypeHOUSE LineItemType = "HOUSE"

	//
	// Represents a legacy {@link LineItem} that has been migrated from the DFP
	// system. Such line items cannot be created any more. Also, these line items
	// cannot be activated or resumed.
	//
	LineItemTypeLEGACY_DFP LineItemType = "LEGACY_DFP"

	//
	// The type of {@link LineItem} used for ads that track ads being served
	// externally of Ad Manager, for example an email newsletter. The click through would
	// reference this ad, and the click would be tracked via this ad.
	//
	LineItemTypeCLICK_TRACKING LineItemType = "CLICK_TRACKING"

	//
	// A {@link LineItem} using dynamic allocation backed by AdSense.
	//
	LineItemTypeADSENSE LineItemType = "ADSENSE"

	//
	// A {@link LineItem} using dynamic allocation backed by the Google Ad Exchange.
	//
	LineItemTypeAD_EXCHANGE LineItemType = "AD_EXCHANGE"

	//
	// Represents a non-monetizable video {@link LineItem} that targets one or
	// more bumper positions, which are short house video messages used by
	// publishers to separate content from ad breaks.
	//
	LineItemTypeBUMPER LineItemType = "BUMPER"

	//
	// A {@link LineItem} using dynamic allocation backed by AdMob.
	//
	LineItemTypeADMOB LineItemType = "ADMOB"

	//
	// The type of {@link LineItem} for which there are no impressions reserved, and will serve for a
	// second price bid. All {@link LineItem}s of type {@link LineItemType#PREFERRED_DEAL} should
	// be created via a {@link ProposalLineItem} with a matching  type. When creating a
	// {@link LineItem} of type {@link LineItemType#PREFERRED_DEAL}, the
	// {@link ProposalLineItem#estimatedMinimumImpressions} field is required.
	//
	LineItemTypePREFERRED_DEAL LineItemType = "PREFERRED_DEAL"

	//
	// The value returned if the actual value is not exposed by the requested API
	// version.
	//
	LineItemTypeUNKNOWN LineItemType = "UNKNOWN"
)

type MobileApplicationTargetingError

type MobileApplicationTargetingError struct {
	*ApiError

	Reason *MobileApplicationTargetingError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type MobileApplicationTargetingError_Reason

type MobileApplicationTargetingError_Reason string
const (

	//
	// Only applications that are linked to a store entry may be targeted.
	//
	MobileApplicationTargetingError_ReasonCANNOT_TARGET_UNLINKED_APPLICATION MobileApplicationTargetingError_Reason = "CANNOT_TARGET_UNLINKED_APPLICATION"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	MobileApplicationTargetingError_ReasonUNKNOWN MobileApplicationTargetingError_Reason = "UNKNOWN"
)

type NCName

type NCName string

type NotNullError

type NotNullError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *NotNullError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type NotNullError_Reason

type NotNullError_Reason string
const (

	//
	// Assuming that a method will not have more than 3 arguments, if it does,
	// return NULL
	//
	NotNullError_ReasonARG1_NULL NotNullError_Reason = "ARG1_NULL"

	NotNullError_ReasonARG2_NULL NotNullError_Reason = "ARG2_NULL"

	NotNullError_ReasonARG3_NULL NotNullError_Reason = "ARG3_NULL"

	NotNullError_ReasonNULL NotNullError_Reason = "NULL"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	NotNullError_ReasonUNKNOWN NotNullError_Reason = "UNKNOWN"
)

type NullError

type NullError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *NullError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type NullError_Reason

type NullError_Reason string
const (

	//
	// Specified list/container must not contain any null elements
	//
	NullError_ReasonNULL_CONTENT NullError_Reason = "NULL_CONTENT"
)

type NumberValue

type NumberValue struct {

	//
	// The numeric value represented as a string.
	//
	Value string `xml:"value,omitempty" json:"value,omitempty"`
	// contains filtered or unexported fields
}

type ObjectValue

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

type OrderActionError

type OrderActionError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *OrderActionError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type OrderActionError_Reason

type OrderActionError_Reason string
const (

	//
	// The operation is not allowed due to lack of permissions.
	//
	OrderActionError_ReasonPERMISSION_DENIED OrderActionError_Reason = "PERMISSION_DENIED"

	//
	// The operation is not applicable for the current state of the
	// {@link Order}.
	//
	OrderActionError_ReasonNOT_APPLICABLE OrderActionError_Reason = "NOT_APPLICABLE"

	//
	// The {@link Order} is archived, an {@link OrderAction} cannot be applied
	// to an archived order.
	//
	OrderActionError_ReasonIS_ARCHIVED OrderActionError_Reason = "IS_ARCHIVED"

	//
	// The {@link Order} is past its end date, An {@link OrderAction} cannot
	// be applied to a order that has ended.
	//
	OrderActionError_ReasonHAS_ENDED OrderActionError_Reason = "HAS_ENDED"

	//
	// A {@link Order} cannot be approved if it contains reservable
	// {@link LineItem}s that are unreserved.
	//
	OrderActionError_ReasonCANNOT_APPROVE_WITH_UNRESERVED_LINE_ITEMS OrderActionError_Reason = "CANNOT_APPROVE_WITH_UNRESERVED_LINE_ITEMS"

	//
	// Deleting an {@link Order} with delivered line items is not allowed
	//
	OrderActionError_ReasonCANNOT_DELETE_ORDER_WITH_DELIVERED_LINEITEMS OrderActionError_Reason = "CANNOT_DELETE_ORDER_WITH_DELIVERED_LINEITEMS"

	//
	// Cannot approve because company credit status is not active.
	//
	OrderActionError_ReasonCANNOT_APPROVE_COMPANY_CREDIT_STATUS_NOT_ACTIVE OrderActionError_Reason = "CANNOT_APPROVE_COMPANY_CREDIT_STATUS_NOT_ACTIVE"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	OrderActionError_ReasonUNKNOWN OrderActionError_Reason = "UNKNOWN"
)

type OrderError

type OrderError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *OrderError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type OrderError_Reason

type OrderError_Reason string
const (

	//
	// Updating a canceled order is not allowed.
	//
	OrderError_ReasonUPDATE_CANCELED_ORDER_NOT_ALLOWED OrderError_Reason = "UPDATE_CANCELED_ORDER_NOT_ALLOWED"

	//
	// Updating an order that has its approval pending is not allowed.
	//
	OrderError_ReasonUPDATE_PENDING_APPROVAL_ORDER_NOT_ALLOWED OrderError_Reason = "UPDATE_PENDING_APPROVAL_ORDER_NOT_ALLOWED"

	//
	// Updating an archived order is not allowed.
	//
	OrderError_ReasonUPDATE_ARCHIVED_ORDER_NOT_ALLOWED OrderError_Reason = "UPDATE_ARCHIVED_ORDER_NOT_ALLOWED"

	//
	// DSM can set the proposal ID only at the time of creation of order.
	// Setting or changing proposal ID at the time of order update is not
	// allowed.
	//
	OrderError_ReasonCANNOT_MODIFY_PROPOSAL_ID OrderError_Reason = "CANNOT_MODIFY_PROPOSAL_ID"

	//
	// Cannot have secondary user without a primary user.
	//
	OrderError_ReasonPRIMARY_USER_REQUIRED OrderError_Reason = "PRIMARY_USER_REQUIRED"

	//
	// Primary user cannot be added as a secondary user too.
	//
	OrderError_ReasonPRIMARY_USER_CANNOT_BE_SECONDARY OrderError_Reason = "PRIMARY_USER_CANNOT_BE_SECONDARY"

	//
	// A team associated with the order must also be associated with the
	// advertiser.
	//
	OrderError_ReasonORDER_TEAM_NOT_ASSOCIATED_WITH_ADVERTISER OrderError_Reason = "ORDER_TEAM_NOT_ASSOCIATED_WITH_ADVERTISER"

	//
	// The user assigned to the order, like salesperson or trafficker, must
	// be on one of the order's teams.
	//
	OrderError_ReasonUSER_NOT_ON_ORDERS_TEAMS OrderError_Reason = "USER_NOT_ON_ORDERS_TEAMS"

	//
	// The agency assigned to the order must belong to one of the order's teams.
	//
	OrderError_ReasonAGENCY_NOT_ON_ORDERS_TEAMS OrderError_Reason = "AGENCY_NOT_ON_ORDERS_TEAMS"

	//
	// Programmatic info fields should not be set for a non-programmatic order.
	//
	OrderError_ReasonINVALID_FIELDS_SET_FOR_NON_PROGRAMMATIC_ORDER OrderError_Reason = "INVALID_FIELDS_SET_FOR_NON_PROGRAMMATIC_ORDER"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	OrderError_ReasonUNKNOWN OrderError_Reason = "UNKNOWN"
)

type ParseError

type ParseError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *ParseError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type ParseError_Reason

type ParseError_Reason string
const (

	//
	// Indicates an error in parsing an attribute.
	//
	ParseError_ReasonUNPARSABLE ParseError_Reason = "UNPARSABLE"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	ParseError_ReasonUNKNOWN ParseError_Reason = "UNKNOWN"
)

type PermissionError

type PermissionError struct {
	*ApiError

	Reason *PermissionError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type PermissionError_Reason

type PermissionError_Reason string
const (

	//
	// User does not have the required permission for the request.
	//
	PermissionError_ReasonPERMISSION_DENIED PermissionError_Reason = "PERMISSION_DENIED"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	PermissionError_ReasonUNKNOWN PermissionError_Reason = "UNKNOWN"
)

type PrecisionError

type PrecisionError struct {
	*ApiError

	Reason *PrecisionError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type PrecisionError_Reason

type PrecisionError_Reason string
const (

	//
	// The lowest N digits of the number must be zero.
	//
	PrecisionError_ReasonWRONG_PRECISION PrecisionError_Reason = "WRONG_PRECISION"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	PrecisionError_ReasonUNKNOWN PrecisionError_Reason = "UNKNOWN"
)

type ProgrammaticError

type ProgrammaticError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *ProgrammaticError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type ProgrammaticError_Reason

type ProgrammaticError_Reason string
const (

	//
	// Audience extension is not supported by programmatic line items.
	//
	ProgrammaticError_ReasonAUDIENCE_EXTENSION_NOT_SUPPORTED ProgrammaticError_Reason = "AUDIENCE_EXTENSION_NOT_SUPPORTED"

	//
	// Auto extension days is not supported by programmatic line items.
	//
	ProgrammaticError_ReasonAUTO_EXTENSION_DAYS_NOT_SUPPORTED ProgrammaticError_Reason = "AUTO_EXTENSION_DAYS_NOT_SUPPORTED"

	//
	// Video is currently not supported.
	//
	ProgrammaticError_ReasonVIDEO_NOT_SUPPORTED ProgrammaticError_Reason = "VIDEO_NOT_SUPPORTED"

	//
	// Roadblocking is not supported by programmatic line items.
	//
	ProgrammaticError_ReasonROADBLOCKING_NOT_SUPPORTED ProgrammaticError_Reason = "ROADBLOCKING_NOT_SUPPORTED"

	//
	// Programmatic line items do not support {@link CreativeRotationType#SEQUENTIAL}.
	//
	ProgrammaticError_ReasonINVALID_CREATIVE_ROTATION ProgrammaticError_Reason = "INVALID_CREATIVE_ROTATION"

	//
	// Programmatic line items only support {@link LineItemType#STANDARD} and
	// {@link LineItemType#SPONSORSHIP} if the relevant feature is on.
	//
	ProgrammaticError_ReasonINVALID_LINE_ITEM_TYPE ProgrammaticError_Reason = "INVALID_LINE_ITEM_TYPE"

	//
	// Programmatic line items only support {@link CostType#CPM}.
	//
	ProgrammaticError_ReasonINVALID_COST_TYPE ProgrammaticError_Reason = "INVALID_COST_TYPE"

	//
	// Programmatic line items only support a creative size that is supported by AdX.
	// The list of supported sizes is maintained based on the list published in the help docs:
	// <a href="https://support.google.com/adxseller/answer/1100453">
	// https://support.google.com/adxseller/answer/1100453</a>
	//
	ProgrammaticError_ReasonSIZE_NOT_SUPPORTED ProgrammaticError_Reason = "SIZE_NOT_SUPPORTED"

	//
	// Zero cost per unit is not supported by programmatic line items.
	//
	ProgrammaticError_ReasonZERO_COST_PER_UNIT_NOT_SUPPORTED ProgrammaticError_Reason = "ZERO_COST_PER_UNIT_NOT_SUPPORTED"

	//
	// Some fields cannot be updated on approved line items.
	//
	ProgrammaticError_ReasonCANNOT_UPDATE_FIELD_FOR_APPROVED_LINE_ITEMS ProgrammaticError_Reason = "CANNOT_UPDATE_FIELD_FOR_APPROVED_LINE_ITEMS"

	//
	// Creating a new line item in an approved order is not allowed.
	//
	ProgrammaticError_ReasonCANNOT_CREATE_LINE_ITEM_FOR_APPROVED_ORDER ProgrammaticError_Reason = "CANNOT_CREATE_LINE_ITEM_FOR_APPROVED_ORDER"

	//
	// Cannot change backfill web property for a programmatic line item whose order has been
	// approved.
	//
	ProgrammaticError_ReasonCANNOT_UPDATE_BACKFILL_WEB_PROPERTY_FOR_APPROVED_LINE_ITEMS ProgrammaticError_Reason = "CANNOT_UPDATE_BACKFILL_WEB_PROPERTY_FOR_APPROVED_LINE_ITEMS"

	//
	// Cost per unit is too low. It has to be at least 0.005 USD.
	//
	ProgrammaticError_ReasonCOST_PER_UNIT_TOO_LOW ProgrammaticError_Reason = "COST_PER_UNIT_TOO_LOW"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	ProgrammaticError_ReasonUNKNOWN ProgrammaticError_Reason = "UNKNOWN"
)

type PublisherQueryLanguageContextError

type PublisherQueryLanguageContextError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *PublisherQueryLanguageContextError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type PublisherQueryLanguageContextError_Reason

type PublisherQueryLanguageContextError_Reason string
const (

	//
	// Indicates that there was an error executing the PQL.
	//
	PublisherQueryLanguageContextError_ReasonUNEXECUTABLE PublisherQueryLanguageContextError_Reason = "UNEXECUTABLE"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	PublisherQueryLanguageContextError_ReasonUNKNOWN PublisherQueryLanguageContextError_Reason = "UNKNOWN"
)

type PublisherQueryLanguageSyntaxError

type PublisherQueryLanguageSyntaxError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *PublisherQueryLanguageSyntaxError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type PublisherQueryLanguageSyntaxError_Reason

type PublisherQueryLanguageSyntaxError_Reason string
const (

	//
	// Indicates that there was a PQL syntax error.
	//
	PublisherQueryLanguageSyntaxError_ReasonUNPARSABLE PublisherQueryLanguageSyntaxError_Reason = "UNPARSABLE"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	PublisherQueryLanguageSyntaxError_ReasonUNKNOWN PublisherQueryLanguageSyntaxError_Reason = "UNKNOWN"
)

type QuotaError

type QuotaError struct {
	*ApiError

	Reason *QuotaError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type QuotaError_Reason

type QuotaError_Reason string
const (

	//
	// The number of requests made per second is too high and has exceeded the
	// allowable limit. The recommended approach to handle this error is to wait
	// about 5 seconds and then retry the request. Note that this does not
	// guarantee the request will succeed. If it fails again, try increasing the
	// wait time.
	// <p>Another way to mitigate this error is to limit requests to 8 per second for Ad Manager
	// 360 accounts, or 2 per second for Ad Manager accounts. Once again
	// this does not guarantee that every request will succeed, but may help
	// reduce the number of times you receive this error.
	//
	QuotaError_ReasonEXCEEDED_QUOTA QuotaError_Reason = "EXCEEDED_QUOTA"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	QuotaError_ReasonUNKNOWN QuotaError_Reason = "UNKNOWN"

	//
	// This user has exceeded the allowed number of new report requests per hour
	// (this includes both reports run via the UI and reports
	// run via {@link ReportService#runReportJob}).
	// The recommended approach to handle this error is to wait about 10 minutes
	// and then retry the request. Note that this does not guarantee the request
	// will succeed. If it fails again, try increasing the wait time.
	// <p>Another way to mitigate this error is to limit the number of new report
	// requests to 250 per hour per user. Once again, this does not guarantee that
	// every request will succeed, but may help reduce the number of times you
	// receive this error.
	//
	QuotaError_ReasonREPORT_JOB_LIMIT QuotaError_Reason = "REPORT_JOB_LIMIT"

	//
	// This network has exceeded the allowed number of identifiers uploaded within a 24 hour period.
	// The recommended approach to handle this error is to wait 30 minutes and then retry the
	// request. Note that this does not guarantee the request will succeed. If it fails again, try
	// increasing the wait time.
	//
	QuotaError_ReasonSEGMENT_POPULATION_LIMIT QuotaError_Reason = "SEGMENT_POPULATION_LIMIT"
)

type RangeError

type RangeError struct {
	*ApiError

	Reason *RangeError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type RangeError_Reason

type RangeError_Reason string
const (
	RangeError_ReasonTOO_HIGH RangeError_Reason = "TOO_HIGH"

	RangeError_ReasonTOO_LOW RangeError_Reason = "TOO_LOW"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	RangeError_ReasonUNKNOWN RangeError_Reason = "UNKNOWN"
)

type RegExError

type RegExError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *RegExError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type RegExError_Reason

type RegExError_Reason string
const (

	//
	// Invalid value found.
	//
	RegExError_ReasonINVALID RegExError_Reason = "INVALID"

	//
	// Null value found.
	//
	RegExError_ReasonNULL RegExError_Reason = "NULL"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	RegExError_ReasonUNKNOWN RegExError_Reason = "UNKNOWN"
)

type RequestHeader

type RequestHeader SoapRequestHeader

type RequestPlatformTargetingError

type RequestPlatformTargetingError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *RequestPlatformTargetingError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type RequestPlatformTargetingError_Reason

type RequestPlatformTargetingError_Reason string
const (

	//
	// The line item type does not support the targeted request platform type.
	//
	RequestPlatformTargetingError_ReasonREQUEST_PLATFORM_TYPE_NOT_SUPPORTED_BY_LINE_ITEM_TYPE RequestPlatformTargetingError_Reason = "REQUEST_PLATFORM_TYPE_NOT_SUPPORTED_BY_LINE_ITEM_TYPE"

	//
	// The line item environment type does not support the targeted request platform type.
	//
	RequestPlatformTargetingError_ReasonREQUEST_PLATFORM_TYPE_NOT_SUPPORTED_BY_ENVIRONMENT_TYPE RequestPlatformTargetingError_Reason = "REQUEST_PLATFORM_TYPE_NOT_SUPPORTED_BY_ENVIRONMENT_TYPE"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	RequestPlatformTargetingError_ReasonUNKNOWN RequestPlatformTargetingError_Reason = "UNKNOWN"
)

type RequiredCollectionError

type RequiredCollectionError struct {
	*ApiError

	Reason *RequiredCollectionError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type RequiredCollectionError_Reason

type RequiredCollectionError_Reason string
const (

	//
	// A required collection is missing.
	//
	RequiredCollectionError_ReasonREQUIRED RequiredCollectionError_Reason = "REQUIRED"

	//
	// Collection size is too large.
	//
	RequiredCollectionError_ReasonTOO_LARGE RequiredCollectionError_Reason = "TOO_LARGE"

	//
	// Collection size is too small.
	//
	RequiredCollectionError_ReasonTOO_SMALL RequiredCollectionError_Reason = "TOO_SMALL"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	RequiredCollectionError_ReasonUNKNOWN RequiredCollectionError_Reason = "UNKNOWN"
)

type RequiredError

type RequiredError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *RequiredError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type RequiredError_Reason

type RequiredError_Reason string
const (

	//
	// Missing required field.
	//
	RequiredError_ReasonREQUIRED RequiredError_Reason = "REQUIRED"
)

type RequiredNumberError

type RequiredNumberError struct {
	*ApiError

	Reason *RequiredNumberError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type RequiredNumberError_Reason

type RequiredNumberError_Reason string
const (
	RequiredNumberError_ReasonREQUIRED RequiredNumberError_Reason = "REQUIRED"

	RequiredNumberError_ReasonTOO_LARGE RequiredNumberError_Reason = "TOO_LARGE"

	RequiredNumberError_ReasonTOO_SMALL RequiredNumberError_Reason = "TOO_SMALL"

	RequiredNumberError_ReasonTOO_LARGE_WITH_DETAILS RequiredNumberError_Reason = "TOO_LARGE_WITH_DETAILS"

	RequiredNumberError_ReasonTOO_SMALL_WITH_DETAILS RequiredNumberError_Reason = "TOO_SMALL_WITH_DETAILS"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	RequiredNumberError_ReasonUNKNOWN RequiredNumberError_Reason = "UNKNOWN"
)

type RequiredSizeError

type RequiredSizeError struct {
	*ApiError

	Reason *RequiredSizeError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type RequiredSizeError_Reason

type RequiredSizeError_Reason string
const (

	//
	// {@link Creative#size} or {@link LineItem#creativePlaceholders} size is
	// missing.
	//
	RequiredSizeError_ReasonREQUIRED RequiredSizeError_Reason = "REQUIRED"

	//
	// {@link LineItemCreativeAssociation#sizes} must be a subset of
	// {@link LineItem#creativePlaceholders} sizes.
	//
	RequiredSizeError_ReasonNOT_ALLOWED RequiredSizeError_Reason = "NOT_ALLOWED"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	RequiredSizeError_ReasonUNKNOWN RequiredSizeError_Reason = "UNKNOWN"
)

type ReservationDetailsError

type ReservationDetailsError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *ReservationDetailsError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type ReservationDetailsError_Reason

type ReservationDetailsError_Reason string
const (

	//
	// There is no limit on the number of ads delivered for a line item when you
	// set {@link LineItem#duration} to be
	// {@link LineItemSummary.Duration#NONE}. This can only be set for line
	// items of type {@link LineItemType#PRICE_PRIORITY}.
	//
	ReservationDetailsError_ReasonUNLIMITED_UNITS_BOUGHT_NOT_ALLOWED ReservationDetailsError_Reason = "UNLIMITED_UNITS_BOUGHT_NOT_ALLOWED"

	//
	// {@link LineItem#unlimitedEndDateTime} can be set to true for only
	// line items of type {@link LineItemType#SPONSORSHIP},
	// {@link LineItemType#NETWORK}, {@link LineItemType#PRICE_PRIORITY} and
	// {@link LineItemType#HOUSE}.
	//
	ReservationDetailsError_ReasonUNLIMITED_END_DATE_TIME_NOT_ALLOWED ReservationDetailsError_Reason = "UNLIMITED_END_DATE_TIME_NOT_ALLOWED"

	//
	// When {@link LineItem#lineItemType} is
	// {@link LineItemType#SPONSORSHIP}, then
	// {@link LineItem#unitsBought} represents the percentage of
	// available impressions reserved. That value cannot exceed 100.
	//
	ReservationDetailsError_ReasonPERCENTAGE_UNITS_BOUGHT_TOO_HIGH ReservationDetailsError_Reason = "PERCENTAGE_UNITS_BOUGHT_TOO_HIGH"

	//
	// The line item type does not support the specified duration. See
	// {@link LineItemSummary.Duration} for allowed values.
	//
	ReservationDetailsError_ReasonDURATION_NOT_ALLOWED ReservationDetailsError_Reason = "DURATION_NOT_ALLOWED"

	//
	// The {@link LineItem#unitType} is not allowed for the given
	// {@link LineItem#lineItemType}. See {@link UnitType} for allowed
	// values.
	//
	ReservationDetailsError_ReasonUNIT_TYPE_NOT_ALLOWED ReservationDetailsError_Reason = "UNIT_TYPE_NOT_ALLOWED"

	//
	// The {@link LineItem#costType} is not allowed for the
	// {@link LineItem#lineItemType}. See {@link CostType} for allowed
	// values.
	//
	ReservationDetailsError_ReasonCOST_TYPE_NOT_ALLOWED ReservationDetailsError_Reason = "COST_TYPE_NOT_ALLOWED"

	//
	// When {@link LineItem#costType} is {@link CostType#CPM},
	// {@link LineItem#unitType} must be {@link UnitType#IMPRESSIONS}
	// and when {@link LineItem#costType} is {@link CostType#CPC},
	// {@link LineItem#unitType} must be {@link UnitType#CLICKS}.
	//
	ReservationDetailsError_ReasonCOST_TYPE_UNIT_TYPE_MISMATCH_NOT_ALLOWED ReservationDetailsError_Reason = "COST_TYPE_UNIT_TYPE_MISMATCH_NOT_ALLOWED"

	//
	// Inventory cannot be reserved for line items which are not of type
	// {@link LineItemType#SPONSORSHIP} or {@link LineItemType#STANDARD}.
	//
	ReservationDetailsError_ReasonLINE_ITEM_TYPE_NOT_ALLOWED ReservationDetailsError_Reason = "LINE_ITEM_TYPE_NOT_ALLOWED"

	//
	// Network remnant line items cannot be changed to other line item types once delivery begins.
	// This restriction does not apply to any new line items created in Ad Manager.
	//
	ReservationDetailsError_ReasonNETWORK_REMNANT_ORDER_CANNOT_UPDATE_LINEITEM_TYPE ReservationDetailsError_Reason = "NETWORK_REMNANT_ORDER_CANNOT_UPDATE_LINEITEM_TYPE"

	//
	// A dynamic allocation web property can only be set on a line item of type
	// AdSense or Ad Exchange.
	//
	ReservationDetailsError_ReasonBACKFILL_WEBPROPERTY_CODE_NOT_ALLOWED ReservationDetailsError_Reason = "BACKFILL_WEBPROPERTY_CODE_NOT_ALLOWED"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	ReservationDetailsError_ReasonUNKNOWN ReservationDetailsError_Reason = "UNKNOWN"
)

type ResponseHeader

type ResponseHeader SoapResponseHeader

type RoadblockingType

type RoadblockingType string
const (

	//
	// Only one creative from a line item can serve at a time.
	//
	RoadblockingTypeONLY_ONE RoadblockingType = "ONLY_ONE"

	//
	// Any number of creatives from a line item can serve together at a time.
	//
	RoadblockingTypeONE_OR_MORE RoadblockingType = "ONE_OR_MORE"

	//
	// As many creatives from a line item as can fit on a page will serve. This
	// could mean anywhere from one to all of a line item's creatives given the
	// size constraints of ad slots on a page.
	//
	RoadblockingTypeAS_MANY_AS_POSSIBLE RoadblockingType = "AS_MANY_AS_POSSIBLE"

	//
	// All or none of the creatives from a line item will serve. This option will only work if
	// served to a GPT tag using SRA (single request architecture mode).
	//
	RoadblockingTypeALL_ROADBLOCK RoadblockingType = "ALL_ROADBLOCK"

	//
	// A master/companion {@link CreativeSet} roadblocking type.
	// A {@link LineItem#creativePlaceholders} must be set accordingly.
	//
	RoadblockingTypeCREATIVE_SET RoadblockingType = "CREATIVE_SET"
)

type ServerError

type ServerError struct {
	*ApiError

	Reason *ServerError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type ServerError_Reason

type ServerError_Reason string
const (

	//
	// Indicates that an unexpected error occured.
	//
	ServerError_ReasonSERVER_ERROR ServerError_Reason = "SERVER_ERROR"

	//
	// Indicates that the server is currently experiencing a high load. Please
	// wait and try your request again.
	//
	ServerError_ReasonSERVER_BUSY ServerError_Reason = "SERVER_BUSY"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	ServerError_ReasonUNKNOWN ServerError_Reason = "UNKNOWN"
)

type SetTopBoxLineItemError

type SetTopBoxLineItemError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *SetTopBoxLineItemError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type SetTopBoxLineItemError_Reason

type SetTopBoxLineItemError_Reason string
const (

	//
	// The set-top box line item cannot target an ad unit that doesn't have an external
	// set-top box channel ID.
	//
	SetTopBoxLineItemError_ReasonNON_SET_TOP_BOX_AD_UNIT_TARGETED SetTopBoxLineItemError_Reason = "NON_SET_TOP_BOX_AD_UNIT_TARGETED"

	//
	// The set-top box line item must target at least one ad unit.
	//
	SetTopBoxLineItemError_ReasonAT_LEAST_ONE_AD_UNIT_MUST_BE_TARGETED SetTopBoxLineItemError_Reason = "AT_LEAST_ONE_AD_UNIT_MUST_BE_TARGETED"

	//
	// The set-top box line item cannot exclude ad units.
	//
	SetTopBoxLineItemError_ReasonCANNOT_EXCLUDE_AD_UNITS SetTopBoxLineItemError_Reason = "CANNOT_EXCLUDE_AD_UNITS"

	//
	// The set-top box line item can only target pod positions 1 - 15.
	//
	SetTopBoxLineItemError_ReasonPOD_POSITION_OUT_OF_RANGE SetTopBoxLineItemError_Reason = "POD_POSITION_OUT_OF_RANGE"

	//
	// The set-top box line item can only target midroll positions 4 - 100.
	//
	SetTopBoxLineItemError_ReasonMIDROLL_POSITION_OUT_OF_RANGE SetTopBoxLineItemError_Reason = "MIDROLL_POSITION_OUT_OF_RANGE"

	//
	// The set-top box feature is not enabled.
	//
	SetTopBoxLineItemError_ReasonFEATURE_NOT_ENABLED SetTopBoxLineItemError_Reason = "FEATURE_NOT_ENABLED"

	//
	// Only {@link EnvironmentType#VIDEO_PLAYER} is supported for set-top box line items.
	//
	SetTopBoxLineItemError_ReasonINVALID_ENVIRONMENT_TYPE SetTopBoxLineItemError_Reason = "INVALID_ENVIRONMENT_TYPE"

	//
	// Companions are not supported for set-top box line items.
	//
	SetTopBoxLineItemError_ReasonCOMPANIONS_NOT_SUPPORTED SetTopBoxLineItemError_Reason = "COMPANIONS_NOT_SUPPORTED"

	//
	// Set-top box line items only support sizes supported by Canoe.
	//
	SetTopBoxLineItemError_ReasonINVALID_CREATIVE_SIZE SetTopBoxLineItemError_Reason = "INVALID_CREATIVE_SIZE"

	//
	// Set-top box line items only support {@link LineItemType#STANDARD},
	// {@link LineItemType#HOUSE}, and {@link LineItemType#SPONSORSHIP} line item types.
	//
	SetTopBoxLineItemError_ReasonINVALID_LINE_ITEM_TYPE SetTopBoxLineItemError_Reason = "INVALID_LINE_ITEM_TYPE"

	//
	// {@link Order orders} containing {@link LineItemType#STANDARD} set-top box line items cannot
	// contain set-top box line items of type {@link LineItemType#HOUSE} or
	// {@link LineItemType#SPONSORSHIP}.
	//
	SetTopBoxLineItemError_ReasonORDERS_WITH_STANDARD_LINE_ITEMS_CANNOT_CONTAIN_HOUSE_OR_SPONSORSHIP_LINE_ITEMS SetTopBoxLineItemError_Reason = "ORDERS_WITH_STANDARD_LINE_ITEMS_CANNOT_CONTAIN_HOUSE_OR_SPONSORSHIP_LINE_ITEMS"

	//
	// Set-top box line items only support {@link CostType#CPM}.
	//
	SetTopBoxLineItemError_ReasonINVALID_COST_TYPE SetTopBoxLineItemError_Reason = "INVALID_COST_TYPE"

	//
	// Set-top box line items do not support a cost per unit.
	//
	SetTopBoxLineItemError_ReasonCOST_PER_UNIT_NOT_ALLOWED SetTopBoxLineItemError_Reason = "COST_PER_UNIT_NOT_ALLOWED"

	//
	// Set-top box line items do not support discounts.
	//
	SetTopBoxLineItemError_ReasonDISCOUNT_NOT_ALLOWED SetTopBoxLineItemError_Reason = "DISCOUNT_NOT_ALLOWED"

	//
	// Set-top box line items do not support {@link DeliveryRateType#FRONTLOADED}.
	//
	SetTopBoxLineItemError_ReasonFRONTLOADED_DELIVERY_RATE_NOT_SUPPORTED SetTopBoxLineItemError_Reason = "FRONTLOADED_DELIVERY_RATE_NOT_SUPPORTED"

	//
	// Set-top box line items cannot go from a state that is ready to be synced to a
	// state that is not ready to be synced.
	//
	SetTopBoxLineItemError_ReasonINVALID_LINE_ITEM_STATUS_CHANGE SetTopBoxLineItemError_Reason = "INVALID_LINE_ITEM_STATUS_CHANGE"

	//
	// Set-top box line items can only have certain priorities for different
	// {@link ReservationType reservation types}:
	// <ul>
	// <li>{@link ReservationType#SPONSORSHIP} => 1</li>
	// <li>{@link ReservationType#HOUSE} => 16</li>
	// <li>{@link ReservationType#STANDARD} => Between 1 and 16 inclusive.</li>
	// </ul>
	//
	SetTopBoxLineItemError_ReasonINVALID_LINE_ITEM_PRIORITY SetTopBoxLineItemError_Reason = "INVALID_LINE_ITEM_PRIORITY"

	//
	// When a set-top box line item is pushed to Canoe, a revision number is used to keep track of
	// the last version of the line item that Ad Manager synced with Canoe. The only change
	// allowed on revisions within Ad Manager is increasing the revision number.
	//
	SetTopBoxLineItemError_ReasonSYNC_REVISION_NOT_INCREASING SetTopBoxLineItemError_Reason = "SYNC_REVISION_NOT_INCREASING"

	//
	// When a set-top box line item is pushed to Canoe, a revision number is used to keep track of
	// the last version of the line item that Ad Manager synced with Canoe. Sync revisions begin
	// at one and can only increase in value.
	//
	SetTopBoxLineItemError_ReasonSYNC_REVISION_MUST_BE_GREATER_THAN_ZERO SetTopBoxLineItemError_Reason = "SYNC_REVISION_MUST_BE_GREATER_THAN_ZERO"

	//
	// Set Top box line items cannot be unarchived.
	//
	SetTopBoxLineItemError_ReasonCANNOT_UNARCHIVE_SET_TOP_BOX_LINE_ITEMS SetTopBoxLineItemError_Reason = "CANNOT_UNARCHIVE_SET_TOP_BOX_LINE_ITEMS"

	//
	// Set-top box enabled line items cannot be copied for V0 of the video Canoe campaign push.
	//
	SetTopBoxLineItemError_ReasonCOPY_SET_TOP_BOX_ENABLED_LINE_ITEM_NOT_ALLOWED SetTopBoxLineItemError_Reason = "COPY_SET_TOP_BOX_ENABLED_LINE_ITEM_NOT_ALLOWED"

	//
	// Standard set-top box line items cannot be updated to be {@link LineItemType#House} or
	// {@link LineItemType#Sponsorship} line items and vice versa.
	//
	SetTopBoxLineItemError_ReasonINVALID_LINE_ITEM_TYPE_CHANGE SetTopBoxLineItemError_Reason = "INVALID_LINE_ITEM_TYPE_CHANGE"

	//
	// Set-top box line items can only have a creative rotation type of
	// {@link CreativeRotationType.EVEN} or {@link CreativeRotationType#MANUAL}.
	//
	SetTopBoxLineItemError_ReasonCREATIVE_ROTATION_TYPE_MUST_BE_EVENLY_OR_WEIGHTED SetTopBoxLineItemError_Reason = "CREATIVE_ROTATION_TYPE_MUST_BE_EVENLY_OR_WEIGHTED"

	//
	// Set-top box line items can only have frequency capping with time units of
	// {@link TimeUnit#DAY}, {@link TimeUnit#HOUR}, {@link TimeUnit#POD}, or
	// {@link TimeUnit#STREAM}.
	//
	SetTopBoxLineItemError_ReasonINVALID_FREQUENCY_CAP_TIME_UNIT SetTopBoxLineItemError_Reason = "INVALID_FREQUENCY_CAP_TIME_UNIT"

	//
	// Set-top box line items can only have specific time ranges for certain time units:
	// <ul>
	// <li>{@link TimeUnit#HOUR} => 1, 2, 6</li>
	// <li>{@link TimeUnit#DAY} => 1, 3</li>
	// </ul>
	//
	SetTopBoxLineItemError_ReasonINVALID_FREQUENCY_CAP_TIME_RANGE SetTopBoxLineItemError_Reason = "INVALID_FREQUENCY_CAP_TIME_RANGE"

	//
	// Set-top box line items can only have a unit type of {@link UnitType#IMPRESSIONS}.
	//
	SetTopBoxLineItemError_ReasonINVALID_PRIMARY_GOAL_UNIT_TYPE SetTopBoxLineItemError_Reason = "INVALID_PRIMARY_GOAL_UNIT_TYPE"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	SetTopBoxLineItemError_ReasonUNKNOWN SetTopBoxLineItemError_Reason = "UNKNOWN"
)

type SetValue

type SetValue struct {

	//
	// The values. They must all be the same type of {@code Value} and not contain duplicates.
	//
	Values []*_Value `xml:"values,omitempty" json:"values,omitempty"`
	// contains filtered or unexported fields
}

type SoapRequestHeader

type SoapRequestHeader struct {
	XMLName xml.Name `xml:"https://www.google.com/apis/ads/publisher/v202311 RequestHeader"`

	//
	// The network code to use in the context of a request.
	//
	NetworkCode string `xml:"networkCode,omitempty" json:"networkCode,omitempty"`

	//
	// The name of client library application.
	//
	ApplicationName string `xml:"applicationName,omitempty" json:"applicationName,omitempty"`
}

type SoapResponseHeader

type SoapResponseHeader struct {
	XMLName xml.Name `xml:"https://www.google.com/apis/ads/publisher/v202311 ResponseHeader"`

	RequestId string `xml:"requestId,omitempty" json:"requestId,omitempty"`

	ResponseTime int64 `xml:"responseTime,omitempty" json:"responseTime,omitempty"`
}

type Statement

type Statement struct {

	//
	// Holds the query in PQL syntax. The syntax is:<br>
	// <code>[WHERE <condition> {[AND | OR] <condition> ...}]</code><br>
	// <code>[ORDER BY <property> [ASC | DESC]]</code><br>
	// <code>[LIMIT {[<offset>,] <count>} | {<count> OFFSET <offset>}]</code><br>
	// <p>
	// <code><condition></code><br>
	// &nbsp;&nbsp;&nbsp;&nbsp;
	// <code>:= <property> {< | <= | > | >= | = | != } <value></code><br>
	// <code><condition></code><br>
	// &nbsp;&nbsp;&nbsp;&nbsp;
	// <code>:= <property> {< | <= | > | >= | = | != } <bind variable></code><br>
	// <code><condition> := <property> IN <list></code><br>
	// <code><condition> := <property> IS NULL</code><br>
	// <code><condition> := <property> LIKE <wildcard%match></code><br>
	// <code><bind variable> := :<name></code><br>
	// </p>
	//
	Query string `xml:"query,omitempty" json:"query,omitempty"`

	//
	// Holds keys and values for bind variables and their values. The key is the
	// name of the bind variable. The value is the literal value of the variable.
	// <p>
	// In the example {@code "WHERE status = :bindStatus ORDER BY id LIMIT 30"},
	// the bind variable, represented by {@code :bindStatus} is named {@code
	// bindStatus}, which would also be the parameter map key. The bind variable's
	// value would be represented by a parameter map value of type
	// {@link TextValue}. The final result, for example, would be an entry of
	// {@code "bindStatus" => StringParam("ACTIVE")}.
	// </p>
	//
	Values []*String_ValueMapEntry `xml:"values,omitempty" json:"values,omitempty"`
}

type StatementError

type StatementError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *StatementError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type StatementError_Reason

type StatementError_Reason string
const (

	//
	// A bind variable has not been bound to a value.
	//
	StatementError_ReasonVARIABLE_NOT_BOUND_TO_VALUE StatementError_Reason = "VARIABLE_NOT_BOUND_TO_VALUE"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	StatementError_ReasonUNKNOWN StatementError_Reason = "UNKNOWN"
)

type StringFormatError

type StringFormatError struct {
	*ApiError

	Reason *StringFormatError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type StringFormatError_Reason

type StringFormatError_Reason string
const (
	StringFormatError_ReasonUNKNOWN StringFormatError_Reason = "UNKNOWN"

	//
	// The input string value contains disallowed characters.
	//
	StringFormatError_ReasonILLEGAL_CHARS StringFormatError_Reason = "ILLEGAL_CHARS"

	//
	// The input string value is invalid for the associated field.
	//
	StringFormatError_ReasonINVALID_FORMAT StringFormatError_Reason = "INVALID_FORMAT"
)

type StringLengthError

type StringLengthError struct {
	*ApiError

	Reason *StringLengthError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type StringLengthError_Reason

type StringLengthError_Reason string
const (
	StringLengthError_ReasonTOO_LONG StringLengthError_Reason = "TOO_LONG"

	StringLengthError_ReasonTOO_SHORT StringLengthError_Reason = "TOO_SHORT"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	StringLengthError_ReasonUNKNOWN StringLengthError_Reason = "UNKNOWN"
)

type String_ValueMapEntry

type String_ValueMapEntry struct {
	Key string `xml:"key,omitempty" json:"key,omitempty"`

	Value *_Value `xml:"value,omitempty" json:"value,omitempty"`
}

type TeamError

type TeamError struct {
	*ApiError

	//
	// The error reason represented by an enum.
	//
	Reason *TeamError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type TeamError_Reason

type TeamError_Reason string
const (

	//
	// User cannot use this entity because it is not on any of the user's teams.
	//
	TeamError_ReasonENTITY_NOT_ON_USERS_TEAMS TeamError_Reason = "ENTITY_NOT_ON_USERS_TEAMS"

	//
	// The targeted or excluded ad unit must be on the order's teams.
	//
	TeamError_ReasonAD_UNITS_NOT_ON_ORDER_TEAMS TeamError_Reason = "AD_UNITS_NOT_ON_ORDER_TEAMS"

	//
	// The targeted placement must be on the order's teams.
	//
	TeamError_ReasonPLACEMENTS_NOT_ON_ORDER_TEAMS TeamError_Reason = "PLACEMENTS_NOT_ON_ORDER_TEAMS"

	//
	// Entity cannot be created because it is not on any of the user's teams.
	//
	TeamError_ReasonMISSING_USERS_TEAM TeamError_Reason = "MISSING_USERS_TEAM"

	//
	// A team that gives access to all entities of a given type cannot be
	// associated with an entity of that type.
	//
	TeamError_ReasonALL_TEAM_ASSOCIATION_NOT_ALLOWED TeamError_Reason = "ALL_TEAM_ASSOCIATION_NOT_ALLOWED"

	//
	// The assignment of team to entities is invalid.
	//
	TeamError_ReasonINVALID_TEAM_ASSIGNMENT TeamError_Reason = "INVALID_TEAM_ASSIGNMENT"

	//
	// Cannot modify or create a team with an inactive status.
	//
	TeamError_ReasonCANNOT_UPDATE_INACTIVE_TEAM TeamError_Reason = "CANNOT_UPDATE_INACTIVE_TEAM"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	TeamError_ReasonUNKNOWN TeamError_Reason = "UNKNOWN"
)

type TechnologyTargetingError

type TechnologyTargetingError struct {
	*ApiError

	Reason *TechnologyTargetingError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type TechnologyTargetingError_Reason

type TechnologyTargetingError_Reason string
const (

	//
	// Mobile line item cannot target web-only targeting criteria.
	//
	TechnologyTargetingError_ReasonMOBILE_LINE_ITEM_CONTAINS_WEB_TECH_CRITERIA TechnologyTargetingError_Reason = "MOBILE_LINE_ITEM_CONTAINS_WEB_TECH_CRITERIA"

	//
	// Web line item cannot target mobile-only targeting criteria.
	//
	TechnologyTargetingError_ReasonWEB_LINE_ITEM_CONTAINS_MOBILE_TECH_CRITERIA TechnologyTargetingError_Reason = "WEB_LINE_ITEM_CONTAINS_MOBILE_TECH_CRITERIA"

	//
	// The mobile carrier targeting feature is not enabled.
	//
	TechnologyTargetingError_ReasonMOBILE_CARRIER_TARGETING_FEATURE_NOT_ENABLED TechnologyTargetingError_Reason = "MOBILE_CARRIER_TARGETING_FEATURE_NOT_ENABLED"

	//
	// The device capability targeting feature is not enabled.
	//
	TechnologyTargetingError_ReasonDEVICE_CAPABILITY_TARGETING_FEATURE_NOT_ENABLED TechnologyTargetingError_Reason = "DEVICE_CAPABILITY_TARGETING_FEATURE_NOT_ENABLED"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	TechnologyTargetingError_ReasonUNKNOWN TechnologyTargetingError_Reason = "UNKNOWN"
)

type TextValue

type TextValue struct {

	//
	// The string value.
	//
	Value string `xml:"value,omitempty" json:"value,omitempty"`
	// contains filtered or unexported fields
}

type TimeZoneError

type TimeZoneError struct {
	*ApiError

	Reason *TimeZoneError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type TimeZoneError_Reason

type TimeZoneError_Reason string
const (

	//
	// Indicates that the timezone ID provided is not supported.
	//
	TimeZoneError_ReasonINVALID_TIMEZONE_ID TimeZoneError_Reason = "INVALID_TIMEZONE_ID"

	//
	// Indicates that the timezone ID provided is in the wrong format.
	// The timezone ID must be in tz database format (e.g. "America/Los_Angeles").
	//
	TimeZoneError_ReasonTIMEZONE_ID_IN_WRONG_FORMAT TimeZoneError_Reason = "TIMEZONE_ID_IN_WRONG_FORMAT"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	TimeZoneError_ReasonUNKNOWN TimeZoneError_Reason = "UNKNOWN"
)

type TranscodingError

type TranscodingError struct {
	*ApiError

	Reason *TranscodingError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type TranscodingError_Reason

type TranscodingError_Reason string
const (

	//
	// The request to copy the creative(s) was rejected because the source is not transcoded.
	//
	TranscodingError_ReasonCANNOT_COPY_CREATIVE_PENDING_TRANSCODE TranscodingError_Reason = "CANNOT_COPY_CREATIVE_PENDING_TRANSCODE"

	//
	// The request to copy the creative(s) was rejected because the source is invalid.
	//
	TranscodingError_ReasonCANNOT_COPY_INVALID_CREATIVE TranscodingError_Reason = "CANNOT_COPY_INVALID_CREATIVE"

	//
	// The creative is still being transcoded or processed. Please try again later.
	//
	TranscodingError_ReasonTRANSCODING_IS_IN_PROGRESS TranscodingError_Reason = "TRANSCODING_IS_IN_PROGRESS"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	TranscodingError_ReasonUNKNOWN TranscodingError_Reason = "UNKNOWN"
)

type TypeError

type TypeError struct {
	*ApiError
}

type UniqueError

type UniqueError struct {
	*ApiError
}

type UserDomainTargetingError

type UserDomainTargetingError struct {
	*ApiError

	Reason *UserDomainTargetingError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type UserDomainTargetingError_Reason

type UserDomainTargetingError_Reason string
const (

	//
	// Invalid domain names. Domain names must be at most 67 characters long.
	// And must contain only alphanumeric characters and hyphens.
	//
	UserDomainTargetingError_ReasonINVALID_DOMAIN_NAMES UserDomainTargetingError_Reason = "INVALID_DOMAIN_NAMES"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	UserDomainTargetingError_ReasonUNKNOWN UserDomainTargetingError_Reason = "UNKNOWN"
)

type VideoPositionTargetingError

type VideoPositionTargetingError struct {
	*ApiError

	Reason *VideoPositionTargetingError_Reason `xml:"reason,omitempty" json:"reason,omitempty"`
}

type VideoPositionTargetingError_Reason

type VideoPositionTargetingError_Reason string
const (

	//
	// Video position targeting cannot contain both bumper and non-bumper targeting values.
	//
	VideoPositionTargetingError_ReasonCANNOT_MIX_BUMPER_AND_NON_BUMPER_TARGETING VideoPositionTargetingError_Reason = "CANNOT_MIX_BUMPER_AND_NON_BUMPER_TARGETING"

	//
	// The bumper video position targeting is invalid.
	//
	VideoPositionTargetingError_ReasonINVALID_BUMPER_TARGETING VideoPositionTargetingError_Reason = "INVALID_BUMPER_TARGETING"

	//
	// Only custom spot {@link AdSpot} objects can be targeted.
	//
	VideoPositionTargetingError_ReasonCAN_ONLY_TARGET_CUSTOM_AD_SPOTS VideoPositionTargetingError_Reason = "CAN_ONLY_TARGET_CUSTOM_AD_SPOTS"

	//
	// The value returned if the actual value is not exposed by the requested API version.
	//
	VideoPositionTargetingError_ReasonUNKNOWN VideoPositionTargetingError_Reason = "UNKNOWN"
)

Jump to

Keyboard shortcuts

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