Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
A profile is a set of targeting parameters, such as gender, age, geography, and frequency. It can be applied to several objects in the system, most of which are listed below. The most common use of the profile service is to run a campaign; you create a profile and then associate it with the Campaign Service. The campaign object includes fields such as flight dates and associated creatives.
- Except for segment targeting, parameters are absolute. For example, if the geographical target is set only to the United States, ONLY U.S.-based impressions will receive bids.
- Segment targeting uses and/or Boolean logic.
- Profiles must be associated with either an advertiser or a publisher, in order to be used with several other objects in the system, listed below.
Profiles can be used with several other objects in the system (listed below). Any fields in the profile that do not apply to the associated object will be ignored.
- Advertiser
- Line Item
- Creative
- Campaign
- Payment Rule
- Ad Quality Rule
It is also possible to refer to a profile within a deal object, while it is not necessary for the profile to be associated to an advertiser or publisher.
REST API
Note
postal_code_action_include - To use this service for publisher profiles, replace advertiser_id with publisher_id.
JSON fields
General
| Field | Type | Description |
|---|---|---|
id |
int | The ID of the profile. Required: PUT, in query string. |
code |
string | Custom code for the profile. |
description |
string | Optional description. |
is_template |
Boolean | If true, the profile has been saved as a targeting template in. To get profiles that are targeting templates in, pass is_template=true in the query string of a GET call. For more details about targeting templates in, see "Managing Targeting Templates" within the app's Help System.Default: false |
last_modified |
timestamp | Time of last modification to this profile. |
is_archived |
boolean | Read-only. Indicates whether the profile has been automatically archived due to it's parent line item not being used (and therefore, having been archived). Once set as true, the value can't be changed and the only calls that can be made on the profile object are GET and DELETE.Note: If a profile's parent is automatically archived, the profile will also be archived. In addition, once archived, the profile may not be associated with any line items or campaigns. Default: false |
archived_on |
timestamp | Read-only. The date and time on which the profile was archived (i.e., when the is_archived field was set to true).Default: null |
Frequency
For details on Frequency and Recency Targeting and the below fields, see here.
| Field | Type | Description |
|---|---|---|
max_lifetime_imps |
int | The maximum number of impressions per person. If set, this value must be between 0 and 255.Default: null |
min_session_imps |
int | The minimum number of impressions per person per session. If set, this value must be between 0 and 255.Default: null |
max_session_imps |
int | The maximum number of impressions per person per session. If set, this value must be between 0 and 255.Default: null |
max_day_imps |
int | The maximum number of impressions per person per day. If set, this value must be between 0 and 255.Default: null |
max_hour_imps |
int | The maximum number of impressions per person per hour. If set, this value must be between 0 and 255.Default: null |
max_week_imps |
int | The maximum number of impressions per person per week. If set, this value must be between 0 and 255.Default: null |
max_month_imps |
int | The maximum number of impressions per person per month. If set, this value must be between 0 and 255.Default: null |
min_minutes_per_imp |
int | The minimum number of minutes between impressions per person. This field may not be set to 0.Default: null |
max_page_imps |
int | The maximum number of impressions per page load (seller's ad request). Note: Only relevant for multi-tag auctions (For example: /(ss)vmap). Default: null |
require_cookie_for_freq_cap |
Boolean | Indicates whether you'll exclusively serve to users with known identifiers to maintain your frequency cap settings. Setting this field to true indicates that you'll only serve ads to users with known identifiers, thereby maintaining your frequency cap settings. Setting this field to false indicates that you'll serve to anonymous users as well. If you've set a daily-occurring frequency cap, advanced frequency management will control impressions to anonymous users through modeling. Otherwise, frequency-cap settings won't apply to those users. Because this flag is only enforced when a frequency cap has been set, setting this field to true won't require identifiers for an object that has no active frequency-cap settings.Default: trueNote: Advanced Frequency Management is currently not supported for Monetize users. |
Targeting
When multiple targets are set, only inventory that satisfies all targeting criteria is eligible. For example, if you target intended audience general and inventory sources x, y, and z, then the profile will only target general audience inventory from inventory sources x, y, and z.
Note
You may not specify both the segment_targets and segment_group_targets fields in any POST or PUT calls (only one of the two may be specified).
- Be aware that some targets accept an array of objects rather than integers or strings. The format can be found in the examples at the bottom of this page.
- For Programmatic Guaranteed Buying Line Items:
- You can only target one deal target (see Deal Targets below) and the
allow_unauditedfield must be set totrue. - Do not set any other targeting fields.
- You can only target one deal target (see Deal Targets below) and the
- For Augmented Line Items, it is mandatory to set at least one country as geography targeting (See Country Targets below).
- Effective August 30, 2021:
TapAd's Graph will provide global coverage excluding Europe.
Xandr's Graph will provide coverage for Europe and the United States.
Adjust your code accordingly.
| Field | Type | Description |
|---|---|---|
graph_id |
int | - Null if the line item is targeting your member seat's default graph selection. - 0 if the line item is targeting no graph. - 3 if the line item is targeting the TapAd Graph.- 4 if the line item is targeting the Xandr Graph. Note: For select EMEA Invest member seats included in the default cross-device pilot, there is a change to the graph_id field expectations. Passing graph_id as Null will now correspond to your member seat's default graph selection. For members in our EMEA pilot, this will be graph_id = 4. To disable cross-device targeting, these member seats will need to pass graph_id = 0. |
daypart_timezone |
string | The timezone to be used with the daypart_targets. For more details, see API Timezones.Note: null is equivalent to the user's timezone.Default: null |
daypart_targets |
array of objects | The day parts during which to serve the campaign. For more details, see Daypart Targets below. Note: If you do not set any daypart targets, the campaign will serve on all days of the week at all times. |
segment_targets |
array of objects | Note: If you use segment_targets and edit the associated campaign in our UI, the segments will be converted to a group in the segment_group_targets array. Therefore, it's recommended to use segment_group_targets when working via the API.The segment IDs to target, each of which has an associated action ( include or exclude). You define the Boolean logic between segments with the segment_boolean_operator field outside of the array. For more details, see Segment Targets and example below. |
segment_group_targets |
array of objects | The segment groups to target. Whereas the segment_targets array allows you to define Boolean logic between individual segments, this array allows you to establish groups of segments, defining Boolean logic between the groups as well as between the segments within each group. You define the Boolean logic between groups with the segment_boolean_operator field outside of the array; you define the Boolean logic between segments in a group with the boolean_operator field within the group object. For more details, see Segment Group Targets and an example below.Note: Null segments cannot be added. You may not add null segments to this array using POST or PUT. |
segment_boolean_operator |
enum | If using segment_targets, this defines the Boolean logic between the segments specified. If using segment_group_targets, this defines the Boolean logic between the segment groups (the Boolean logic between segments in a group is defined directly in the segment_group_targets array).Possible values: and or or.Default: and |
age_targets |
array of objects | The list of age ranges to target for this profile. The allow_unknown field is available as a Boolean in order to account for ad calls where the age of the user is not available. For more description and examples, see the Age Targets section below. |
gender_targets |
object | The gender targeting used for the profile. Possible values for gender are m or f. The allow_unknown field is available as a Boolean in order to account for ad calls where the gender of the user is not available. See the Gender Targets section below. |
country_targets |
array of objects | The country IDs to be either excluded or included in a profile, as defined by the country_action field. You can use the Country Service to retrieve a list of country IDs. For more details and format, see Country Targets.Required: POST/PUT, when country_action is include. |
country_action |
enum | Action to be taken on the country_targets list. Possible values: include or exclude.Default: exclude |
region_targets |
array of objects | The region/state IDs to be either excluded or included in a profile, as defined by the region_action field. You can use the Region Service to retrieve a list of region IDs. For more details and format, see Region Targets below.Required On: POST/PUT, when region_action is include. |
require_transparency_and_consent_framework_string |
boolean | - If true, only allow associated objects to purchase inventory where valid TCF string is present.- If false, allow associated objects to purchase any inventory that falls within pre-defined targeting declarations.- This is only supported on advertiser level as targeting at other levels may lead to undefined behavior. Note: This parameter is only applicable to the traffic coming from territories where GDPR applies. Default: false |
region_action |
enum | Action to be taken on the region_targets list.Possible values: include or exclude.Default: exclude |
dma_targets |
array of objects | The IDs of designated market areas to be either excluded or included in a profile, as defined by the dma_action field. You can use the Designated Market Area Service to retrieve a list of DMA IDs. |
dma_action |
enum | Action to be taken on the dma_targets list.Possible values: include or exclude. Default: exclude |
city_targets |
array of objects | The IDs of cities to be either included or excluded in a profile, as defined by the city_action field. You can use the City Service to retrieve a list of city IDs. For more details and format, see City Targets below.Required On: POST/PUT, when city_action is include. |
city_action |
enum | Action to be taken on the city_targets list. Possible values: include or exclude.Default: exclude |
domain_targets |
array of objects | List of domains to be either included or excluded in a profile, as defined by the domain_action field. For format, see the example below. |
domain_action |
enum | Action to be taken on the domain_targets list. For details on domains, see the Create a Domain or App List in documentation.Possible values: include or exclude.Default: exclude |
domain_list_targets |
array of objects | The IDs of domains lists to either include or exclude in a profile, as defined by the domain_list_action field. You can use the Domain List Service to retrieve domain list IDs. See the example below for format.Note: You can use no more than 100 domain lists in a single profile. |
domain_list_action |
enum | Action to be taken on the domain_list_targets list. For details on domains, see Working with Targeting Lists in documentation. Possible values: include or exclude.Default: exclude |
platform_placement_targets |
array of objects | RTB or other Networks' inventory you can target. You can use Inventory Resold or Reporting services to find platform placements. |
size_targets |
array of objects | List of eligible sizes to be included in the profile. The sizes are in an array size objects, each object containing the width and height of each target size. See example below. Note: When you enable roadblocking on a guaranteed line item, this value is combined with creative sizes on the line item and campaign to produce forecasting. The size with the lowest forecasted number of impressions will be returned as the forecasted capacity. |
seller_member_group_targets |
array of objects | The seller member groups to be excluded or included in a profile. To target Xandr's direct supply, see the format below. |
member_targets |
array of objects | Seller member IDs to be either excluded or included in a profile. The specific format can be found in the example at the bottom of the page. |
member_default_action |
enum | Deprecated. Default: null |
video_targets |
object | Video target IDs to be included in a profile. For the specific format, see Video Targets below. |
engagement_rate_targets |
array of objects | Target specific, highly performant inventory based on historic performance. For details, see Engagement Rate Targets below. Default: null |
publisher_targets |
array of objects | Managed/direct publisher IDs to be either excluded or included in a profile. |
site_targets |
array of objects | The sites IDs to be either excluded or included in a profile. Exclude or include is inherited from the publisher_targets field.Default: If you do not provide action with site_targets, action will default to NULL and profile.inventory_action will be used. |
placement_targets |
array of objects | The placement IDs to be either excluded or included in a profile. Exclude or include is inherited from the publisher_targets field.Default: If you do not provide action with placement_targets, action will default to NULL and profile.inventory_action will be used. |
inventory_action |
enum | Action to be taken on the inventory_targets, publisher_targets, site_targets, and placement_targets list. Possible values: include or exclude. If action is include, then any targeted publisher, site, or placement will be included.Default: exclude |
content_category_targets |
object with string and array | The content categories to target for this profile as well as whether to allow unknown categories. For more details and format, see Content Category Targets below. To retrieve content category IDs, use the Content Category Service. |
deal_targets |
array of objects | The deal IDs to be targeted by this profile. A deal is an agreement between a seller and buyer that may provide the buyer preferential pricing, access to exclusive inventory, reduced competition on inventory, or other opportunities. For more details and format, see Deal Targets below. For more information on how the value of this field and the deal_action_include field affect targeting results, see Targeting Results for deal_action_include AND deal_targets fields below. |
deal_list_targets |
array of objects | The deal list IDs to be targeted by this profile. See example below. Deal list IDs can be fetched using the Deal List Service. |
platform_publisher_targets |
array of objects | Third party publisher IDs to be either excluded or included in a profile. For a list of IDs the Inventory Resold Service. |
platform_content_category_targets |
array of objects | List of network resold content categories to target for this profile. For a list of IDs, see the Inventory Resold Service. |
use_inventory_attribute_targets |
Boolean | If true, the profile will allow inventory that has the sensitive attributes included in inventory_attribute_targets.Default: false |
trust |
enum | Indicates the level of audit which inventory must meet in order to be eligible. Possible values: appnexus or "seller". If this field is set to "appnexus", the allow_unaudited field must be set to false.Default: seller |
allow_unaudited |
Boolean | If true, this profile will allow unaudited inventory to pass targeting. If the trust field is set to appnexus, this must be set to false.Note: - This setting overrides the seller trust settings in the inventory_trust object of the Member Service.- For Programmatic Guaranteed Buying Line Items, allow_unaudited must be set to true.Default: false |