Line Targeting

Overview

BrightRoll DSP allows you to set up lines in your campaigns to target exchanges, deals, locations, demographics, ad positions, frequency, audiences, devices, days of the week, apps, URLs, page relevancy, mobile carriers, and languages.

Supported Targeting Types

There are several ways to get a list of the supported Targeting Types.

  1. Refer to the table below.
  2. Check the current list on the Targeting Types page.
  3. Use the URL below to get a list via an API request.
GET https://api.admanagerplus.yahoo.com/traffic/dictionary/targetingTypes

The following table provides details on the available targeting types:

Targeting Type Description Display Video Native
FREQUENCY_CAPPING Set a limit on how frequently an ad is shown to a user within a specified time frame. Y Y N
AD_POSITION Target the location on a page that you want your display ads to appear. Y N N
DEMOGRAPHIC Reach your desired audience with age and gender targeting. Y Y Y
TECHNOLOGY Target users based on the technologies in their computing environment such as device type, operating system (desktop and mobile) and browser. Y Y Y
DAY_PARTING Choose the days and times your display or video ads should serve. Y Y N
AB_TESTING If you have created user groups for A/B testing, you can target those user groups to see the results of your testing. Y Y N
PLAYER_SIZE Enable targeting based on the player size. N Y N
AD_INITIATION For video ads, you can set the type of ad initiation you want to target (Auto Initiated, User Initiated, Unknown, or All). N Y N
LANGUAGES Target lines based on the language users most frequently view in their browsers. Advertisers can target or exclude specific languages. Y Y N
VIEWABILITY You can set hard viewability goals for display and video line items. When you set a viewability threshold for a line item, viewability takes precedence over line item delivery, and you can expect line items to achieve and maintain the viewability goal. Y Y N
INVENTORY_TYPE You can explicitly target web vs. in-app supply. Y Y Y
BOT Note: Only available via special role. Ensure your ads are properly represented and delivered to real people, rather than to bot traffic. Y Y N
EXCHANGES A line can target one or more exchanges or available private marketplace deals (but not both). Y Y N
CONTEXTUALS If you have created contextuals for an advertiser, you can set up targeting to serve or exclude ads based on the contextual. Y Y N
SITE_LISTS If you have set app lists and/or site lists to include and/or exclude apps and URLs, you can target those app lists and/or site lists. Y Y N
SEGMENT (Coming Soon) If you have created audiences or pixels (beacons), you can perform line item targeting using include and exclude conditions. Native lines can target audiences but not pixels. Y Y Y
MOBILE (Coming Soon) If you want to target mobile device users that use a particular carrier, you can target the mobile carriers you are interested in. Mobile carriers available for targeting depend on the locations you are targeting. Y Y N
GEOGRAPHY Location targeting enables you to target specific geographical areas. You can target a country, state, city, Nielsen Designated Marketing Area (DMA), ZIP or postal code, or a geofencing location. Native lines can only target by Country/State/City/DMA. You can set up geofencing to target users within a specified radius of a given address. Y Y Y

Fields (Common)

Line Targeting payload contains the following fields:

Name Description Type Targeting Type
id ID of the line. integer N/A
genders

Genders targeted.

  • MALE
  • FEMALE
  • UNKNOWN
  • ALL
array DEMOGRAPHIC
ages

Age ranges targeted.

  • 18-20
  • 21-24
  • 25-34
  • 35-44
  • 45-49
  • 50-54
  • 55-64
  • 65+
  • UNKNOWN
  • ALL
array DEMOGRAPHIC
threshold Acceptable in-target audience composition percentage for video ads. This value threshold indicates the percentage of impressions that reach the intended demographic. Valid values: 20, 30, 40, 50, 60, 70, 80. Note This field is valid when campaign targeting verification vendor is not Yahoo. integer DEMOGRAPHIC
frequencyCapPeriod

Frequency capping interval.

  • MINUTES
  • HOURLY
  • DAILY
  • WEEKLY
  • UNLIMITED - no limit to the number of times the ad can be displayed.
text FREQUENCY_CAPPING
frequencyCapValue

Number of impressions allowed for the selected frequencyCapPeriod. If frequencyCapPeriod selected is:

  • UNLIMITED - Do not provide frequencyCapValue in the payload.
  • MINUTES - Max allowed limit for a minute is 5.
  • HOURLY - Max allowed limit for a hour is 10.
  • DAILY - Max allowed limit for a day is 20.
  • WEEKLY - Max allowed limit for a week is 140.
  • MONTHLY - Max allowed limit for a month is 600.
integer FREQUENCY_CAPPING
serveUnknownUser
  • true - serve to unknown users.
  • false - serving is limited to users known to Yahoo.
boolean FREQUENCY_CAPPING
days

Days in a week targeted.

  • SUNDAY
  • MONDAY
  • TUESDAY
  • WEDNESDAY
  • THURSDAY
  • FRIDAY
  • SATURDAY
  • ALL
array DAY_PARTING
hours Hours in a day targeted. Valid values: [0 - 23]. If response contains all values (0-23), it means the entire day is targeted. To run ads throughout the day, send an empty array in the POST call. - 0 indicates 12 AM and 23 indicates 11 PM. array DAY_PARTING
languages

Languages targeted.

  • UNKNOWN
  • ENGLISH
  • CHINESE
  • SPANISH
  • JAPANESE
  • PORTUGUESE
  • GERMAN
  • ARABIC
  • FRENCH
  • RUSSIAN
  • KOREAN
  • DUTCH
  • SWEDISH
  • ITALIAN
  • INDONESIAN
  • ALL
array LANGUAGES
inventoryTypes

Inventory types targeted.

  • WEB
  • APP
array INVENTORY_TYPE
bots

Bot fraud prevention partner.

  • DOUBLE_VERIFY
  • IAS
array BOT
userGroupEntry User group entry. Refer to User Groups. Note: For POST, you need to supply only the id field, not the entire object. object AB_TESTING
deviceTypes

Device types targeted.

  • DESKTOP
  • PHONE
  • TABLET
  • UNKNOWN
  • ALL
array TECHNOLOGY
os

OS types targeted.

  • MAC
  • WINDOWS
  • LINUX
  • OTHER
  • ALL
array TECHNOLOGY
browsers

Browser types targeted. Note: deviceTypes must be set to DESKTOP in order to target browsers.

  • IE
  • CHROME
  • FIREFOX
  • SAFARI
  • EDGE
  • ALL
array TECHNOLOGY
mobileOs

Mobile OS types targeted. Note: deviceTypes must be set to PHONE or TABLET in order to target mobileOs.

  • IOS
  • ANDROID
  • WINDOWS
  • RIM
  • OTHER
  • ALL
array TECHNOLOGY
adInitiations

For video ads, the targeted ad initiations.

  • AUTOINITIATED - The video starts without any user action.
  • USERINITIATED - The video starts only when the user clicks Play.
  • UNKNOWN
  • ALL
array AD_INITIATION
positions

For display ads, the location on a page where the ads will appear.

  • ABOVE_FOLD - The ad serves on the top 50% of the page.
  • PARTIAL_VIEW - At least 25% of the ad is visible.
  • BELOW_FOLD - The ad serves on the bottom 50% of the page.
  • UNKNOWN - The ad serves in an unknown ad position.
  • ALL
array AD_POSITION
playerSizes

For video ads, BrightRoll DSP determines the player size based on the width and height (in pixels) contained in the bid request. BrightRoll DSP extracts the larger of the two, and assigns a player size accordingly.

  • SMALL - <350px.
  • MEDIUM - 350px to 500px
  • LARGE - >=500px
  • UNKNOWN
  • ALL
array PLAYER_SIZE
inviewThreshold Viewability rate threshold the line should achieve. Valid values: [1 - 100]. float VIEWABILITY
publishers Publishers/exchanges targeted. Refer to Exchanges. Note: For POST, you need to supply only the id values in an array, not the entire publisher object. Note: You can not target both publishers and deals at the same time. array EXCHANGES
types Targeting types enabled and disabled for the line. Refer to types. array N/A

Fields (Read)

In addition to the Common fields, the following fields are only returned when reading (GET) the line targeting:

Name Description Type Targeting Type
dealsIncluded Private marketplace deals targeted. Refer to Deals. array EXCHANGES
contextualsIncluded Targeted contextuals which are marked as Included. Refer to Contextuals. array CONTEXTUALS
contextualsExcluded Targeted contextuals which are marked as Excluded. Refer to Contextuals. array CONTEXTUALS
siteListsIncluded Targeted site / app lists which are marked as Included. Refer to Site Lists. array SITE_LISTS
siteListsExcluded Targeted site / app lists which are marked as Excluded. Refer to Site Lists. array SITE_LISTS
geosIncluded Targeted geo locations which are marked as Included. Refer to Geo Payload. array GEOGRAPHY
geosExcluded Targeted geo locations which are marked as Excluded. Refer to Geo Payload. array GEOGRAPHY
geoFencingsIncluded Targeted geo fencing locations. Refer to Geo Fencings Payload. array GEOGRAPHY

Fields (Write)

In addition to the Common fields, the following fields are only returned when creating or updating (POST) the line targeting:

Name Description Type Targeting Type
deals Private marketplace deals to target. To create or update targeted deals, refer to Deals Payload. To retrieve deals available for targeting, refer to Read Targeting Deals. Note: You can not target both publishers and deals at the same time. array EXCHANGES
contextuals Contextuals to target. To create or update targeted contextuals, refer to Contextuals Payload. To retrieve contextuals available for targeting, refer to Read Targeting Contextuals. array CONTEXTUALS
siteLists Site / App lists to target. To create or update targeted site / app lists, refer to Site Lists Payload. To retrieve site / app lists available for targeting, refer to Read Targeting Site Lists. array SITE_LISTS
geos Geographic locations to target. To create or update targeted geo locations, refer to Geos Payload. To retrieve geo locations available for targeting, refer to Read Targeting Geos. Note: You can not target both geo locations and geo fencing at the same time. array GEOGRAPHY

“types” Payload

When reading (GET) existing line targeting, the types payload object shows all the targeting types which are enabled for the line.

When creating or updating (POST) line targeting, the types payload object contains all the targeting types which are to be enabled or modified.

Name Description Type
id (Read Only) ID of the targeting type. integer
name Targeting type name. Refer to Targeting Types. text
isTargeted
  • true - Targeting is enabled for the type.
  • false - Targeting is disabled for the type.
boolean

Example Payload (Partial)

{
  "types": [
    {
      "id": 8,
      "isTargeted": true,
      "name": "DAY_PARTING"
    },
    {
      "id": 3,
      "isTargeted": true,
      "name": "AD_POSITION"
    }
  ]
}

“deals” Payload

The deals payload object used for creating or updating the targeted Deals contains the following fields:

Name Description Type
added Array of Deal IDs to target. array
removed Array of Deal IDs to be removed from targeting. array
clearAll

Indicates if all existing targeted deals should be removed.

  • true - Remove all targeted deals. This will disable EXCHANGES targeting.
  • false - (Default Value) Do not remove any targeted deals.
boolean

To retrieve the Deals available for targeting, refer to section Read Targeting Deals.

To see a sample for targeting a Deal, refer to Deals Example.

“contextuals” Payload

The contextuals payload object used for creating or updating the targeted Contextuals contains the following fields:

Name Description Type
addedDoubleVerify Array of Double Verify Contextual IDs to target. array
addedIAB Array of IAB Contextual IDs to target. Note: Must provide a value for excludeIAB to indicate if the contextuals shold be included or excluded. array
excludeIAB

Indicates if the added IAB Contextual IDs are to be excluded or included.

  • true - All IDs in the addedIAB field will be excluded from targeting.
  • false - All IDs in the addedIAB field will be included in targeting.
boolean
addedIASBrandSafety Array of IAS Brand Safety Contextual IDs to target. array
addedIASMediaQuality Array of IAS Media Quality Contextual IDs to target. Note: Must provide a value for excludeIASMediQuality to indicate if the contextuals shold be included or excluded. array
excludeIASMediaQuality

Indicates if the added IAS Media Quality Contextual IDs are to be excluded or included.

  • true - All IDs in the addedIASMediaQuality field will be excluded from targeting.
  • false - All IDs in the addedIASMediaQuality field will be included in targeting.
boolean
addedIASContextual Array of IAS Contextual IDs to target. Note: Must provide a value for excludeIASContextual to indicate if the contextuals shold be included or excluded. array
excludeIASContextual

Indicates if the added IAS Contextual IDs are to be excluded or included.

  • true - All IDs in the addedIASContextual field will be excluded from targeting.
  • false - All IDs in the addedIASContextual field will be included in targeting.
boolean
removed Array of Contextual IDs to be removed from targeting. array
clearAll

Indicates if all existing targeted contextuals should be removed.

  • true - Remove all targeted contextuals. This will disable CONTEXTUALS targeting.
  • false - (Default Value) Do not remove any targeted contextuals.
boolean

To retrieve the Contextuals available for targeting, refer to section Read Targeting Contextuals.

To see a sample for targeting a Contextual, refer to Contextuals Example.

“siteLists” Payload

The siteLists payload object used for creating or updating the targeted Site / App Lists contains the following fields:

Name Description Type
added

Array of objects containing the following fields:

  • entityId - ID of the site / app list to be added.
  • excluded - Indicates if the added IDs are to be excluded or included. true: exclude from targeting; false - include in targeting.
array
removed Array of Site & App List IDs to be removed from targeting. array
clearAll

Indicates if all existing targeted site / app lists should be removed.

  • true - Remove all targeted site / app lists. This will disable SITE_LISTS targeting.
  • false - (Default Value) Do not remove any targeted site / app lists.
boolean

To retrieve the Site / App Lists available for targeting, refer to section Read Targeting SiteLists.

To see a sample for targeting a Site / App List, refer to Site List Example.

“geosIncluded” & “geosExcluded” Payload

When you retrieve line targeting information, geosIncluded and geosExcluded fields contain the included and excluded geographic locations. Note the following fields of interest:

Name Description Type
id Unique ID of the location. text
name Location name. text
level

Type of location.

  • City
  • State
  • Country
  • Dma
text

Example Response (Partial)

{
  "geosIncluded": [
    {
      "id": "###15#nor",
      "name": "More Og Romsdal, Norway",
      "description": "more og romsdal",
      "level": "State",
      "key": "15, nor",
      "excluded": false
    }
  ],
  "geosExcluded": [
    {
      "id": "##callahan#fl#usa",
      "name": "Callahan, Florida",
      "description": "callahan, fl",
      "level": "City",
      "key": "callahan, florida",
      "excluded": true
    }
  ]
}

“geos” Payload

The geos payload object used for creating or updating the targeted Geographic locations contains the following fields:

Name Description Type
added

Array of objects containing the following fields:

  • name - Name of the geo location to be added.
  • excluded - Indicates if the added names are to be excluded or included. true: exclude from targeting; false - include in targeting.
array
removedNames Array of unique geo location names to be removed from targeting. array
clearAll

Indicates if all existing targeted geo locations should be removed.

  • true - Remove all targeted geo locations. This will disable GEOGRAPHY targeting.
  • false - (Default Value) Do not remove any targeted geo locations.
boolean

To retrieve the Geographic locations available for targeting, refer to section Read Targeting Geos.

To see a sample for targeting a Geographic location, refer to Geos Example.

“geoFencingsIncluded” Payload

When you retrieve line targeting information, geoFencingsIncluded field contain the included geo fencing locations. Note the following fields of interest:

Name Description Type
id Geo fencing ID. integer
country Geo fencing address country name. text
location Geo fencing location. This is the address. text
radius Radius of the geo fence. This is how far away a user can be from each addresses and still be targeted. integer
radiusUnit

Distance unit of the radius.

  • MILES
  • FEET
  • METERS
text

Example Response (Partial)

{
  "geoFencingsIncluded": [
    {
      "id": 138745,
      "country": "United States",
      "location": "328 Lomita Dr, Stanford, CA 94305",
      "latitude": 37.43249,
      "longitude": -122.17034,
      "radius": 5,
      "radiusUnit": "MILES"
    },
    {
      "id": 138746,
      "country": "United States",
      "location": "1600 Amphitheatre Pkwy, Mountain View, CA 94043",
      "latitude": 37.42307,
      "longitude": -122.08414,
      "radius": 5,
      "radiusUnit": "MILES"
    }
  ]
}

“geoFencings” Payload

The geoFencings payload object used for creating or updating the targeted Geo Fencing locations contains the following fields:

Name Description Type
added

Array of objects containing the following fields:

  • location - Addresses to target for geo fencing. Geo fencing will target users whose current location is within the specified distance from this addresses. The address needs to be in the following format: [Number] Address City State Zip. Note that Zip code / Postal code is optional.
array
removed Array of geo fencing IDs to be removed from targeting. array
clearAll

Indicates if all existing targeted geo fencing addresses should be removed.

  • true - Remove all targeted geo fencing addresses. This will disable GEOGRAPHY targeting.
  • false - (Default Value) Do not remove any targeted geo fencing addresses.
boolean
radius Radius of the geo fence. This is how far away a user can be from each addresses and still be targeted. integer
radiusUnit

Distance unit of the radius.

  • MILES
  • FEET
  • METERS
text

To see a sample for Geo Fence targeting, refer to Geo Fencing Example.

Read Line Targeting

To retrieve targeting data for a specific line, make a GET call with the id parameter.

GET https://dspapi.admanagerplus.yahoo.com/traffic/lines/{id}/targeting
Name Description Type Required?
id Line ID integer Y

The response will be the Line Targeting associated with the given ID.

Example Request

GET https://dspapi.admanagerplus.yahoo.com/traffic/lines/365277/targeting

Example Response

{
  "response": {
    "types": [
      {
        "name": "GEOGRAPHY",
        "id": 4,
        "isTargeted": true
      },
      {
        "name": "PLAYER_SIZE",
        "id": 14,
        "isTargeted": true
      },
      {
        "name": "TARGET_VIEWABILITY",
        "id": 13,
        "isTargeted": false
      },
      {
        "name": "AD_INITIATION",
        "id": 15,
        "isTargeted": true
      },
      {
        "name": "VIEWABILITY",
        "id": 24,
        "isTargeted": true
      },
      {
        "name": "VIDEO_INVENTORY",
        "id": 25,
        "isTargeted": false
      },
      {
        "name": "DEMOGRAPHIC",
        "id": 6,
        "isTargeted": true
      },
      {
        "name": "FREQUENCY_CAPPING",
        "id": 1,
        "isTargeted": true
      },
      {
        "name": "AB_TESTING",
        "id": 10,
        "isTargeted": true
      },
      {
        "name": "SEGMENT",
        "id": 12,
        "isTargeted": false
      },
      {
        "name": "TECHNOLOGY",
        "id": 7,
        "isTargeted": true
      },
      {
        "name": "DAY_PARTING",
        "id": 8,
        "isTargeted": true
      },
      {
        "name": "SITE_LISTS",
        "id": 9,
        "isTargeted": false
      },
      {
        "name": "CONTEXTUALS",
        "id": 2,
        "isTargeted": false
      },
      {
        "name": "EXCHANGES",
        "id": 11,
        "isTargeted": true
      },
      {
        "name": "MOBILE",
        "id": 16,
        "isTargeted": false
      },
      {
        "name": "LANGUAGES",
        "id": 19,
        "isTargeted": true
      },
      {
        "name": "SEAT_LEVEL_SITE_LISTS",
        "id": 20,
        "isTargeted": true
      },
      {
        "name": "BOT",
        "id": 21,
        "isTargeted": true
      },
      {
        "name": "INVENTORY_TYPE",
        "id": 26,
        "isTargeted": true
      }
    ],
    "genders": [
      "MALE"
    ],
    "ages": [
      "65+",
      "UNKNOWN",
      "21-24"
    ],
    "days": [
      "SUNDAY",
      "TUESDAY",
      "SATURDAY"
    ],
    "hours": [
      3,
      4,
      5,
      6
    ],
    "deviceTypes": [
      "DESKTOP",
      "TABLET"
    ],
    "os": [
      "ALL"
    ],
    "browsers": [
      "FIREFOX"
    ],
    "mobileOs": [
      "IOS"
    ],
    "languages": [
      "ENGLISH",
      "SPANISH"
    ],
    "inventoryTypes": [
      "WEB"
    ],
    "playerSizes": [
      "SMALL",
      "LARGE"
    ],
    "adInitiations": [
      "USERINITIATED"
    ],
    "bots": [
      "IAS"
    ],
    "positions": [
      "ALL"
    ],
    "userGroupEntry": {
      "id": 32658,
      "name": "sg1",
      "userGroupId": 14962,
      "trafficPercent": 44,
      "lowerBound": 56,
      "upperBound": 99
    },
    "frequencyCapPeriod": "MONTHLY",
    "contextualsIncluded": [
      {
        "taxonomyType": "IAB",
        "id": 41848,
        "accountId": 1273570,
        "name": "Z_Flow_CxtIABr9LrY3bFOh",
        "updatedAt": "2017-05-16T01:54:31Z",
        "categories": [
          {
            "id": 127347,
            "categoryId": 105
          },
          {
            "id": 127348,
            "categoryId": 208
          },
          {
            "id": 127345,
            "categoryId": 102
          },
          {
            "id": 127346,
            "categoryId": 107
          }
        ]
      },
      {
        "taxonomyType": "IAB",
        "id": 41843,
        "accountId": 7987,
        "name": "test-iab",
        "updatedAt": "2017-07-18T04:18:35Z",
        "categories": [
          {
            "id": 131552,
            "categoryId": 104
          },
          {
            "id": 131553,
            "categoryId": 301
          }
        ]
      }
    ],
    "contextualsExcluded": [
      {
        "taxonomyType": "DOUBLE_VERIFY",
        "id": 41842,
        "accountId": 7987,
        "name": "test-brandsafety",
        "updatedAt": "2017-05-15T18:08:03Z",
        "categories": [
          {
            "id": 127328,
            "categoryId": 26
          },
          {
            "id": 127327,
            "categoryId": 28
          },
          {
            "id": 127329,
            "categoryId": 23
          }
        ]
      }
    ],
    "siteListsIncluded": [
      {
        "status": "ACTIVE",
        "type": "SITE_LIST",
        "id": 40367,
        "name": "sitelist12",
        "accountId": 271834,
        "isShared": true,
        "updatedAt": "2015-12-03T19:36:26Z",
        "childrenCount": 1,
        "items": [
          {
            "id": 1010812,
            "itemName": "someRandom.com"
          }
        ]
      }
    ],
    "siteListsExcluded": [
      {
        "status": "ACTIVE",
        "type": "APP_LIST",
        "id": 61574,
        "name": "mobileapp",
        "accountId": 7987,
        "isShared": true,
        "updatedAt": "2017-05-18T01:01:22Z",
        "childrenCount": 1,
        "items": [
          {
            "id": 1984848,
            "itemName": "somegame"
          }
        ]
      }
    ],
    "dealsIncluded": [
      {
        "status": "ACTIVE",
        "id": 2264423,
        "name": "deal for targeting",
        "exchangeId": 3,
        "exchangeDealId": "43434",
        "description": "line deal",
        "reservePrice": 1,
        "spotbuy": false,
        "accountIsExcluded": false
      }
    ],
    "geoFencingsIncluded": [
      {
        "id": 138749,
        "country": "United States",
        "location": "1600 Amphitheatre Pkwy, Mountain View, CA 94043",
        "latitude": 37.42307,
        "longitude": -122.08414,
        "radius": 5,
        "radiusUnit": "MILES"
      },
      {
        "id": 138750,
        "country": "United States",
        "location": "328 Lomita Dr, Stanford, CA 94305",
        "latitude": 37.43249,
        "longitude": -122.17034,
        "radius": 5,
        "radiusUnit": "MILES"
      }
    ],
    "threshold": 60,
    "frequencyCapValue": 4,
    "serveUnknownUser": true,
    "inviewThreshold": 1.56
  },
  "errors": null,
  "timeStamp": "2017-07-13T22:16:58Z"
}

Read Targeting Deals

To retrieve a filtered list of Deals available for targeting, make a GET call with the supported query parameters.

GET https://api.admanagerplus.yahoo.com/traffic/targeting/deals?lineId={lineId}&query={query}
Name Description Type Required?
lineId Line ID integer Y
query Search term. Use url encoding conventions (i.e. a space should be replaced with a + or %20). Provide a partial search string or leave it empty to get all results. text Y

The response will be a list of matching Deals. Refer to Deals for detailed explanation.

Example Request

GET https://dspapi.admanagerplus.yahoo.com/traffic/targeting/deals?lineId=365277&query=spot

Example Response

{
  "response": [
    {
      "status": "ACTIVE",
      "id": 102,
      "name": "nospotbuy",
      "exchangeId": 3,
      "exchangeDealId": "nospotbuy",
      "description": "nospotbuy",
      "reservePrice": 0,
      "spotbuy": false,
      "accountIsExcluded": false
    },
    {
      "status": "ACTIVE",
      "id": 89,
      "name": "spotbuydeal",
      "exchangeId": 9,
      "exchangeDealId": "1233",
      "description": "spotbuy",
      "reservePrice": 1,
      "spotbuy": false,
      "accountIsExcluded": false
    }
  ],
  "errors": null,
  "timeStamp": "2017-07-13T04:19:40Z"
}

Read Targeting Contextuals

To retrieve a filtered list of Contextuals available for targeting, make a GET call with the supported query parameters.

GET https://api.admanagerplus.yahoo.com/traffic/targeting/contextuals?lineId={lineId}&taxonomyType={taxonomyType}&query={query}
Name Description Type Required?
lineId Line ID integer Y
taxonomyId

Taxonomy ID

  • IAB - IAB Contextual.
  • DOUBLE_VERIFY - Double Verify Brand Safety. Note: Requires additonal role.
  • IAS_BRAND_SAFETY - IAS Brand Safety. Note: Requires additonal role.
  • IAS_MEDIA_QUALITY - IAS Media Quality. Note: Requires additonal role.
  • IAS_CONTEXTUAL - IAS Contextual. Note: Requires additonal role.
text Y
query Search term. Use url encoding conventions (i.e. a space should be replaced with a + or %20). text Y

The response will be a list of matching Contextuals. Refer to Contextuals for detailed explanation.

Example Request

GET https://dspapi.admanagerplus.yahoo.com/traffic/targeting/contextuals?lineId=365277&taxonomyType=IAB&query=test

Example Response

{
  "response": [
    {
      "taxonomyType": "IAB",
      "id": "43188",
      "name": "contextual_update_test"
    },
    {
      "taxonomyType": "IAB",
      "id": "41843",
      "name": "test-iab"
    }
  ],
  "errors": null,
  "timeStamp": "2017-07-27T21:30:07Z"
}

Read Targeting SiteLists

To retrieve a filtered list of Site / App Lists available for targeting, make a GET call with the supported query parameters.

GET https://api.admanagerplus.yahoo.com/traffic/targeting/sitelists?lineId={lineId}&page={page}&limit={limit}&sort={sort}&dir={dir}&query={query}
Name Description Type Required?
lineId Line ID integer Y
page Page number integer N
limit Total number of items to return. Maximum allowed value is 100. integer N
sort Column to sort by text N
dir Sort direction. Valid values: asc, desc text N
query Search term. Use url encoding conventions (i.e. a space should be replaced with a + or %20). Provide a partial search string or leave it empty to get all results. text Y

The response will be a list of matching Site / App Lists. Refer to Site Lists for detailed explanation.

Example Request

GET https://dspapi.admanagerplus.yahoo.com/traffic/targeting/sitelists?limit=2&lineId=307438&query=

Example Response

{
  "response": [
    {
      "typeName": "APP_LIST",
      "id": 56919,
      "name": "Test Mobile 11/28",
      "createdAt": "2016-11-29T01:00:47Z"
    },
    {
      "typeName": "SITE_LIST",
      "id": 62187,
      "name": "test site list",
      "createdAt": "2017-05-31T22:35:59Z"
    }
  ],
  "errors": null,
  "timeStamp": "2017-08-03T05:18:34Z"
}

Read Targeting Geos

To retrieve a filtered list of Geos available for targeting, make a GET call with the supported query parameters.

GET https://api.admanagerplus.yahoo.com/traffic/targeting/geo?page={page}&limit={limit}&sort={sort}&dir={dir}&query={query}&countryCode={countryCode}

The response contains the following fields of interest:

Name Description
id Unique ID of the location. This value will be used for Geo targeting.
name Location name.
level
  • City
  • State
  • Country
  • Dma

Example Request

GET https://dspapi.admanagerplus.yahoo.com/traffic/targeting/geo?dir=desc&limit=20&page=1&query=san+francisco&sort=name

Example Response (Partial)

{
  "response": [
    {
      "id": "##south san francisco#ca#usa",
      "name": "South San Francisco, California",
      "description": "south san francisco, ca",
      "level": "City",
      "key": "south san francisco, california",
      "code": "3555"
    },
    {
      "id": "807####usa",
      "name": "San Francisco-oak-san Jose",
      "description": "san francisco-oak-san jose",
      "level": "Dma",
      "key": "807",
      "code": "807"
    }
  ],
  "errors": null,
  "timeStamp": "2017-10-17T18:21:26Z"
}

Example Request

GET https://dspapi.admanagerplus.yahoo.com/traffic/targeting/geo?countryCode=usa&query=9512

Example Response (Partial)

{
  "response": [
    {
      "id": "#49512###usa",
      "name": "49512",
      "level": "Zip",
      "key": "#49512###usa",
      "code": "12779404"
    },
    {
      "id": "#95123###usa",
      "name": "95123",
      "level": "Zip",
      "key": "#95123###usa",
      "code": "12797574"
    }
  ],
  "errors": null,
  "timeStamp": "2017-10-18T04:31:49Z"
}

Read Targeting Countries

To retrieve a filtered list of Countries available for targeting, make a GET call with the supported query parameters.

GET https://api.admanagerplus.yahoo.com/traffic/targeting/countries?query={query}
Name Description Type Required?
query Search term. Use url encoding conventions (i.e. a space should be replaced with a + or %20). Provide a partial search string or leave it empty to get all results. text Y

The response contains the following fields of interest:

Name Description
key Value to use for countryCode parameter when retrieving supported geos.

Example Request

GET https://dspapi.admanagerplus.yahoo.com/traffic/targeting/countries?query=usa

Example Response

{
  "response": [
    {
      "id": "####usa",
      "name": "United States",
      "description": "united states of america/usa",
      "level": "Country",
      "key": "usa",
      "code": "840"
    }
  ],
  "errors": null,
  "timeStamp": "2017-10-18T04:03:17Z"
}

Create / Update Line Targeting

To create or update an existing Line Targeting, make a POST call with a payload body and id parameter. Example payloads are provided for each targeting type individually below.

POST https://dspapi.admanagerplus.yahoo.com/traffic/lines/{id}/targeting
Name Description Type Required?
id Line ID integer Y

Example: DEMOGRAPHIC

{
  "id": 365277,
  "genders": [
    "ALL"
  ],
  "ages": [
    "21-24",
    "65+",
    "UNKNOWN"
  ],
  "threshold": "60",
  "types": [
    {
      "name": "DEMOGRAPHIC",
      "isTargeted": true
    }
  ]
}

Example: FREQUENCY_CAPPING

{
  "id": 365277,
  "frequencyCapPeriod": "MONTHLY",
  "frequencyCapValue": 4,
  "serveUnknownUser": true,
  "types": [
    {
      "name": "FREQUENCY_CAPPING",
      "isTargeted": true
    }
  ]
}

Example: DAY_PARTING

{
  "id": 365277,
  "days": [
    "MONDAY",
    "SATURDAY",
    "SUNDAY"
  ],
  "hours": [
  ],
  "types": [
    {
      "name": "DAY_PARTING",
      "isTargeted": true
    }
  ]
}

Example: LANGUAGES

{
  "id": 365277,
  "languages": [
    "ENGLISH",
    "FRENCH"
  ],
  "types": [
    {
      "name": "LANGUAGES",
      "isTargeted": true
    }
  ]
}

Example: INVENTORY_TYPE

{
  "id": 365277,
  "inventoryTypes": [
    "WEB"
  ],
  "types": [
    {
      "name": "INVENTORY_TYPE",
      "isTargeted": true
    }
  ]
}

Example: BOT

{
  "id": 365277,
  "bots": [
    "IAS"
  ],
  "types": [
    {
      "name": "BOT",
      "isTargeted": true
    }
  ]
}

Example: AB_TESTING

{
  "id": 365277,
  "userGroupEntry": {
    "id": 32658
  },
  "types": [
    {
      "name": "AB_TESTING",
      "isTargeted": true
    }
  ]
}

Example: TECHNOLOGY

{
  "id": 355970,
  "targetings": {
    "deviceTypes": [
      "DESKTOP",
      "PHONE"
    ],
    "os": [
      "ALL"
    ],
    "browsers": [
      "FIREFOX"
    ],
    "mobileOs": [
      "IOS"
    ]
  },
  "types": [
    {
      "name": "TECHNOLOGY",
      "isTargeted": true
    }
  ]
}

Example: AD_INITIATION

{
  "id": 365277,
  "adInitiations": [
    "USERINITIATED"
  ],
  "types": [
    {
      "name": "AD_INITIATION",
      "isTargeted": true
    }
  ]
}

Example: AD_POSITION

{
  "id": 307438,
  "targetingLines": {
    "positions": [
      "ABOVE_FOLD"
    ]
  },
  "types": [
    {
      "name": "AD_POSITION",
      "isTargeted": true
    }
  ]
}

Example: PLAYER_SIZE

{
  "id": 365277,
  "playerSizes": [
    "SMALL",
    "LARGE"
  ],
  "types": [
    {
      "name": "PLAYER_SIZE",
      "isTargeted": true
    }
  ]
}

Example: VIEWABILITY

{
  "id": 365277,
  "inviewThreshold": 1.56,
  "types": [
    {
      "name": "VIEWABILITY",
      "isTargeted": true
    }
  ]
}

Example: PUBLISHERS

{
  "id": 365277,
  "publishers": [
    3,
    4
  ],
  "types": [
    {
      "name": "EXCHANGES",
      "isTargeted": true
    }
  ]
}

Example: DEALS

{
  "id": 365277,
  "deals": {
    "removed": [],
    "clearAll": false,
    "added": [
      2264423
    ]
  },
  "types": [
    {
      "name": "EXCHANGES",
      "isTargeted": true
    }
  ]
}

Example: CONTEXTUALS

{
  "id": 365277,
  "contextuals": {
    "clearAll": false,
    "excludeIAB": false,
    "addedDoubleVerify": [
      41842
    ],
    "addedIAB": [
      41848,
      41843
    ],
    "removed": []
  },
  "types": [
    {
      "name": "CONTEXTUALS",
      "isTargeted": true
    }
  ]
}

Example: SITE_LISTS

{
  "id": 365277,
  "siteLists": {
    "removed": [],
    "clearAll": false,
    "added": [
      {
        "excluded": false,
        "entityId": 40367
      },
      {
        "excluded": true,
        "entityId": 61574
      }
    ]
  },
  "types": [
    {
      "name": "SITE_LISTS",
      "isTargeted": true
    }
  ]
}

Example: GEOS

{
  "id": 365277,
  "geos": {
    "removedNames": [],
    "clearAll": false,
    "added": [
      {
        "excluded": false,
        "name": "###15#nor"
      },
      {
        "excluded": true,
        "name": "##callahan#fl#usa"
      }
    ]
  },
  "types": [
    {
      "name": "GEOGRAPHY",
      "isTargeted": true
    }
  ]
}

Example: GEO FENCING

{
  "id": 365277,
  "geoFencings": {
    "clearAll": false,
    "removed": [
    ],
    "added": [
      {
        "location": "328 Lomita Dr, Stanford, CA 94305"
      },
      {
        "location": "1600 Amphitheatre Pkwy, Mountain View, CA 94043"
      }
    ],
    "radius": 5,
    "radiusUnit": "MILES"
  },
  "types": [
    {
      "name": "GEOGRAPHY",
      "isTargeted": true
    }
  ]
}

Delete Line Targeting

Line Targeting deletion is not supported by the API.