Placement API v3
Introduction
A placement is a Sale, or a collection of Ad Units that share sales specifications, such as flight dates and content targeting. The placement is where most business rules for a particular sale are configured. Settings configure sales terms and actions execute specific tasks on placements. The MRM product optimizes and analyzes the buying slots for ad placement.
Version 3 of the Placement API allows users to view, create, list, and edit Placements. This version of the API uses validations that were introduced with UIF.
You can use this API to accomplish the following tasks:
- View placements
- Create placements
- List placements
- Edit placements
Related Documentation
Refer to the following documentation for more information about FreeWheel products and APIs:
Resources
URI(s)
The Placement API v3 identifies two Uniform Resource Identifiers (URIs), a production instance and a staging instance identified in the following table:
Type of URI | URI |
---|---|
Production | https://api.freewheel.tv/services/v3/placement/[FW_ID].xml?[parameter1]=[query1]&... |
Staging | https://api.stg.freewheel.tv/services/v3/placement/[FW_ID].xml?[parameter1]=[query1]&... |
Placement API Attributes
Attributes represent and describe data associated with an object, in this case the Placement object. Attributes are organized in sets. The attribute set determines the fields that are available during data entry, and the values that appear to the client. Use Placement API Attributes in conjunction with Placement API methods to accomplish your ad tech objectives.
Basic Attributes
Basic attributes describe fundamental properties of a placement. These attributes identify the name, ID, insertion order, and other details of the placement.
Function/Node | Description | Data Type(s) | Mandatory | Creatable? | Updateable? | Included in basic GET? | MRM or RPM | Comments |
---|---|---|---|---|---|---|---|---|
id | The ID of the placement | FW_ID | N | N | N | Y | Both | Not allowed during placement creation |
insertion_order_id | The ID of the parent insertion order which this placement belongs to | FW_ID | Y | Y | N | Y | Both | Required on placement creation only |
buy_type | The buy type ID from the user interface(UI) | FW_ID | Y | Y | Y | Y | RPM | This field will be ignored if it is sent for a network that supports MRM only |
property_id | The property of the placement | FW-ID | N | Y | Y | Y | RPM | Property is an optional feature that must be turned on by your Program Manager. If you don't have these features turned on and submit these values, we will return an error. |
name | The name of the placement | String | N | Y | Y | Y | Both | If creating a placement without "name" node, it will set the name as "Untitled Placement" by default. If your network uses Auto-name generation, the API will not auto-generate a name. |
status | Placement's status; Valid values: 'IN_ACTIVE', 'ACTIVE', 'CANCELLED', 'COMPLETED', 'TESTING' | Enum | N | N | N | Y | Both | |
enable_canoe | Enable placement for canoe | Boolean | N | Y | Y | Y | Both | If you send a request without the node, it will be set as "FALSE" by default. Canoe is an optional feature that must be turned on by your Program Manager. If you don't have these features turned on and submit these values, we will return an error. |
description | The description of the placement | String | N | Y | Y | Y | Both | |
instruction | The instructions for the placement | String | N | Y | Y | Y | Both | |
placement_type | The type of placement. Valid values: 'NORMAL', 'MAKE_GOOD', 'PROMO' | Enum | N | Y | Y | Y | Both | If you send a request without the node or the node is empty, it will be set as "NORMAL" by default |
adjust_from_balance | Adjust for balance. Valid values: 'DEFERRED_REVENUE', 'UNDER_DELIVERY' | Enum | N | Y | Y | Y | RPM | We will return an error if send a request with the node but without <placement_type>MAKE_GOOD</placement_type>. If you send a request with placement_type but without the node or node is empty, it will be set as "DEFERRED_REVENUE" by default. |
external_id | The external ID of the placement | String | N | Y | Y | Y | MRM | This field will be ignored if it is sent for a RPM network |
external_infos | The external IDs for each external system | Set | N | Y | Y | Y | RPM | This field will be ignored if it is sent for a network that supports MRM only |
schedule | Set | N | Y | Y | Y | Both | ||
price | Set | N | Y | Y | Y | Both | ||
budget | Set | N | Y | Y | Y | Both | ||
delivery | Set | N | Y | Y | Y | Both | ||
override | Set | N | Y | Y | Y | Both | ||
content_targeting | Set ) | N | Y | Y | Y | Both | ||
exclusivity | Set | N | Y | Y | Y | Both | ||
custom_targeting | Set | N | Y | Y | Y | Both | ||
daypart_targeting | Set | N | Y | Y | Y | Both | ||
geography_targeting | Set | N | Y | Y | Y | Both | ||
ad_product | Set | N | Y | Y | Y | Both | ||
audience_targeting | Normal Set, Advanced Set | N | Y | Y | Y | Both | ||
metadata | Set | N | Y | Y | Y | RPM | ||
restrict_delivery_to_campaign_tags | Set | N | Y | Y | Y | Both | ||
soft_reserve | Set | N | Y | Y | Y | Both | ||
industry | Set | |||||||
platform_targeting | Set | N | Y | Y | Y | Both | ||
alert | Set | N | N | N | Y | Both | ||
upfront_association | Set | N | Y | Y | Y | Both | ||
remaining_items | Set | N | Y | Y | Y | Both |
The following attributes are only available for Networks with Sales Proposal enabled:
Function/Node | Description | Data Type(s) | Mandatory | Creatable? | Updateable? | Included in basic GET? | MRM or RPM | Comments |
---|---|---|---|---|---|---|---|---|
content_bucket_id | ID of content bucket | FW_ID | N | Y | Y | Y | RPM | Only for networks with Sales Proposal enabled |
premiums | Set | FW_ID array | N | Y | Y | Y | RPM | Only for networks with Sales Proposal enabled; Array of premium IDs |
variant_id | Variant ID | FW_ID | N | N | N | Y | RPM | Only for networks with Sales Proposal enabled |
variant_status | Value in ('PRIMARY', 'ACTIVE', 'LOST') | enum | N | N | N | Y | RPM | Only for networks with Sales Proposal enabled |
cost | Set | Set | N | N | N | Y | RPM | Only for networks with Sales Proposal enabled |
p2plus_price | Float | N | N | N | Y | RPM | Only for networks with Sales Proposal enabled + (Enable CPX_UI or rating based selling) | |
p2plus_impression | Integer | N | N | N | Y | RPM | Only for networks with Sales Proposal enabled + (Enable CPX_UI or rating based selling) | |
rate_card_price | Float | N | N | N | Y | RPM | Only for networks with Sales Proposal enabled | |
billable_event_goal | Integer | N | N | N | Y | RPM | Only for networks with Sales Proposal enabled | |
placement_template_label | Set | FW_ID array | N | N | N | Y | RPM | Only for networks with Salels Proposal enabled; Array of placement template label ids |
The following example code block shows you how to create basic attributes for a placement.
<placement>
<insertion_order_id>1000</insertion_order_id>
<name>my placement</name>
<description>some description</description>
<instruction>my instruction</instruction>
<placement_type>MAKE_GOOD</placement_type>
<enable_canoe>false</enable_canoe>
<!-- RPM only attributes start-->
<buy_type_id>10001</buy_type_id>
<property_id>10002</property_id>
<adjust_from_balance>DEFERRED_REVENUE</adjust_from_balance>
<external_infos>
<external_info>
<external_system_id>ID1</external_system_id>
<external_id>xxx</external_id>
<primary>true</primary>
</external_info>
<external_info>
<external_system_id>ID2</external_system_id>
<external_id>xxx</external_id>
<primary>false</primary>
</external_info>
</external_infos>
<!-- RPM only attributes end-->
<!-- MRM only attributes start-->
<external_id>test external id</external_id>
<!-- MRM only attributes end-->
</placement>
The following example code block shows you how to clear basic attributes for a placement.
Note: Nodes name, buy_type_id, placement_type and enable_canoe cannot be cleared.
<placement>
<description></description>
<instruction></instruction>
<!-- RPM only attributes start-->
<external_info></external_info>
<property_id></property_id>
<adjust_from_balance></adjust_from_balance>
<!-- RPM only attributes end-->
<!-- MRM only attributes start-->
<external_id></external_id>
<!-- MRM only attributes end-->
</placement>
The following example code block shows you how to get basic attributes for a placement.
<placement>
<id>100000</id>
<insertion_order_id>1000</insertion_order_id>
<name>my placement</name>
<description>some description</description>
<placement_type>NORMAL</placement_type>
<instruction>my instruction</instruction>
<buy_type_id>10001</buy_type_id>
<property_id>10000</property_id>
<enable_canoe>false</enable_canoe>
<external_infos>
<external_info>
<external_system_id>ID1</external_system_id>
<external_id>xxx</external_id>
<primary>true</primary>
</external_info>
<external_info>
<external_system_id>ID2</external_system_id>
<external_id>xxx</external_id>
<primary>false</primary>
</external_info>
</external_infos>
</placement>
External Infos Attributes - Child Attributes of Basic Attributes
External Infos attributes provide external system details.
Name | Type | Mandatory | Details |
---|---|---|---|
external_system_id | FW_ID | Y | The ID of the external system |
external_id | String | Y | The external ID |
external_system_name | String | Y | The name of the external system. A GET response will return this field. This field is not required for Create or Update because FreeWheel will use the External System ID to assign an external ID to the correct external system |
primary | Boolean | N | Indicate if the external system is primary.If it is not explicitly set, the system will default to Primary = False |
Schedule Attributes - Child Attributes of Basic Attributes
Schedule attributes provide scheduling details.
Note: The schedule data should be grouped under the 'schedule' node. See a list of valid time zones.
The date/time format should follow the ISO 8061 format in local timezone for create requests, update requests and get responses; for example: 2013-09-04T10:59.
Note that ISO 8061 in UTC is not supported.
The system counts time only in minutes; please do not input time in seconds. The start_time will automatically start at the first second of the specified minute. The end_time will count until the last second of the specified minute.
Name | Type | Mandatory | Details | Notes |
---|---|---|---|---|
start_time | Time | Y | Tje start time of the placement | |
ent_time | Time | Y | The end time of the placement | If budget=evergreen with ongoing=true, end_time is optional and "Ongoing" by default |
time_zone | String | Y | The time zone of the placement |
Note: The schedule of a placement cannot be cleared via API V3.
Note: Time format of start_time and end_time in the Get response follows ISO 8061 format in local timezone.
Price Attributes - Child Attributes of Basic Attributes
All price data should be grouped under the 'price' node.
Price Attribute Definitions
Name | Type | Details | Mandatory | Notes |
---|---|---|---|---|
price_model | Enum | Valid values: ('ACTUAL_ECPM', 'FLAT_FEE_SPONSORSHIP') | Y | |
flat_fee_amount | Float | Y | Valid when price_model = FLAT_FEE_SPONSORSHIP |
Note: The Price and Budget Model widget will be set as blank when clearing the price.
Note: When budget is evergreen, FreeWheel returns an empty price node in the response.
Budget Attributes - Child Attributes of Basic Attributes
All budget data should be grouped under the 'budget' node.
Name | Type | Details | Mandatory | Notes |
---|---|---|---|---|
budget_model | Enum | Valid values: 'CURRENCY_TARGET', 'IMPRESSION_TARGET', 'ALL_IMPRESSION', 'SOV', 'SOP', 'SOI', 'EVERGREEN', 'DEMOGRAPHIC_IMPRESSION_TARGET', 'DEMOGRAPHIC_CURRENCY_TARGET', CUSTOM_EVENT_TARGET, CUSTOM_CURRENCY_TARGET | Y | Demographic Impression Target, Demographic Currency Target and Share of Impression (SOI) are optional features that must be turned on by your Program Manager. If you don't have these features turned on and submit these values for the Budget_model, we will return an error. |
billable_event | Integer | The ID of abstract_event | N | Valid when budget_model = CUSTOM_EVENT_TARGET or CUSTOM_CURRENCY_TARGET |
currency | Float | Y | Valid when budget_model = CURRENCY-TARGET | |
impression | Integer | Y | Valid when budget_model = IMPRESSION_TARGET | |
over_delivery_value | Float | To use the network default, the node should be empty in the XML | N | Valid when budget_model is CURRENCY_TARGET, IMPRESSION_TARGET, DEMOGRAPHIC_IMPRESSION_TARGET or DEMOGRAPHIC_CURRENCY_TARGET. The over delivery value is set as 'network default value' by default. RPM Workflow setting: If the Budget widget is locked in the workflow setting then the over_delivery_value is not editable. |
sov_percentage | Float | Y | Valid when budget_model = SOV | |
sop_percentage | Float | Y | Valid when budget_model = SOP | |
soi_percentage | Float | Y | Valid when budget_model = SOI | |
impression_cap | Integer | N | Valid when budget_model = ALL_IMPRESSION; Set as 'No Volume Cap' by default | |
estimated_impression_goal | Integer | Y | for placements with price = ACTUAL_ECPM in RPM network | |
ongoing | Boolean | N | Valid when budget_model = EVERGREEN; Set as 'False' by default | |
on_target_impressions | Integer | Y | Valid when budget_model = DEMOGRAPHIC_IMPRESSION_TARGET | |
gross_impression_cap | Integer | Y | Valid when budget_model = DEMOGRAPHIC_IMPRESSION_TARGET | |
on_target_currency | Float | Y | Valid when budget_model = DEMOGRAPHIC_CURRENCY_TARGET | |
gross_currency_cap | Float | Y | Valid when budget_model = DEMOGRAPHIC_CURRENCY_TARGET | |
demographic | Integer | The ID of target demographic | Y | Valid when budget_model = DEMOGRAPHIC_IMPRESSION_TARGET/DEMOGRAPHIC_CURRENCY_TARGET; Demographic ID 27, 30 or 31 cannot be targeted individually. If the placement has enabled Nielsen OTT measurement, Demographic ID 27, 30 and 31 can be targeted together with all other demographics for P2+ Target; To see the ID list of valid demographics for Nielsen and comScore, please click here |
data_source | Enum | Valid values: 'Nielsen', 'comScore' | Y | Valid when budget_model = DEMOGRAPHIC_IMPRESSION_TARGET/DEMOGRAPHIC_CURRENCY_TARGET |
Note: When budget model is CURRENCY_TARGET, IMPRESSION_TARGET, DEMOGRAPHIC_IMPRESSION_TARGET or DEMOGRAPHIC_CURRENCY_TARGET, and over_delivery_value is the network default value, the over_delivery_value will return blank.
Delivery Attributes - Child Attributes of Basic Attributes
The delivery data should be grouped under the 'delivery' node.
Name | Type | Details | Mandatory | Notes |
---|---|---|---|---|
priority | Enum | The priority of the placement; Valid values: 'GUARANTEED', 'PREEMPTIBLE' | Y | |
pacing | Enum | The pacing of the placement; Valid values: 'SMOOTH_AS', 'FAST_AS', 'FORECAST_INFORMED_DELIVERY_OPTIMIZATION', 'SMOOTH_OVER_LIFE_BUT_FAST_AS_WITHIN_A_DAY', 'CUSTOM_PACING', 'PRE_DEFINED' | Y | Daily Capped Pacing and Smooth Over Life But Fast As Within A Day are optional features that must be turned on by your Program Manager. If you don't have these features turned on and submit these values for Pacing, we will return an error. |
maximum_fido_pacing_rate | Enum | Valid values: ('NETWORK_DEFAULT', 1..10) | Y | Valid when pacing = FORECAST_INFORMED_DELIVERY_OPTIMIZATION |
pacing_point | Set | A set of pacing points, for each pacing point you must have a date and a percentage as described below | Y | Valid when pacing = CUSTOM_PACING; The date format should be follow ISO 8061 format in local timezone for create requests, update requests and get responses. An example: 2013-09-04T10:59. Note that ISO 8061 in UTC is not supported. |
frequency_cap | Set | A set of frequency caps for each frequency cap you must have a value, type, and period as described below | N | Only 3 frequency caps are supported |
demographic_on_target_calculation | Enum | Demographic On-Target Calculation; Valid values: 'DIRECT', 'COMPOSITIONAL', 'COMPOSITIONAL_INCLUDE_UNKNOWN_BANDS' | N | Valid when budget_model = DEMOGRAPHIC_IMPRESSION_TARGET and DEMOGRAPHIC_CURRENCY_TARGET; If a POST request is sent without the node, it will be set to the default value for your network. To set the default value for this node, please contact your Program Manager. |
demographic_impression_steering | Boolean | Enable demographic impression steering | N | Only valid when budget = DEMOGRAPHIC_IMPRESSION_TARGET or DEMOGRAPHIC_CURRENCY_TARGET; If you want to change the default value of the node, please contact your Program Manager |
level_to_optimize_for_profit | Enum | Level To Optimize For Profit; Valid values: 'NONE ', 'LOWEST', 'MODERATE', 'HIGHEST' | N | Level To Optimize For Profit is an optional feature that must be turned on by your Program Manager. If you don't have this feature turned on and submit this node, we will return an error. If a request is sent without the node or the node is empty, it will be set as "NONE" by default. |
excess_inventory | Enum | Valid values: 'NETWORK_DEFAULT', '0%','5%','20%', '50%', '70%', 'UNLIMITED' | N | If a request is sent without the node or the node is empty, it will be set as "NETWORK_DEFAULT" by default. |
excess_inventory_precondition | Enum | Valid values: ('UNLIMITED', 0,10,20...90) | N | Excess Inventory Precondition is an optional feature that must be turned on by your Program Manager. If you don't have this feature turned on and submit this node, we will return an error. If a request is sent without the node or the node is empty, it will be set as "UNLIMITED" by default if excess inventory is "0%", and set as "0" by default if excess inventory is set as greater than 0. |
override_repeat_mode | Enum | Valid values: 'NONE', 'REPEAT_EACH_BREAK','DO_NOT_REPEAT' | N | If a request is sent without the node or the node is empty, it will be set as "NONE" by default. |
dynamic_ad_insertion | Enum | Valid values: 'DYNAMIC_ENABLED', 'SCHEDULED_ONLY' | N | Requires the network function: "ENABLE_HYLDA" or "OPERATOR_LINEAR_ADDRESSABLE"; If a request is sent without the node or the node is empty, it will be set as "DYNAMIC_ENABLED" by default. |
Pacing_point Attributes - Child Attributes of Delivery Attributes
Name | Type | Mandatory | Details |
---|---|---|---|
date | Date | Y | |
percentage | Decimal | Y |
Frequency_cap Attributes - Child Attributes of Delivery Attributes
Name | Type | Mandatory | Details |
---|---|---|---|
value | Integer | Y | The cap value |
type | Enum | Y | The cap type; Valid values: 'IMPRESSION', 'PACKAGE' |
period | Enum or Integer | Y | The cap period; Valid values: ('TEN_MIN', 'HOUR', 'DAY', 'WEEK', '30DAYS', 'STREAM', 'ASSET', 'SITE_SECTION', 'CAMPAIGN') or integer (The unit is minute) |
Override Attributes - Child Attributes of Basic Attributes
The override data should be grouped under the 'override' node. When a placement's budget_model is SOP/SOI, override cannot be set.
Override Attribute Definitions
Name | Type | Details | Mandatory | RPM Only | Notes |
---|---|---|---|---|---|
mode | Enum | The override mode; Valid values: 'ABOVE_PAYING_ADS', 'AMONGST_PAYING_ADS', 'BELOW_PAYING_ADS' | Y | Valid when budget_model = CURRENCY_TARGET, IMPRESSION_TARGET, DEMOGRAPHIC_IMPRESSION_TARGET or DEMOGRAPHIC_CURRENCY_TARGET; No other budget models can set the override mode. | |
value | Integer | The range of value for ' Amongst Paying Ads ' is 0 -- 100; The range of value for 'Above Paying Ads' is 11 -- 20; The range of values for 'Below Paying Ads ' is -10 -- -1 | Y | Valid when mode is set | |
amongst_by | Enum | Valid values: 'ABSOLUTE_RANK', 'CPM' | Y | Valid when mode = AMONGST_PAYING_ADS; ABSOLUTE_RANK is an optional feature that must be turned on by your Program Manager. If you don't have this feature turned on and this value is submitted, we will return an error. | |
precedence_level | Enum | The precedence level of Placement; Valid values: 'BELOW_NORMAL ', 'ABOVE_NORMAL', 'NORMAL', 'HIGH', 'HIGHEST' | Y | Valid when budget_model = ALL_IMPRESSION or SOV; No other budget models can set override precedence level; Precedence level is an optional feature that must be turned on by your Program Manager; If you don't have this feature turned on and submit this value, we will return an error. |
Content Targeting Attributes - Child Attributes of Basic Attributes
The content targeting data should be grouped under the 'content_targeting' node.
Name | Type | Details | Mandatory | RPM Only | Notes |
---|---|---|---|---|---|
set_name | String | Set name of the content targeting | Y | Y | This field will be ignored if it is sent for a network that supports MRM only. |
include | Set | Contains all media items and their MRM IDs. Possible media object: 'video', 'series', 'video_group', 'site_section', 'site', 'site_group' | Y | The API only supports MRM content. If there is content chosen for another ad server, it will not be included in the content associated with the placement. The relationship between media items is OR. For ROVN, it would be video_group with id = -1; For ROSN, it would be site_group with id = -1 | |
exclude | Set | Same format as include | N | The API only supports MRM content. If there is content chosen for another ad server, it will not be included in the content associated with the placement. |
Advanced Content Targeting Attributes - Child Attributes of Basic Attributes
Name | Type | Details | Mandatory | RPM Only | Notes |
---|---|---|---|---|---|
set_name | String | Set name of the content targeting | Y | Y | This field will be ignored if it is sent for a network that supports MRM only. |
include | Set | Contains sets of media object groups. Each set contains all media items and their MRM IDs. Within one set, a relation_in_set node exists to indicate the relationship within one set (AND, OR). Between two sets, a relation_between_sets node exists to indicate the relationship between two sets (AND, OR) | Y | Right now, we only support 3 sets maximum. | |
exclude | Set | Same format as exclude in normal content targeting | N |
Content Package Targeting Attributes - Child Attributes of Basic Attributes
If using Content Packages, you cannot use the include/exclude set level of granularity
Name | Type | Details | Mandatory | RPM Only | Notes |
---|---|---|---|---|---|
set_name | String | Set name of the content targeting | Y | Y | This field will be ignored if it is sent for a network that supports MRM only |
content_package_id | Integer | The FW id of content package | Y |
Exclusivity Attributes - Child Attributes of Basic Attributes
The exclusivity data should be grouped under the 'exclusivity' node.
Name | Type | Details | Mandatory | Notes |
---|---|---|---|---|
level_of_exclusivity | Enum | The exclusivity level of the placement; Valid values: 'FULL', 'CUSTOM' | Y | |
scope_of_exclusivity | Enum | The exclusivity scope of the placement; Valid values: 'ALL_AD_UNITS', 'TARGETED_AD_UNITS', 'ADJACENT_ADS' | Y | ADJACENT_ADS is valid only when level_of_exclusivity = CUSTOM |
exemptions_uex | Enum | The exemption UEX of the placement; Valid values: 'CONTENT_SETTING_DICTATE', 'EXEMPT_FROM_UEX', 'NO_EXEMPT' | Y | Valid when budget model = ALL_IMPRESSION, SOV, SOP or SOI |
custom_exclusivity_exemption | Set | The customized scope of exclusivity of the placement is described below | N |
Scope of Exclusivity Attributes - Child Attributes of Exclusivity Attributes
Name | Type | Details |
---|---|---|
exclude | set | The Industries, Advertisers, Brands, Resellers, Campaigns, IOs, or Placements that are excluded from returning within the scope defined in scope_of_exclusivity. Each excluded item child node contains the following Excluded Item Child Node attributes described below |
exempt | Set | The Industries, Advertisers, Brands, Resellers, Campaigns, IOs, or Placements that are exempt from returning within the scope defined in scope_of_exclusivity. Each exempt item child node contains Exempt Item Child Node attributes as described below. |
Excluded Item Child Node Attributes - Child Attributes of Scope of Exclusivity Attributes
Name | Type | Details |
---|---|---|
id | Integer | Item ID |
name | String | Item name |
type | Enum | Valid values: 'ALL_INDUSTRIES', 'MRM_INDUSTRY', 'INDUSTRY_GROUP', 'ADVERTISER', 'BRAND', 'RESELLER', 'CAMPAIGN', 'IO', 'PLACEMENT' |
Exempt Item Child Node Attributes - Child Attributes of Scope of Exclusivity Attributes
Name | Type | Details |
---|---|---|
id | Integer | Item ID |
name | String | Item name |
type | Enum | Valid values: 'MRM_INDUSTRY', 'INDUSTRY_GROUP', 'ADVERTISER', 'BRAND', 'RESELLER', 'CAMPAIGN', 'IO', 'PLACEMENT', 'MUTUAL_EXEMPTED_PLACEMENT' |
Custom Targeting Attributes - Child Attributes of Basic Attributes
The custom targeting data should be grouped under 'custom_targeting'.
Name | Type | Details | Mandatory | Notes |
---|---|---|---|---|
set | Set | A set of custom targeting attributes for each set as described below | Y | If there are multiple sets, then the relationship within a set can only be "ANY". Across sets, the relationship is "AND". |
match | Enum | The logic within sets; Valid values: 'ANY', 'ALL' | N | If there is more than one set, match can only be set to 'ANY'. If there is only one set with multiple key values, the match can be 'ANY' or 'ALL'. Required if there is only one set. |
Custom Targeting Set Attributes - Child Attributes of Custom Targeting Attributes
Name | Type | Details |
---|---|---|
key_value | String | The key value string which should contains "=" |
Daypart Targeting Attributes - Child Attributes of Basic Attributes
The daypart targeting data should be grouped under 'daypart_targeting'.
Name | Type | Details | Mandatory | Notes |
---|---|---|---|---|
time_zone | String | The time zone of daypart targeting | Y | Values include existing Time Zones or 'RELATIVE', which indicates "Relative to Viewer's Timezone" |
part | Set | A set of daypart targets, use the following daypart part attributes as | Y |
Daypart Part Attributes - Child Attributes of Daypart Targeting Attributes
Name | Type | Details |
---|---|---|
start_time | Enum | '12 MIDNIGHT', '01:00AM', '02:00AM', '03:00AM', '04:00AM', '05:00AM', '06:00AM', '07:00AM', '08:00AM', '09:00AM', '10:00AM', '11:00AM', '12 NOON', '01:00PM', '02:00PM', '03:00PM', '04:00PM', '05:00PM', '06:00PM', '07:00PM', '08:00PM', '09:00PM', '10:00PM', '11:00PM' |
end_time | Enum | '01:00AM', ' 02:00AM ', ' 03:00AM', ' 04:00AM', '05:00AM', '06:00AM', '07:00AM', '08:00AM', ' 09:00AM', '10:00AM', '11:00AM', '12 NOON', '01:00PM', ' 02:00PM ', ' 03:00PM', '04:00PM', '05:00PM', '06:00PM', ' 07:00PM', '08:00PM', '09:00PM', '10:00PM', '11:00PM', ''11 :59PM' |
start_day | Enum | Day in week Valid values: 'SUNDAY', 'MONDAY', 'TUESDAY', 'WEDNESDAY', 'THURSDAY', 'FRIDAY', 'SATURDAY' |
end_day | Enum | Day in week Valid values: 'SUNDAY', 'MONDAY', 'TUESDAY', 'WEDNESDAY', 'THURSDAY', 'FRIDAY', 'SATURDAY' |
Geography Targeting Attributes - Child Attributes of Basic Attributes
The geography targeting data should be grouped under the <geography_targeting> node. This node features support for both including and excluding geography items.
Function/Node | Description | Data Type(s) | Creatable? | Updatable? | Included in GET? | MRM or RPM |
---|---|---|---|---|---|---|
include | Targeted geography items | Geography Set | Y | Y | Y | Both |
exclude | Excluded targeted geography items | Geography Set | Y | Y | Y | Both |
Geography Set Attributes - Child Attributes of Geography Targeting Attributes
Function/Node | Description | Data Type(s) | Creatable? | Updatable? | Included in GET? | MRM or RPM | Comments |
---|---|---|---|---|---|---|---|
country | The IDs of the countries to be targeted | Set<FW_ID> | Y | Y | Y | Both | See Geography Data for a list of values |
state | The IDs of the states to be targeted | Set<FW_ID> | Y | Y | Y | Both | See Geography Data for a list of values |
dma | The IDs of the dmas to be targeted | Set<FW_ID> | Y | Y | Y | Both | See Geography Data for a list of values |
city | The IDs of the cities to be targeted | Set<FW_ID> | Y | Y | Y | Both | See Geography Data for a list of values |
postal_code | The IDs of the postal_codes to be targeted | postal_code_package | The IDs of the postal_codes to be targeted | Set<FW_ID> | Y | Y | Y |
postal_code_package | The IDs of the postal_ode_packages to be targeted | Set<FW_ID> | Y | Y | Y | Both | See Geography Data for a list of values |
region | The IDs of the regions to be targeted | Set<FW_ID> | Y | Y | Y | Both | See Geography Data for a list of values |
Ad Product Attributes - Child Attributes of Basic Attributes
The ad product data should be grouped under the 'ad_product' node.
Name | Type | Details | Mandatory | Notes |
---|---|---|---|---|
link_method | Enum | The linking method of the placement; Valid values: 'NOT_LINKED', 'LINK_WHERE_POSSIBLE', 'ALL_LINKED' | Y | If one 'ad_unit_package_id' exists, 'link_method' is not required since the ad unit package has the link method pre-defined. If multiple 'ad_unit_package_id's are used but no 'link_method' is provided, the 'link_method' of first ad unit package (in the XML list) will be used. |
ad_unit_package_id | Integer | The ID of the ad unit package. Check the Ad Unit API to see how to get ad unit package | N | RPM Workflow Settings: If the Ad_product field is locked, then the API can not update the ad_unit_node, price, budget_exempt, and impression_cap fields. If the Price field is locked, then the API can not update an ad_unit's price but still can update the ad_unit_id, budget_exempt, and impression_cap. If the Budget field is locked, then the API can not update the ad_unit's budget_exempt and impression_cap but still can update the ad_unit_id and ad_unit price. |
ad_unit_node | Set | The set of ad unit node attributes as described below | N | The status of the ad_unit_node is not supported by RPM client. |
advanced_linking | Set | The advanced_linking defines variant linking scenarios which are combinations of different linking styles between different ad unit types, as described below | N | Only supported when link_method = LINK_WHERE_POSSIBLE or ALL_LINKED. |
custom_set | Set | The custom_set attributes allow you to specify exactly which ad units should be linked together, as described below | N | Only supported when link_method = NOT_LINKED. Custom Set is an optional feature that must be turned on by your Program Manager. If you don't have this feature turned on and submit this node, we will return an error. |
Ad Unit Node Attributes - Child Attributes of Ad Product Attributes
Name | Type | Details |
---|---|---|
ad_unit_id | Integer | The id of ad unit. Check the Ad Unit API to see how to get ad unit. |
status | Enum | The status of ad unit node. Valid values: 'ACTIVE', 'IN_ACTIVE' |
` | price` | Decimal |
budget_exempt | Boolean | Set budget exempt for ad unit node, check budget exempt |
impression_cap | Integer | Set impression cap for ad unit node, check impression cap |
Linking Scenario Attributes - Child Attributes of Ad Product Attributes
Name | Type | Details |
---|---|---|
instream | Enum | Valid values: 'ALL_LINKED', 'LINK_WHERE_POSSIBLE', 'NOT_LINKED' |
display | Enum | Valid values: 'ALL_LINKED', 'LINK_WHERE_POSSIBLE', 'NOT_LINKED' |
overlay | Enum | Valid values: 'ALL_LINKED', 'LINK_WHERE_POSSIBLE', 'NOT_LINKED' |
Custom Set Attributes - Child Attributes of Ad Product Attributes
Name | Type | Details |
---|---|---|
ad_unit_id | Integer | The ad or ad unit |
link_method | Enum | Valid values: 'LINK_WHERE_POSSIBLE', 'ALL_LINKED' |
Note: The "exclude from invoice" and "accounting price" attributes (the latter available for "Make Good" placements) could be cleared from an Ad Unit when updating the Ad Product via API V3 much like they would in the UI.
Note: Ad Product of a placement cannot be cleared via API V3.
Note: Ad units in an ad package will be shown as individual ad units; no ad package IDs are returned in the Get response. Status
is returned for MRM only networks.
Normal Audience Targeting Attributes - Child Attributes of Basic Attributes
The audience targeting data should be grouped under the 'audience_targeting' node.
Name | Type | Details | Mandatory | RPM Only | Notes |
---|---|---|---|---|---|
audience_item | Integer | Audience item ID | Y | Audience targeting is an optional feature that must be turned on by your Program Manager. If you don't have this feature turned on and submit this node, we will return an error. | |
include | Set | A set of audience IDs that should be matched | Y | ||
exclude | Set | Same format as include | N |
Advanced Audience Targeting Attributes - Child Attributes of Basic Attributes
The audience targeting data should be grouped under the 'audience_targeting' node.
Name | Type | Details | Mandatory | RPM Only | Notes |
---|---|---|---|---|---|
include | Set | Contains sets of audience items. Each set contains audience item MRM IDs. Within one set, a relation_in_set node exists to indicate the relationship within one set (AND, OR). Between two sets, a relation_between_sets node exists to indicate the relationship between two sets (AND, OR). | Y | Right now, we only support 3 sets maximum | |
exclude | Set | Same format as exclude in normal content targeting | N |
Metadata Attributes - Child Attributes of Basic Attributes
The metadata data should be grouped under the 'metadatas' node.
Name | Type | Details | Mandatory | RPM Only | Notes |
---|---|---|---|---|---|
field_id | Integer | The ID of metadata label in FW database | Y | Y | IDs are not shown in the UI, please contact FreeWheel to get the field ID mapping list. |
value | String | The value of the metadata field | Y | Y | The default value will be set if no value is given and a default value exists for current field. |
primary | Boolean | If "true": Current metadata is the primary metadata for current field; If "false": Current metadata is NOT the primary metadata for current field | Required for multi-occurrence fields | Y | If a metadata field is set to multi-occurrence, then one instance must be primary and only one field can be set as primary. Only one metadata can be set for single-occurrence field and it will always be primary metadata. |
Restrict Delivery to Campaign Tags Attributes - Child Attribute to Basic Attributes
Name | Type | Details | Mandatory | RPM Only | Notes |
---|---|---|---|---|---|
restrict_delivery_to_campaign_tags | Boolean | Setting this option will restrict delivery exclusively to tags generated specifically for this placement. | N |
Does not support clear on campaign tags.
Soft Reserve Attributes - Child Attributes to Basic Attributes
All soft reserve data should be grouped under the 'soft_reserve' node
Name | Type | Details | Mandatory | RPM or MRM Only | Notes |
---|---|---|---|---|---|
soft_reserve | Boolean | Soft reserve inventory for allowed duration | N | MRM | soft_reserve = true means soft reserve a placement; soft_reserve = false means soft release a placement |
Does not support clear on soft reserve
Industry Attributes - Child Attributes to Basic Attributes
All industry data should be grouped under the 'industry' node. To see the public list of valid industry IDs, please click here. Please contact FreeWheel if you would like to get IDs for your network's custom Industry Groups.
Name | Type | Details | Mandatory | RPM Only | Notes |
---|---|---|---|---|---|
mrm_industry | Integer | Included MRM industries | N | ||
industry_group | Integer | Included industry groups | N |
Platform Targeting Attributes - Child Attributes of Basic Attributes
All platform targeting data should be grouped under the 'platform_targeting' node.
Name | Type | Details | Mandatory | RPM Only | Notes |
---|---|---|---|---|---|
device | Integer | The ID of the device(s) to be targeted | N | See the list of valid platform IDs. | |
os | `Integer | The ID of the OS(s) to be targeted | N | See the list of valid platform IDs). | |
browser | Integer | The ID of the browser(s) to be targeted | N | See the list of valid platform IDs. | |
package | Integer | The ID of the package(s) to be targeted | N |
Alert Attributes - Child Attributes of Basic Attributes
All alert data should be grouped under the 'alert' node. Alert only support for MRM-only placement, and it's get-only.
Name | Type | Details | Mandatory | RPM or MRM | Notes |
---|---|---|---|---|---|
warning | String | All warning message(s) | N | MRM | |
error | String | All error message(s) | N | MRM |
Create/Update Alert Info is not supported.
Create Alert Info is not supported.
Upfront Association Attributes - Child Attributes of Basic Attributes
The upfront associate data should be grouped under the 'upfront_association' node.
Note: Upfront Association is an optional feature that must be turned on by your Program Manager.
Name | Type | Details | Mandatory | RPM Only | Notes |
---|---|---|---|---|---|
upfront_plan_component_id | Integer | Upfront plan Component upfront ID | Y | Y | Upfront Component IDs can be found as part of the Upfronts Plan. |
user_defined_allocated_budget | Boolean | User Defined Allocated Budget. If TRUE: Need also set allocated_budget field for user specified budget. If FALSE: No need to set allocated_budget field. | N | Y | The default value will be set if no value is given. The default value is FALSE. |
allocated_budget | Decimal | Allocated budget | N | Y | Must set this field if the user_defined_allocated_budget=TRUE. If placement budget model is impression, the number should be an integer. If it is currency, the number can be a decimal. |
hold_upfront_inventory | Boolean | Hold Upfront Inventory using current Placement Settings | N | Y | When set to TRUE, the placement's settings will be used to reserve inventory for forecasting purposes instead of the associated UPC's settings. |
Cost Attributes - Child Attributes of Basic Attributes
The cost data should be grouped under the 'cost' node.
Note: Cost is an optional feature that must be turned on by your Program Manager.
Function/Node | Data Type | Creatable? | Updatable? | Included in GET? |
---|---|---|---|---|
gross_cost | Float | N | N | Y |
net_cost | Float | N | N | Y |
Create/Update Cost is not supported.
Clear Cost is not supported.
Premiums Attributes - Child Attributes of Basic Attributes
The premiums data should be grouped under the 'premiums' node.
Note: Premiums is an optional feature enabled only for Networks with Sales Proposal enabled.
Function/Node | Data Type | Details | Creatable? | Updatable? | Included in GET? |
---|---|---|---|---|---|
id | FW_ID | Premium ID | Y | Y | Y |
Placement Template Label Attributes - Child Attributes of Basic Attributes
The placement template label data should be grouped under the 'placement_template_label' node.
*Note: Placement template label is an optional feature that must be turned on by your Program Manager.
Function/Node | Data Type | Details | Creatable? | Updatable? | Included in GET? |
---|---|---|---|---|---|
` | id` | FW_ID | Premium ID | Y | Y |
Create/Update Placement Template Label is not supported.
Clear Placement Template Label is not supported.
Updated 7 months ago