Note: Version v201811 will be sunset soon. All users of those versions must migrate to a newer one.

ProductTemplateService (v201902)

Provides methods for creating, updating and retrieving ProductTemplate objects.

A product template is used to generate a set of products. Products allow inventory managers to control what salespeople can sell.

To use this service, you need to have the new sales management solution enabled on your network. If you do not see a "Sales" tab in DoubleClick for Publishers (DFP), you will not be able to use this service.


Production WSDL
https://ads.google.com/apis/ads/publisher/v201902/ProductTemplateService?wsdl
Namespace
https://www.google.com/apis/ads/publisher/v201902
Operations
Errors

createProductTemplates

Creates new ProductTemplate objects.

Parameters

Field Type Description
productTemplates ProductTemplate[] the productTemplates to create

Response

Field Type Description
rval ProductTemplate[] the persisted product templates with their Ids filled in

getProductTemplatesByStatement

Gets a ProductTemplatePage of ProductTemplate objects that satisfy the filtering criteria specified by given Statement.query. The following fields are supported for filtering:

PQL Property Object Property
id ProductTemplate.id
name ProductTemplate.name
nameMacro ProductTemplate.nameMacro
description ProductTemplate.description
status ProductTemplate.status
lastModifiedDateTime ProductTemplate.lastModifiedDateTime
lineItemType LineItemType
productType ProductType
rateType RateType

Parameters

Field Type Description
statement Statement a Publisher Query Language statement which specifies the filtering criteria over productTemplates

Response

Field Type Description
rval ProductTemplatePage the productTemplates that match the given statement

performProductTemplateAction

Performs action on ProductTemplate objects that satisfy the given Statement.query.

Parameters

Field Type Description
action
  1. ProductTemplateAction
    1. ActivateProductTemplates
    2. ArchiveProductTemplates
    3. DeactivateProductTemplates
    4. UnarchiveProductTemplates
the action to perform
filterStatement Statement a Publisher Query Language statement used to filter a set of product templates

Response

Field Type Description
rval UpdateResult the result of the action performed

updateProductTemplates

Updates the specified ProductTemplate objects.

Parameters

Field Type Description
productTemplates ProductTemplate[] the product templates to update

Response

Field Type Description
rval ProductTemplate[] the updated product templates

Errors

Error Reasons
ApiVersionError Errors related to the usage of API versions.
Enumerations
UPDATE_TO_NEWER_VERSION
Indicates that the operation is not allowed in the version the request was made in.
UNKNOWN
The value returned if the actual value is not exposed by the requested API version.
AuthenticationError An error for an exception that occurred when authenticating.
Enumerations
AMBIGUOUS_SOAP_REQUEST_HEADER
The SOAP message contains a request header with an ambiguous definition of the authentication header fields. This means either the authToken and oAuthToken fields were both null or both were specified. Exactly one value should be specified with each request.
INVALID_EMAIL
The login provided is invalid.
AUTHENTICATION_FAILED
Tried to authenticate with provided information, but failed.
INVALID_OAUTH_SIGNATURE
The OAuth provided is invalid.
INVALID_SERVICE
The specified service to use was not recognized.
MISSING_SOAP_REQUEST_HEADER
The SOAP message is missing a request header with an authToken and optional networkCode.
MISSING_AUTHENTICATION_HTTP_HEADER
The HTTP request is missing a request header with an authToken
MISSING_AUTHENTICATION
The request is missing an authToken
NOT_WHITELISTED_FOR_API_ACCESS
The customer is not whitelisted for API access.
NO_NETWORKS_TO_ACCESS
The user is not associated with any network.
NETWORK_NOT_FOUND
No network for the given networkCode was found.
NETWORK_CODE_REQUIRED
The user has access to more than one network, but did not provide a networkCode.
CONNECTION_ERROR
An error happened on the server side during connection to authentication service.
GOOGLE_ACCOUNT_ALREADY_ASSOCIATED_WITH_NETWORK
The user tried to create a test network using an account that already is associated with a network.
UNDER_INVESTIGATION
The account is blocked and under investigation by the collections team. Please contact Google for more information.
UNKNOWN
The value returned if the actual value is not exposed by the requested API version.
BaseRateError An error having to do with BaseRate.
Enumerations
INVALID_CURRENCY_CODE
The currency code is invalid.
PRODUCT_TEMPLATE_ARCHIVED
Cannot create or activate a base rate if the product template is archived.
PRODUCT_PACKAGE_ITEM_ARCHIVED
Cannot create or activate a product package item base rate if the product package item is archived.
CANNOT_QUERY_ON_MULTIPLE_TYPES
The PQL statement can only contain one of productTemplateId, productId or productPackageItemId.
PRODUCT_PACKAGE_RATE_CARD_ASSOCIATION_MISSING
Product package must be associated with the rate card of the product package item base rate.

See ProductPackage.rateCardIds.

UNSUPPORTED_OPERATION
Indicates that the requested operation is not supported.
PRODUCT_PACKAGE_ACTIVE
Cannot delete a product package item base rate when its product package is active.
PRODUCT_TEMPLATE_BASE_RATE_NOT_FOUND
Cannot create a base rate to a product if its product template does not have a base rate on this rate card.
PRODUCT_BASE_RATE_EXISTS
Cannot delete a base rate on a product template if its products still have base rates on this rate card.
INVALID_RATE_CARD_CHANNEL
Marketplace rate cards should only have Marketplace Product/ProductTemplate base rates. Non-Marketplace rate cards should use traditional base rates.
ZERO_MARKETPLACE_RATE_NOT_SUPPORTED
Marketplace does not support base rates with zero-value rates.
UNKNOWN
The value returned if the actual value is not exposed by the requested API version.
CollectionSizeError Error for the size of the collection being too large
Enumerations
TOO_LARGE
UNKNOWN
The value returned if the actual value is not exposed by the requested API version.
CommonError A place for common errors that can be used across services.
Enumerations
NOT_FOUND
Indicates that an attempt was made to retrieve an entity that does not exist.
ALREADY_EXISTS
Indicates that an attempt was made to create an entity that already exists.
NOT_APPLICABLE
Indicates that a value is not applicable for given use case.
DUPLICATE_OBJECT
Indicates that two elements in the collection were identical.
CANNOT_UPDATE
Indicates that an attempt was made to change an immutable field.
CONCURRENT_MODIFICATION
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.
UNKNOWN
The value returned if the actual value is not exposed by the requested API version.
ContentMetadataTargetingError Lists all errors related to ContentMetadataTargeting.
Enumerations
VALUES_DO_NOT_BELONG_TO_A_HIERARCHY
One or more of the values specified in a ContentMetadataHierarchyTargeting do not belong to the keys defined in any of the hierarchies on the network.
CONTENT_METADATA_TARGETING_DEPRECATED
Content metadata targeting is deprecated.
UNKNOWN
The value returned if the actual value is not exposed by the requested API version.
CustomFieldValueError Errors specific to editing custom field values
Enumerations
CUSTOM_FIELD_NOT_FOUND
An attempt was made to modify or create a CustomFieldValue for a CustomField that does not exist.
CUSTOM_FIELD_INACTIVE
An attempt was made to create a new value for a custom field that is inactive.
CUSTOM_FIELD_OPTION_NOT_FOUND
An attempt was made to modify or create a CustomFieldValue corresponding to a CustomFieldOption that could not be found.
UNKNOWN
The value returned if the actual value is not exposed by the requested API version.
CustomTargetingError Lists all errors related to CustomTargetingKey and CustomTargetingValue objects.
Enumerations
KEY_NOT_FOUND
Requested CustomTargetingKey is not found.
KEY_COUNT_TOO_LARGE
Number of CustomTargetingKey objects created exceeds the limit allowed for the network.
KEY_NAME_DUPLICATE
CustomTargetingKey with the same CustomTargetingKey.name already exists.
KEY_NAME_EMPTY
CustomTargetingKey.name is empty.
KEY_NAME_INVALID_LENGTH
CustomTargetingKey.name is too long.
KEY_NAME_INVALID_CHARS
CustomTargetingKey.name contains unsupported or reserved characters.
KEY_NAME_RESERVED
CustomTargetingKey.name matches one of the reserved custom targeting key names.
KEY_DISPLAY_NAME_INVALID_LENGTH
CustomTargetingKey.displayName is too long.
VALUE_NOT_FOUND
Requested CustomTargetingValue is not found.
GET_VALUES_BY_STATEMENT_MUST_CONTAIN_KEY_ID
The WHERE clause in the Statement.query must always contain CustomTargetingValue.customTargetingKeyId as one of its columns in a way that it is AND'ed with the rest of the query.
VALUE_COUNT_FOR_KEY_TOO_LARGE
The number of CustomTargetingValue objects associated with a CustomTargetingKey exceeds the network limit. This is only applicable for keys of type CustomTargetingKey.Type#PREDEFINED.
VALUE_NAME_DUPLICATE
CustomTargetingValue with the same CustomTargetingValue.name already exists.
VALUE_NAME_EMPTY
CustomTargetingValue.name is empty.
VALUE_NAME_INVALID_LENGTH
CustomTargetingValue.name is too long.
VALUE_NAME_INVALID_CHARS
CustomTargetingValue.name contains unsupported or reserved characters.
VALUE_DISPLAY_NAME_INVALID_LENGTH
CustomTargetingValue.displayName is too long.
VALUE_MATCH_TYPE_NOT_ALLOWED
Only Ad Manager 360 networks can have CustomTargetingValue.matchType other than CustomTargetingValue.MatchType.EXACT.
VALUE_MATCH_TYPE_NOT_EXACT_FOR_PREDEFINED_KEY
You can only create CustomTargetingValue objects with match type CustomTargetingValue.MatchType.EXACT when associating with CustomTargetingKey objects of type CustomTargetingKey.Type.PREDEFINED
SUFFIX_MATCH_TYPE_NOT_ALLOWED
CustomTargetingValue object cannot have match type of CustomTargetingValue.MatchType.SUFFIX when adding a CustomTargetingValue to a line item.
CONTAINS_MATCH_TYPE_NOT_ALLOWED
CustomTargetingValue object cannot have match type of CustomTargetingValue.MatchType.CONTAINS when adding a CustomTargetingValue to targeting expression of a line item.
KEY_WITH_MISSING_VALUES
The CustomTargetingKey does not have any CustomTargetingValue associated with it.
INVALID_VALUE_FOR_KEY
The CustomTargetingKey has a CustomTargetingValue specified for which the value is not a valid child.
CANNOT_OR_DIFFERENT_KEYS
CustomCriteriaSet.LogicalOperator.OR operation cannot be applied to values with different keys.
INVALID_TARGETING_EXPRESSION
Targeting expression is invalid. This can happen if the sequence of operators is wrong, or a node contains invalid number of children.
DELETED_KEY_CANNOT_BE_USED_FOR_TARGETING
The key has been deleted. CustomCriteria cannot have deleted keys.
DELETED_VALUE_CANNOT_BE_USED_FOR_TARGETING
The value has been deleted. CustomCriteria cannot have deleted values.
VIDEO_BROWSE_BY_KEY_CANNOT_BE_USED_FOR_CUSTOM_TARGETING
The key is set as the video browse-by key, which cannot be used for custom targeting.
CANNOT_DELETE_CUSTOM_KEY_USED_IN_CONTENT_METADATA_MAPPING
Only active custom-criteria keys are supported in content metadata mapping.
CANNOT_DELETE_CUSTOM_VALUE_USED_IN_CONTENT_METADATA_MAPPING
Only active custom-criteria values are supported in content metadata mapping.
CANNOT_DELETE_CUSTOM_KEY_USED_IN_PARTNER_ASSIGNMENT_TARGETING
Cannot delete a custom criteria key that is targeted by an active partner assignment.
CANNOT_DELETE_CUSTOM_VALUE_USED_IN_PARTNER_ASSIGNMENT_TARGETING
Cannot delete a custom criteria value that is targeted by an active partner assignment.
CANNOT_TARGET_AUDIENCE_SEGMENT
AudienceSegment object cannot be targeted.
CANNOT_TARGET_INACTIVE_AUDIENCE_SEGMENT
Inactive AudienceSegment object cannot be targeted.
INVALID_AUDIENCE_SEGMENTS
Targeted AudienceSegment object is not valid.
ONLY_APPROVED_AUDIENCE_SEGMENTS_CAN_BE_TARGETED
Targeted AudienceSegment objects have not been approved.
UNKNOWN
The value returned if the actual value is not exposed by the requested API version.
DateTimeRangeTargetingError Lists all date time range errors caused by associating a line item with a targeting expression.
Enumerations
EMPTY_RANGES
No targeted ranges exists.
NOT_SPONSORSHIP_LINEITEM
Type of lineitem is not sponsorship.
PAST_RANGES_CHANGED
Past ranges are changed.
RANGES_OVERLAP
Targeted date time ranges overlap.
RANGES_OUT_OF_LINEITEM_ACTIVE_PERIOD
Targeted date time ranges fall out the active period of lineitem.
START_TIME_IS_NOT_START_OF_DAY
Start time of range (except the earliest range) is not at start of day. Start of day is 00:00:00.
END_TIME_IS_NOT_END_OF_DAY
End time of range (except the latest range) is not at end of day. End of day is 23:59:59.
START_DATE_TIME_IS_IN_PAST
Start date time of earliest targeted ranges is in past.
RANGE_END_TIME_BEFORE_START_TIME
The end time of range is before the start time. Could happen when start type is IMMEDIATE or ONE_HOUR_LATER.
END_DATE_TIME_IS_TOO_LATE
End date time of latest targeted ranges is too late.
LIMITED_RANGES_IN_UNLIMITED_LINEITEM
UNKNOWN
The value returned if the actual value is not exposed by the requested API version.
DayPartTargetingError Lists all errors associated with day-part targeting for a line item.
Enumerations
INVALID_HOUR
Hour of day must be between 0 and 24, inclusive.
INVALID_MINUTE
Minute of hour must be one of 0, 15,30, 45.
END_TIME_NOT_AFTER_START_TIME
The DayPart.endTime cannot be after DayPart.startTime.
TIME_PERIODS_OVERLAP
Cannot create day-parts that overlap.
UNKNOWN
The value returned if the actual value is not exposed by the requested API version.
EntityChildrenLimitReachedError Lists errors relating to having too many children on an entity.
Enumerations
LINE_ITEM_LIMIT_FOR_ORDER_REACHED
The number of line items on the order exceeds the max number of line items allowed per order in the network.
CREATIVE_ASSOCIATION_LIMIT_FOR_LINE_ITEM_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.
AD_UNIT_LIMIT_FOR_PLACEMENT_REACHED
The number of ad units on the placement exceeds the max number of ad units allowed per placement in the network.
TARGETING_EXPRESSION_LIMIT_FOR_LINE_ITEM_REACHED
The number of targeting expressions on the line item exceeds the max number of targeting expressions allowed per line item in the network.
CUSTOM_TARGETING_VALUES_FOR_KEY_LIMIT_REACHED
The number of custom targeting values for the free-form or predefined custom targeting key exceeds the max number allowed.
TARGETING_EXPRESSION_LIMIT_FOR_CREATIVES_ON_LINE_ITEM_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.
ATTACHMENT_LIMIT_FOR_PROPOSAL_REACHED
The number of attachments added to the proposal exceeds the max number allowed per proposal in the network.
PROPOSAL_LINE_ITEM_LIMIT_FOR_PROPOSAL_REACHED
The number of proposal line items on the proposal exceeds the max number allowed per proposal in the network.
PRODUCT_LIMIT_FOR_PRODUCT_PACKAGE_REACHED
The number of product package items on the product package exceeds the max number allowed per product package in the network.
PRODUCT_TEMPLATE_AND_PRODUCT_BASE_RATE_LIMIT_FOR_RATE_CARD_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.
PRODUCT_PACKAGE_ITEM_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.
PREMIUM_LIMIT_FOR_RATE_CARD_REACHED
The number of premiums of the rate card exceeds the max number allowed per rate card in the network.
AD_UNIT_LIMIT_FOR_AD_EXCLUSION_RULE_TARGETING_REACHED
The number of ad units on AdExclusionRule.inventoryTargeting exceeds the max number of ad units allowed per ad exclusion rule inventory targeting in the network.
NATIVE_STYLE_LIMIT_FOR_NATIVE_AD_FORMAT_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.
TARGETING_EXPRESSION_LIMIT_FOR_PRESENTATION_ASSIGNMENT_REACHED
The number of targeting expressions on the native style exceeds the max number of targeting expressions allowed per native style in the network.
UNKNOWN
The value returned if the actual value is not exposed by the requested API version.
EntityLimitReachedError An error that occurs when creating an entity if the limit on the number of allowed entities for a network has already been reached.
Enumerations
CUSTOM_TARGETING_VALUES_LIMIT_REACHED
The number of custom targeting values exceeds the max number allowed in the network.
AD_EXCLUSION_RULES_LIMIT_REACHED
The number of ad exclusion rules exceeds the max number allowed in the network.
FIRST_PARTY_AUDIENCE_SEGMENTS_LIMIT_REACHED
The number of first party audience segments exceeds the max number allowed in the network.
PLACEMENTS_LIMIT_REACHED
The number of active placements exceeds the max number allowed in the network.
LINE_ITEMS_LIMIT_REACHED
The number of line items excceeds the max number allowed in the network.
ACTIVE_LINE_ITEMS_LIMIT_REACHED
The number of active line items exceeds the max number allowed in the network.
UNKNOWN
The value returned if the actual value is not exposed by the requested API version.
FeatureError Errors related to feature management. If you attempt using a feature that is not available to the current network you'll receive a FeatureError with the missing feature as the trigger.
Enumerations
MISSING_FEATURE
A feature is being used that is not enabled on the current network.
UNKNOWN
The value returned if the actual value is not exposed by the requested API version.
FrequencyCapError Lists all errors associated with frequency caps.
Enumerations
IMPRESSION_LIMIT_EXCEEDED
IMPRESSIONS_TOO_LOW
RANGE_LIMIT_EXCEEDED
RANGE_TOO_LOW
DUPLICATE_TIME_RANGE
TOO_MANY_FREQUENCY_CAPS
UNKNOWN
The value returned if the actual value is not exposed by the requested API version.
GenericTargetingError