[Error messages] Xandr
Challenge
While using our Xandr integration with features like checking availability or submitting, an error message appears that is coming directly from the Xandr API. What does an error from the API mean and what are the best ways to handle this?
Solution:
When submitting data from ADvendio to external platforms, there are always two platforms involved. ADvendio is the system that sends data and the external platform (e.g. the AdServer) receives data.
This can have different reasons, for example, a problem with the authentication against the external system, a missing setting in ADvendio, or you are trying something which is generally not allowed (like changing the start date of an already running position). Following we are looking at the most common error messages returned from our Xandr integration, what they mean and how to prevent them.
What are the most common error cases?
With the below information, you'll be equipped with a clear understanding of FreeWheel error messages, the reasons behind them, and the necessary steps to troubleshoot and overcome integration challenges you may encounter:
Error Message: You'll see a list of different error messages, each with its own type and wording.
Reason: We provide explanations to help you understand what caused the error message. This will give you insights into why the issue occurred.
Solution: For each error message, we offer troubleshooting steps to resolve the problem. These steps guide you towards finding a solution and getting past the error.
Error Message | Reason | Solution |
---|---|---|
Id: SYNTAX, Code: INVALID_COUNTRY_ACTION, Message: country_action must be set to exclude when country_targets are empty | You are trying to submit an Item of type Augmented, without any geo targeting set. Please be aware that Xandr requires at least one selected geo targeting criteria when using Augmented line items. | You can use our geo targeting features in the Media Configuration to change this or enhance your AdSpec definition, to automatically use certain geo targeting for each Campaign Item related to that product. See also our wiki for more information: 7.3.8.3 Augmented Line Items |
"Id: SYNTAX, Message: revenue_value must be between 0 and 999 (in USD), inclusively" | The Revenue Value you are trying to set for your Item is either too high or low. The revenue value in Xandr represents, the price charged per sold unit (for example a CPM rate) and can be used to prioritize delivery. In ADvendio we use to map Campaign Item prices or specific fields to map this information. | Please check the pricing information on your Campaign Item. The revenue value we send to Xandr either is calculated based on the Amount N2 or Amount N3 of your Campaign Item OR there is a specific field: AdServer Price used for this. Please see the configuration on your connection record to find out what is used. More information can be found here: 7.3.1.2 Submit Prices to the AdServer |
Id: SYNTAX, Code: ALI_CREATIVE_AD_TYPE_MISMATCH, Message: Creative cannot be associated to a line item with a different value for 'ad_type'
Id: SYNTAX, Code: CREATIVE_LI_AD_TYPE_MISMATCH, Message: The 'ad_type' for the Line Item and Creative must match" | Each Xandr Item has Line Item Ad Type, like Banner, Video, Native, ect. . This steers what kind of creatives you can assign to this item. When you get this error during Submit to AdServer, most likely the type you set up in ADvendio is not matching with what is set in Xandr and your item in Xandr already is assigned to Creatives. This usually happens when you manually assign creatives within Xandr and thus change your Line Item Ad Type. | You are able to set the AdType in Xandr, by using the field Product Type in ADvendio, which can be found on the Campaign Item and Ad Type object. [Configure Ad Type Formats] for Xandr products Please make sure the value in ADvendio matches your setting in Xandr. |
Id: SYNTAX, Code: INVALID_TYPE, Message: field 'type' is required | For Guaranteed Augmented Line Item (GDALI) bookings into Xandr Mandatory To define in the Ad Type > AdServer information > Delivery Type field if they have an Impression or Share of Voice (Exclusive) goal. This is usually referred to as Type in Xandr. If this setting is missing or invalid in ADvendio, you can receive such a error message. | To fix this problem, please check your Delivery Type settings on the Ad Type object. |
(No Ad Server Specified or it is inactive: null) | Our Gateway can not find which AdServer it needs to communicate with. The Item you're using is maybe not connected to an AdServer. | Check two things: For your campaign item, has the connected AdType an AdServer Login entered? If that is true, is the AdServer Login in ADvendio set to active? If inactive it will be ignored from our Gateway. |
Id: SYNTAX, Code: CANNOT_CHANGE_INTERVAL_VALUES, Message: cannot change start_date on interval with start date in past, or end_date if end date is passed | Changing start dates of a Campaign Item in Advendio when the campaign has already started and then submitting these changes to the AdServer. | Xandr as an AdServer cannot change a start date on interval when the start date is in past, or the end date is passed. |
Id: SYNTAX, Code: INVALID_BUDGET_INTERVALS, Message: daily_budget type must match lifetime_budget type | When the Secondary Goal Type options are not properly configured | Enter a GDALI/ALI Campaign Item > if the Secondary Goal Type option is “Custom pacing” on an AdType level the Secondary Goal Type option needs to be “none” |
Id: SYNTAX, Code: INVALID_ENABLE_PACING, Message: 'enable_pacing' must be set to true when 'delivery_goal.type' is set to "impressions" | PENDING | In Campaign Item > Delivery Type > Set to “Impressions” |
Id: SYSTEM, Message: flat fee requires start_date and end_date value set on line item | PENDING | Change AdType needs to be Guaranteed, Augmented or Guaranteed Augmented |
Id: SYNTAX, Code: INCOMPATIBLE_LI_BUDGET_INTERVALS_TO_IO, Message: Line Item Flight Start and End Dates do not fall within Insertion Order Billing Periods | Start date of one or more Campaign Items are in the past | In Campaign Item > From (Date) > update date accordingly so the campaign has a start date of today or in the future |
Id: SYNTAX, Code: INPUT_TOO_LONG Message: advertiser billing_name must be between 1 and 50 characters long | Xandr's API requires that the advertiser's billing name be between 1 and 50 characters long when submitting a campaign item. However, the field in Xandr's documentation is actually 100 characters long. | Limit advertiser's billing name to 50 characters and truncate longer names |
Id: SYNTAX, Code: CANNOT_CHANGE_INTERVAL_VALUES, Message: cannot change start_date on interval if start date is in the past | PENDING | PENDING |
Id: SYNTAX, Message: Non-Default splits must have at least one condition. | PENDING | PENDING |
Id: SYNTAX, Code: NON_AUGMENTED_AUCTION_TYPE, Message: Line Item Type must be 'standard_v2'(augmented) for auction_type 'view'. | No Delivery Type is selected on the Campaign Item | AdType > Delivery Type > Select between “Exclusive” or “Impressions” |
Id: SYNTAX, Code: LI_IO_BUDGET_TYPE, Message: Augmented line items must be associated with insertion orders with the same budget type | The Media Campaign Budget needs to be Flexible and Campaign Item “impressions” |
|
Id: SYNTAX, Code: INVALID_TYPE, Message: Invalid value ASAP for underspend_catchup_type. Must be one of evenly, asap |
|
|
Something went wrong when booking the item a1Q6M00000y2VT3UAM: Cannot read field "budgetIntervals" because "insertionOrder" is null | The Insertion Order we’re trying to update can not be found in Xandr.
| Potential Reasons can be:
|
Id: SYNTAX, Code: NON_AUGMENTED_AUCTION_TYPE, Message: Line Item Type must be 'standard_v2'(augmented) for auction_type 'video'. | Campaign Item with type “video” is submited on an Augmented Campaign |
|
Xandr response: Message: "Guaranteed Augmented" Ad Types are compatible only with Media Campaigns that use FLEXIBLE as Budget Type.. | The combination of Budget Types between your Order (Media Campaign) and Line Items (Campaign Items) is not valid for Xandr. Guaranteed Augmented Line Items only work with Impression type budgets or flexible. | Please make sure the field Budget Type on your Media Campaign is set to flexible or impression, when using Guaranteed Augmented Campaign Items |
Error while runing Xandr booking job: Id: SYNTAX, Code: INVALID_COUNTRY_TARGET, Message: invalid country_targets id 999999 passed in | The Targeting Criteria you are trying to set is invalid. This could mean the ID can not be found in Xandr. The message states which type of targeting is causing the problem (e.g. Countries) | Review the Targeting set in ADvendio and the linked Connection ID records. Remove the invalid IDs from the targeting and try the push again. If the ID is not existing (anymore) in Xandr, you might need to manually delete the Connection ID record in ADvendio and reimport targeting criteria. |
Id: SYNTAX, Code: INVALID_LIFETIME_PACING, Message: 'lifetime_pacing' must be set to true when 'delivery_goal.type' is set to "impressions" | Pending
| Pending |
Id: SYNTAX, Code: PERCENTAGE_NOT_NULL, Message: 'percentage' must be null when 'delivery_goal.type' is "impressions" | Pending
| Pending |
Id: SYNTAX, Code: MEMBER_DOES_NOT_EXIST, Message: The specified buyer member does not exist | Account associated with an invalid External account or has nothing associated | In the Account used in the Media Campaign with issues check that the external account ID is associated with a valid/existing Programmatic Buyer connection ID |
Id: SYNTAX, Code: MISSING_LIFETIME_BUDGET_IMPRESSIONS, Message: 'lifetime_budget_imps' is required when 'delivery_goal.type' is "impressions" | The Delivery Type in the Campaign Item or the AdType is set to ‘impressions’, and the Budget Type on a Media Campaign level has no value or is set to ‘revenue’ | Define the Media campaign Budget Type as “impressions” |
For most common error cases have a look here at 7.8 Troubleshooting Error Messages: Resolving Common Issues and Solutions.
For Xandr Limitations please refer to 7.3.12.8 [Integration Overview] of Xandr | Xandr Limitations.